The Goal: This guide describes how to add a single USB stick or drive to your OpenWrt device. The result will be a USB drive with an ext4 file system and mounted at /mnt/sdXX (where sdXX is the name of the USB).
This is all you'll need for most purposes, however, there are plenty of options described below.
1. Use your laptop/desktop computer to format your USB device. Use the default name and format options. This prepares the USB drive for the process below, which will erase those settings (again). Warning: This initial formatting will erase the entire USB drive.
3. Get the required packages: More...
opkg update && opkg install block-mount e2fsprogs kmod-fs-ext4 kmod-usb-storage kmod-usb2 kmod-usb3
ls -al /dev/sd* to show the name of all attached USB devices. The list may be empty if there are no USB devices. More...
5. Insert the USB drive into your router. Enter
ls -al /dev/sd* again, and this time you should see a new /dev/sdXX device. sdXX is the device name of your new USB device.
root@OpenWrt:~# ls -al /dev/sd* brw------- 1 root root 8, 0 Feb 4 15:13 /dev/sda brw------- 1 root root 8, 1 Feb 4 14:06 /dev/sda1
6. Make an ext4 filesystem on the USB device using the device name you just discovered. Note: Be certain you enter the proper device name - this step will completely erase the device. More...
7. Create the fstab config file based on all the block devices found. More...
block detect | uci import fstab
8. Update the fstab config file to mount all drives at startup. More...
uci set fstab.@mount.enabled='1' && uci set fstab.@global.anon_mount='1' && uci commit
9. Mount the device (now) and enable the fstab service so the device will be mounted after a reboot.
/sbin/block mount && service fstab enable
10. You're done! This procedure has mounted the drive at /mnt/sdXX (whatever the device name was.) The drive is ready to save data at that part of the filesystem.
More information about this procedure and about USB drives:
mkfs /tmp/MyDrive; mount /dev/sda1 /tmp/MyDriveNote that, as of OpenWRT v18, the Ext4 file system will be autodetected. After finishing the test reading/writing the drive: