====== USB HDD をインストール ======
* OpenWrt: ATTITUDE ADJUSTMENT (12.09, r36088)
===== 作業内容 =====
- USB のドライバをインストール [[http://wiki.openwrt.org/doc/howto/usb.essentials|USB Basic Support]]
- USB HDD をマウント [[http://wiki.openwrt.org/doc/howto/usb.storage|USB Storage]]
- Fstab の設定 [[http://wiki.openwrt.org/doc/uci/fstab|Fstab Configuration]]
* [[http://wiki.openwrt.org/doc/howto/usb.overview|The USB Port: An Overview]]
===== USB のドライバをインストール =====
公式の wiki には USB のカーネルモジュールをインストールするように書かれているが、インストールは特に必要なかった。
# lsmod | grep "usb\|hcd"
ohci_hcd 16160 0
ledtrig_usbdev 2032 0
ehci_hcd 33632 0
usbcore 99200 4 ohci_hcd,ledtrig_usbdev,ehci_hcd
usb_common 480 1 usbcore
nls_base 4640 1 usbcore
ehci-hcd と usbcore はロードはされているっぽい。とりあえずほっといて次へ。
===== USB HDD をマウント =====
ext4 でフォーマットされた USB HDD のマウントに必要なモジュールをインストール。
USB HDD は接続した状態で作業した。
# opkg update
# opkg install kmod-usb-storage block-mount kmod-fs-ext4
Installing kmod-usb-storage (3.3.8-1) to root...
Downloading http://downloads.openwrt.org/attitude_adjustment/12.09/ar71xx/generic/packages/kmod-usb-storage_3.3.8-1_ar71xx.ipk.
Installing kmod-scsi-core (3.3.8-1) to root...
Downloading http://downloads.openwrt.org/attitude_adjustment/12.09/ar71xx/generic/packages/kmod-scsi-core_3.3.8-1_ar71xx.ipk.
Installing block-mount (0.2.0-9) to root...
Downloading http://downloads.openwrt.org/attitude_adjustment/12.09/ar71xx/generic/packages/block-mount_0.2.0-9_ar71xx.ipk.
Installing blkid (2.21.2-1) to root...
Downloading http://downloads.openwrt.org/attitude_adjustment/12.09/ar71xx/generic/packages/blkid_2.21.2-1_ar71xx.ipk.
Installing libblkid (2.21.2-1) to root...
Downloading http://downloads.openwrt.org/attitude_adjustment/12.09/ar71xx/generic/packages/libblkid_2.21.2-1_ar71xx.ipk.
Installing libuuid (2.21.2-1) to root...
Downloading http://downloads.openwrt.org/attitude_adjustment/12.09/ar71xx/generic/packages/libuuid_2.21.2-1_ar71xx.ipk.
Installing swap-utils (2.21.2-1) to root...
Downloading http://downloads.openwrt.org/attitude_adjustment/12.09/ar71xx/generic/packages/swap-utils_2.21.2-1_ar71xx.ipk.
Installing kmod-fs-ext4 (3.3.8-1) to root...
Downloading http://downloads.openwrt.org/attitude_adjustment/12.09/ar71xx/generic/packages/kmod-fs-ext4_3.3.8-1_ar71xx.ipk.
Installing kmod-lib-crc16 (3.3.8-1) to root...
Downloading http://downloads.openwrt.org/attitude_adjustment/12.09/ar71xx/generic/packages/kmod-lib-crc16_3.3.8-1_ar71xx.ipk.
Configuring kmod-scsi-core.
Configuring kmod-usb-storage.
Configuring kmod-lib-crc16.
Configuring libuuid.
Configuring libblkid.
Configuring blkid.
Configuring swap-utils.
Configuring block-mount.
Configuring kmod-fs-ext4.
インストール前の /dev ディレクトリ
# ls /dev/sd*
ls: /dev/sd*: No such file or directory
インストール後の /dev ディレクトリ
# ls /dev/sd*
/dev/sda /dev/sda1
/dev/sda として認識された。
あとはマウントポイントを作ってマウントする。
# mkdir -p /mnt/usb-disk
# mount -t ext4 /dev/sda1 /mnt/usb-disk/ -o rw,sync
===== Fstab の設定 =====
以下のパーティション構成にした。
* sda1: メインパーティション。Samba や Netatalk で使う予定。
fstab が ubuntu とは違うみたい。[[http://wiki.openwrt.org/doc/uci/fstab|Fstab Configuration]]
# vi /etc/config/fstab
デフォルトの設定をちょっと変えてこのようにしてみた。
config global automount
option from_fstab 1
option anon_mount 1
config global autoswap
option from_fstab 1
option anon_swap 0
config mount
option target /mnt/usb-disk
option uuid xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
option fstype ext4
option options rw,user_xattr,errors=remount-ro
option enabled 1
option enabled_fsck 0
config swap
option device /dev/sda2
option enabled 0
Netatalk で拡張属性をファイルシステムで保存したいので、 user_xattr をオプションとして設定。
ブート時に毎回マウントする場合。
# /etc/init.d/fstab enable
今すぐマウントする場合。
# /etc/init.d/fstab start
fstab を変更した後に設定を有効にする場合。
# /etc/init.d/fstab restart
ブート時にマウントするように設定後、マウントを行う。
# /etc/init.d/fstab enable
# /etc/init.d/fstab start
# df
Filesystem 1K-blocks Used Available Use% Mounted on
rootfs 29440 1220 28220 4% /
/dev/root 2048 2048 0 100% /rom
tmpfs 63340 400 62940 1% /tmp
tmpfs 512 0 512 0% /dev
/dev/mtdblock7 29440 1220 28220 4% /overlay
overlayfs:/overlay 29440 1220 28220 4% /
/dev/sda1 975786224 210258140 716690044 23% /mnt/usb-disk