跟 UMU 一塊兒玩 OpenWRT(入門篇6):掛接 U 盤

    DIR-505 有一個 USB2.0 接口,給它帶來了很大的擴展性,咱們能夠插 U 盤、移動硬盤等,來作文件共享,或者離線下載等。接下來就先搞定 U 盤,主要參考資料:http://wiki.openwrt.org/doc/howto/usb.storagehtml

    首先是 USB 和存儲器的內核模塊:shell

opkg update
opkg install kmod-usb-storage
opkg install kmod-scsi-generic

    而後是文件系統的:iphone

opkg install kmod-fs-ext4

    USB 輔助工具、分區、格式化工具,這些非必要,看狀況安裝:electron

opkg install usbutils fdisk e2fsprogs

    測試一下,不插 U 盤時,輸入 lsusb,顯示以下工具

Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub測試

    插入 U 盤後,再 lsusb,發現多了一條,這說明工做正常:ui

Bus 001 Device 002: ID 0603:0908 Novatek Microelectronics Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

    若是 U 盤須要從新分區,請用 fdisk,這裏不具體介紹了,徹底能夠在 Windows 上用 diskpart 完成,若是您還在路由器上操做,能夠參考這個:http://www.leiphone.com/diy-a-smart-router-topic-increase-memory-3.html,第一步: 對設備進行分區。code

    分區完後,查看一下 /dev 目錄裏有沒有出現硬盤符和分區符:router

ls /dev | grep sd

    上面裝了 ext4 文件系統的驅動,由於這個對 OpenWRT 最合適,若是原來不是這個格式,那麼安裝了 e2fsprogs 後就能夠用下面命令格式化了:htm

mkfs.ext4 /dev/sda1

    接下來用 mount 掛接,頭尾行是必須,中間的三行是一種防止未掛接好就被寫入的機制:

mkdir /mnt/usb
touch /mnt/usb/USB_DISK_NOT_PRESENT
chmod 555 /mnt/usb
chmod 444 /mnt/usb/USB_DISK_NOT_PRESENT
mount /dev/sda1 /mnt/usb

    到這裏就能夠經過 /mnt/usb 來訪問 U 盤了,不過工做才完成一半而已……下面還要讓 U 盤能開機自動加載,主要參考:http://wiki.openwrt.org/doc/techref/block_mount 和 http://wiki.openwrt.org/doc/uci/fstab。先安裝程序:

opkg install block-mount blkid

    若是您比較珍惜存儲空間,能夠不用安裝 blkid,block-mount 就行。用 blkid 或 block info,查看分區的 UUID,好比用 blkid,則 UMU 的 U 盤是顯示:

/dev/mtdblock7: TYPE="squashfs"
/dev/sda1: UUID="16e381bc-d9bb-40fd-9e98-410b346931ef" TYPE="ext4"

    接下來輸入 block detect 查看一下:

config 'global'
    option anon_swap '0'
    option anon_mount '0'
    option auto_swap '1'
    option auto_mount '1'
    option delay_root '5'
    option check_fs '0'

config 'mount'
    option target '/mnt/sda1'
    option uuid '16e381bc-d9bb-40fd-9e98-410b346931ef'
    option enabled '0'

    生成配置文件,並把上面的 target 改成您想要的,enabled 值改成 1:

block detect > /etc/config/fstab
uci set fstab.@mount[-1].target='/mnt/usb'
uci set fstab.@mount[-1].enabled=1
uci commit fstab

    這裏介紹的都是精簡過的必須操做,其它可選項,請自行參考這個:http://wiki.openwrt.org/doc/uci/fstab

相關文章
相關標籤/搜索