Существуют роутеры, у которых стоит eMMC в качестве постоянной памяти и они имеют много места. Здесь описан самый простой способ использования этого места как “внешнего” хранилища.
Например, для роутера RAX3000M в проекте OpenWrt, под систему в GPT-таблице выделено 500MB, а остальное остаётся свободным пространством под ваши нужды. Предполагается, что файлы, созданные в отдельных разделах, не будут удалены после firstboot или sysupgrade. А под пакеты с файловой системой squashfs предостаточно 500MB места.
Если вдруг вы хотите изменить таблицу разделов, таким образом увеличив место под / вам нужно собрать файл с GPT самостоятельно и прошить его.
Все операции проводятся на RAX3000M. В прошивке для него это задумано, если вы используете, например, NanoPi и вам нужно расширить / на всю флешку, воспользуйтесь документацией.
Подготовка
Установка пакетов
opkg update
opkg install block-mount kmod-fs-ext4 e2fsprogs lsblk cfdisk
Иногда после установки пакета пункт меню Mount Points (Точки монтирования) не сразу появляется в LuCI. Если вы столкнулись с этим:
- Сбросьте кэш в браузере для LuCI.
- Если не помогло, выйдите из LuCI и войдите снова (Logout/Login).
- Не помогло? Закройте все вкладки с LuCI и откройте в режиме инкогнито.
- Если ничего не помогает, перезагрузите роутер командой reboot.
Создание раздела
Для создания раздела используем утилиту cfdisk.
cfdisk /dev/mmcblk0
Выберите с помощью стрелок свободное место, у меня это Free 57.1G, затем внизу выберите New и нажмите Enter.
Далее выберите Write, введите yes и нажмите Enter.
Выйдите, выбрав Quit или нажав клавишу q.
Проверяем, что раздел создался
lsblk
Должно содержать такую запись:
├─mmcblk0p6 179:6 0 57.1G 0 part
Форматируем под файловую систему ext4
mkfs.ext4 /dev/mmcblk0p6
Монтирование раздела в OpenWrt
Проще и надежнее всего настроить автоматическое монтирование через LuCI.
Перейдите в System (Система) -> Mount Points (Точки монтирования).
Внизу страницы Mount Points (Точки монтирования), нажмите кнопку Add (Добавить)
В открывшемся окне для UUID выбираете созданный раздел.
В Mount point в поле custom пишите директорию, в которую будет смонтирован этот раздел. Используйте /mnt и имя на ваш выбор. К примеру /mnt/media.
После ввода пути нажмите Enter (может не работать в мобильных браузерах). Проверяйте, сохраняете и вас вернёт к предыдущему меню, там нажмите Save && Apply.
Теперь ваш раздел eMMC смонтирован и будет автоматически подключаться при каждой перезагрузке.
Что будет после Firstboot и Sysupgrade?
В случае сброса настроек или обновления прошивки данные на вашем разделе (/mnt/*) останутся в целости. Однако конфигурация монтирования будет удалена. Вам нужно будет просто повторить шаги из раздела “Монтирование раздела в OpenWrt”, чтобы система снова начала его использовать. При этом точка монтирования уже будет создана в LuCI.
Но не полагайтесь на это на 100%, всегда делайте бэкапы.
Мой TG-канал: https://t.me/itdoginfo