есть еще один вариант. Хранить ключ в nvram. Места там хватает.
Тогда можно сделать так:
1) если ключей в nvram нет, то сгенерить их
2) если flashfs disabled то создать /tmp/local/etc/dropbear и развернуть туда ключи (flashfs не сохраняем --- оставляем это на совести юзера)
3) если enabled то проверить наличие директории и при необходимости развернуть туда же (flashfs либо сохранить, либо нет --- вроде без большой разницы)
ключ в nvram можно хранить в текстовом формате.
Единственная проблема остается --- если юзер сгенерит ключи сам, то в flashfs и в nvram будут храниться разные ключи. Однако, функциональность будет сохранена в любом случае.
Кстати, любопытный вопрос. Размер nvram составляет 64К:
PHP Code:
cat /proc/mtd | grep nvram
mtd3: 00010000 00010000 "nvram"
С другой стороны, объем используемой памяти составляет ровно 32768 байт:
PHP Code:
nvram show > /dev/null
size: 11633 bytes (21135 left)
Сидит эта цифра в макросе NVRAM_SPACE объявленном как 0x8000. Выходит, что 32К пропадают совсем впустую.