OpenWrt 自動掛載sd卡

2021-08-10 21:33:08 字數 1819 閱讀 1567

在編譯的時候經常會遇到flash不夠用的問題,怎麼解決呢?可以通過掛載usb或者sd卡解決問題。

$ make kernel_menuconfig
依次進入選項device drivers —> mmc/sd/sdio card support —>

依照上圖在相關選項前打上」*」號。

進入kernel modules —>native language support —>

進入kernel modules –> other modules —>

儲存並退出,接下來make v=s編譯。

編譯完成後將.bin檔案燒寫至路由器內,通過ssh連線至路由器。

dmesg檢視當前是否有識別的sd卡:

fdisk -l檢視當前硬碟個數和裝置名稱:

可以看到sd卡名稱是mmcblk0,接下來進行sd卡的掛載:

# mkdir -p /mnt/mmcblk0

# mount /dev/mmcblk0 /mnt/mmcblk0

在掛載的過程中可能會遇到failed: invalid argument的問題,如果遇到這樣的問題,就把sd卡格式化成所識別的格式:

# opkg update

# opkg install e2fsprogs

# mkfs.ext4 /dev/sda1

# mkfs.ext3 /dev/sda1

# mkfs.ext2 /dev/sda1

格式化好之後再進行掛載:

對於openwrt來說,開機自啟的命令一般放在rc.local這個檔案中。寫乙個指令碼insert_sd.sh來實現sd卡的開機自動掛載,指令碼的內容如下:

#!/bin/sh

path="/mnt/mmcblk0"

path_dev="/dev/mmcblk0"

if [ -b "$path_dev" ] ;then

if [ ! -d

"$path" ]; then

/bin/mkdir -p $path

fi /bin/mount -t vfat $path_dev

$path

fi

openwrt中一些指令碼都會放在/sbin/這個目錄下,所以將寫的這個指令碼放package/base-files/files/sbin目錄進去。在rc.loacl檔案(這個檔案在package/base-files/files/etc下)中新增開機執行命令/sbin/insert_sd.sh &,儲存並編譯。至此,燒錄新的韌體就可以實現openwrtsd卡的自動掛載了。

openwrt自動掛載sd卡

知識點:openwrt

openwrt自動掛載sd卡

openwrt 自動掛載u盤、行動硬碟

OpenWrt之U盤SD卡掛載overlay

官方參考 掛載擴充套件儲存指令碼 bin sh 一鍵指令碼掛載rootfs到sd卡,u盤則改mmcblk0p1為sda1 umount dev mmcblk0p1 mkfs.ext4 dev mmcblk0p1 f mount dev mmcblk0p1 mnt tar c overlay cvf ...

U盤 SD卡掛載

說明 u盤和sd卡大部分操作上是一樣的,因此下面將用u盤進行說明,如無特別說明在u盤上的操作在sd卡上同樣有效 u盤和sd卡里的檔案系統比較常用的是fat32 這裡也是基於fat32來說明的 掛載 掛載前首先要保證u盤已經被系統識別到了。被識別到了後在 dev下會有節點顯示,需要注意的是u盤的節點和...

openwrt的自動掛載功能

openwrt使用hotplug管理自動掛載,官網wiki有介紹 當有usb等插拔事件發生時,hotplug會執行 etc hotplug.d 目錄下相應的指令碼。只要寫好自動掛載指令碼就好了。推薦小熊論壇上藍山的指令碼 原創 銀河系最 chui 強 niu 的openwrt自動掛載指令碼,完美相容...