Пожалуйста, изучите flash.layout.
Получив базовую поддержку USB, вы захотите подключить USB устройство хранения к вашему роутеру, флешку, например, или USB жёсткий диск. Эта статья расскажет вам необходимые для этого шаги.
Перечень действий примерно такой:
/dev/. Например, /dev/sda это устройство, с разделами /dev/sda1, /dev/sda2 и т.д. В случае, когда устройство не размечено и использует единую файловую систему, оно может быть доступно как /dev/sda. Последующие устройства, которые вы подключите, будут называться /dev/sdb, /dev/sdc и так далее. Убедитесь, что установлены правильные пакеты ядра для поддержки конкретной файловой системы (смотрите Storage);/etc/config/fstab, либо использовать как корневую файловую систему через extroot.Когда ваше USB устройство правильно распознано системой, используя правильный драйвер ядра из списка базовая поддержка USB, следующие пакеты позволят осуществить поддержку USB хранилища:
kmod-usb-storage требуется ... Поддержка ядром запоминающих устройств USB.kmod-fs-<file_system> требуется ... файловая система вашего устройства. Зачастую это kmod-fs-ext4, kmod-fs-hfs, kmod-fs-hfsplus, kmod-fs-msdos, kmod-fs-ntfs, kmod-fs-reiserfs и kmod-fs-xfs.kmod-usb-storage-extras опционально ... Поддержка ядром большего количества устройств, таких как SmartMedia считыватели кард.kmod-scsi-core Любое запоминающее устройство это обычное SCSI устройство.| | До релиза Attitude Adjustment, требовались дополнительные пакеты: block-hotplug для распознавания USB при подключении и block-extroot для корневой файловой системы на внешнем носителе. В сборке r26314 они были объединены в единый block-mount. |
e2fsprogs опционально Этот пакет содержит базовые утилиты для файловых систем ext2/ext3/ext4, такие как mkfs.ext3, mkfs.ext4, fsck и другие основные программы для форматирования и проверки на ошибки.Выполняется установка поддержки USB хранилища, предполагается, что USB уже настроен, включим поддержку файловой системы ext4 и подключим подсоединённое устройство USB, с уже созданным разделом подкачки Linux и разделом ext4.
opkg update opkg install kmod-usb-storage block-mount kmod-fs-ext4 mkswap /dev/sda1 swapon /dev/sda1 mkdir -p /mnt/share mount -t ext4 /dev/sda2 /mnt/share -o rw,sync
Помните, что разделы часто определяются автоматически и следующая команда тоже должна работать с настройками по умолчанию:
mount /dev/sda2 /mnt/share
Другой пример. Как использовать флешку с файловой системой FAT32 (поддержка ext4 останется). Читайте также Storage.
opkg update opkg install kmod-usb-storage block-mount block-hotplug kmod-fs-ext4 kmod-fs-vfat kmod-nls-cp437 kmod-nls-iso8859-1 mkdir -p /mnt/usb mount -t vfat /dev/sda1 /mnt/usb
Вы можете создать пустой файл, чтобы предотвратить запись файлов прямо в память роутера, если внешнее устройство не подключено:
umount /mnt/usb #убедитесь, что диск отключен, прежде чем начать touch /mnt/usb/USB_DISK_NOT_PRESENT chmod 555 /mnt/usb chmod 444 /mnt/usb/USB_DISK_NOT_PRESENT
Теперь процессы, которые не запущены с правами root, не будут записывать в память устройства (изучите эту тему). И, конечно, вы можете использовать этот файл в своих собственных скриптах.
Шифрование диска Linux с помощью LUKS
opkg install cryptsetup lvm2 kmod-crypto-aes kmod-crypto-misc kmod-crypto-xts kmod-crypto-iv kmod-crypto-cbc kmod-crypto-hash kmod-dm
/etc/modules.d чтобы автоматически включать модули при загрузке. Но пакет kmod-crypto-misc содержит модуль sha256 (помимо прочих) который является исключением, следовательно мы должны вручную создать такой файл:echo sha256_generic >/etc/modules.d/11-crypto-misc
/dev/encrypted_partition путём к вашему зашифрованому разделу и /mnt/mountpoit желаемой точкой монтирования:cryptsetup luksOpen /dev/encrypted_partition usbstorage_luks && mount /dev/mapper/usbstorage_luks /mnt/mountpoint
umount /mnt/mountpoint && cryptsetup luksClose usbstorage_luks