ASUS WL500gP. Прошивка от Олега. Немного о flashfs.

Немного о flashfs

  1. В данном виде (есть и другие flashfs, не путать) это технология сохранения части файловой системы во флеше. Была придумана то ли asus’ом толи Олегом и информации по ней в интернете не стоит искать.
  2. Т.к. корневая файловая система роутера (в данном случае это sqashfs) доступна только для чтения то в дополнение к ней используется ramfs — файловая система, находящаяся в оперативной памяти.
  3. В данной системе (linux от broadcom/asus) каталог /tmp (кстати /usr/local == /tmp/local, это симлинк) это подмонтированная ramfs и наличие свободного места зависит от наличия свободной оперативной памяти.
  4. Команда flashfs — это скрипт, написанный Олегом. Поэтому о нем не будет никакой информации вне рамок данного форума.
  5. При команде flashfs save в файле /tmp/flash.tar.gz создается сжатый архив каталога /usr/local + туда записываются файлы, из списка в файле /tmp/local/.files
  6. При команде flashfs commit архивный файл /tmp/flash.tar.gz прошивается в отдельный раздел флеша, имеющий максимальный объем 64 килобайта. В прошивке не предусмотрена проверка на размер архива, так что если файл превышает данный объем то будет потерянна часть данных.
  7. При старте роутера архивный файл flash.tar.gz, записанный во флеш ранее с помощью flashfs save && flashfs commit разворачивается в /tmp/local.
  8. Команда flashfs enable прописывает в nvram(тоже отдельный раздел флеш, используется преимущественно для сохранения настроек веб-интерфейса) версию прошивки при которой был создан архив flashfs.tar.gz и если прошивка обновилась то при старте роутера flashfs не разворачивается во избежание конфликтных ситуаций. При первом создании flashfs или при обновлении прошивки эту команду необходимо запустить для того чтоб включить flsahfs.
В новой прошивке Олега появилась команда flashfs enabled, после которой невзирая на версию прошивки, flashfs будет разворачиваться всегда.

Все знания были получены в результате проб и ошибок и на полное соответствие с действительностью не претендуют.

Save and Reboot
chmod +x /opt/etc/init.d/S24openvpn
flashfs save
flashfs commit
flashfs enable
reboot

https://wiki.rtzra.ru/hardware/router/asuswl500gp