OpenWRT. Переносим overlay на внешний носитель

Использование внешнего носителя позволит расширить возможность использования роутера, добавив, к примеру, место под дополнительные пакеты. Сегодня мы узнаем, как это сделать.

На первом шаге необходимо установить необходимые пакеты:

opkg update
opkg install kmod-usb-core kmod-usb-ohci kmod-usb-storage kmod-usb2 block-mount kmod-fs-ext4 kmod-usb-storage-extras

На втором шаге подготавливаем внешний накопителе (в моё случае это обычная флешка на 16 Гб).

Будем использовать три раздела:

  1. Раздел подкачки. Тип — swap. Размер — 512 мб.
  2. Раздел для установки пакетов. Тип — ext4. Размер — 2 Гб.
  3. Раздел для данных. Тип — ext4. Размер — всё оставшееся место.

Для  подготовки можно можно воспользоваться GParted.

На третьем шаге настраиваем роутер.

Для этого подключаем накопитель к роутеру, подключаемся к нему по ssh и выполнем команду:

block detect >> /etc/config/fstab

Получаем файл примерно слудующего содержимого:

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 ‘swap’
option uuid ‘bf5fb8ef-5de7-4fdb-b094-d4f5dc890efa’
option enabled ‘0’

config ‘mount’
option target ‘/mnt/sda2′
option uuid ’81f99318-94a8-4443-8094-ff6f5810794b’
option enabled ‘0’

config ‘mount’
option target ‘/mnt/sda3′
option uuid ’97e47a5e-4dde-41c4-9c9a-1beba1c21128’
option enabled ‘0’

Псоле этого необходимо включить раздел подкачки. Для этого в секции swap устаналиваем

config ‘swap’
option uuid ‘bf5fb8ef-5de7-4fdb-b094-d4f5dc890efa’
option enabled ‘1’

Включаем и настраиваем точку монтирования для раздела с пакетами — меняем ‘/dev/sda1‘ на ‘/overlay’:

config ‘mount’
option target ‘/overlay’
option uuid ’81f99318-94a8-4443-8094-ff6f5810794b’
option enabled ‘1’

Включаем раздел с данными и настраиваем точку монтирования — меняем ‘/mnt/sda3’ на ‘/mnt/data’ (можно придумать другую):

config ‘mount’
option target ‘/mnt/data’
option uuid ’97e47a5e-4dde-41c4-9c9a-1beba1c21128′
option enabled ‘1’

Теперь необходимо перенести раздел /overlay на созданный раздел. Для этого:

mkdir -p /mnt/sda2
mount -t ext4 /dev/sda2 /mnt/sda2
tar -C /overlay -cvf - . | tar -C /mnt/sda2 -xf -

Теперь перезагружаем роутер:

reboot

Теперь можно проверить результат:

df -h

Должны увидеть примерно такой результат:

Filesystem Size Used Available Use% Mounted on
/dev/root 2.5M 2.5M 0 100% /rom
tmpfs 61.1M 552.0K 60.6M 1% /tmp
/dev/sda2 1.9G 4.6M 1.8G 0% /overlay
overlayfs:/overlay 1.9G 4.6M 1.8G 0% /
tmpfs 512.0K 0 512.0K 0% /dev
/dev/sda3 11.8G 30.2M 11.2G 0% /mnt/data

>
Исползованные материалы: