В проекте используется несколько роутетов ASUS WL-520GU, на каждом из них модифицированная прошивка OpenWrt (исходная OpenWrt + несколько моих программ). На роутерах работает моя программа, которая скидывает раз в минуту данные в файлик. Файлик — это БД sqlite.
Так вот, наблюдаю странную ситуацию на некоторых роутерах — через месяц-два эксплуатации не удаётся ничего записать в файловую систему /overlay (там, где находится /root, /etc и пр.:
- В файлы из нельзя ничего записать. Системные вызовы завершаются успешно, но содержимое файлов не меняется.
- Файлы нельзя удалить, пишу rm /root/somefile: отвечает rm: cannot remove '/root/somefile': No space left on device
- Файлы нельзя создать, например, touch /root/somefile.1, отвечает: touch: /root/somefile.1: No space left on device
- df /root пишет, что места нет (mini_fo:/overlay 1792 1792 0 100% /). Но почему файлы-то нельзя удалить?
Перезагрузка не помогает. Роутер перепрошить нельзя — они недоступны, есть только удалённое управление. Версия OpenWrt — 10.03.
Как можно всё-таки восстановить файловую систему?