Re: Нехватка памяти для программ
Я имел в виду быстрее чем мною предложенным способом.
Медиаплеер кстати и в моем варианте не тормозит. Самые большие тормоза заметны в браузере и картах. Так что интересно услышать как работают они при твоем варианте переноса (например видео с ютюба в браузере).
Вообще для конечных пользователей можно просто сделать всю процедуру переноса в виде deb файла. С перезаписью пары файлов и исполнением скрипта после установки он прекрасно справляется. А для пользователя это будет равносильно установки программы по сложности.
Про проблемы с форматированием MyDocs это известный баг. На форуме уже это обсуждали. Даже в багзиле частично этот вопрос уже затронут.
В меня на данный момент такое разбиение:
mmcblk0p2 - /opt
mmcblk1p1 - /home
mmcblk1p2 - MyDocs
mmcblk1p3 - swap
У меня наблюдалось очень странное повеление файлового менеджера если MyDocs был первым разделом. В таком варианте единственный неприятный баг в том что при подключении к компьютеру приходится в ручную демонтировать и монтировать раздел. Пока просто не успел найти отвечающий за это скрипт.
Работа rootfs прекрасно эмулируется стандартными средствами на линуксе. Просто создается виртуальное mtd устройство через nandsim. А в образ прошивки потом просто идет его дамп.
Вот пример создания такого устройства:
modprobe ubi
modprobe mtdblock
modprobe nandsim first_id_byte=0x20 second_id_byte=0xaa third_id_byte=0x00 fourth_id_byte=0x15
Далее распаковываем стандартную прошивку и помещаем ее на в полученное устройство:
./flasher-3.5 -F RX-51_2009SE_1.2009.42-11_PR_COMBINED_MR0_ARM.bin -u
dd if=rootfs.jffs2 of=/dev/mtdblock0 bs=2048
ubiattach /dev/ubi_ctrl -m 0
mount -t ubifs ubi0_0 /mnt
(для правильной работы этого метода в ядре должна быть поддержка mtd, mtdblock и ubifs и в системе установлены утилиты для работы с ubifs)
А идея использовать mini_fo мне как раз и пришла вспомнив как в openwrt (прошивке для wl500gp и подобных маршрутизаторов) организованна работа с файловой системой. Странно что разработчики сами не организовали именно так работу с файловой системой. Тогда например пользователь мог бы в случае чего сбросить все свои изменения (потереть файловую систему с правами на запись наложенную поверх rootfs) и вернуть телефон в изначальное состояние без перепрошивки. На wl500gp линукс как линукс. Просто там бизибокс собран с самым минимальным функционалом для экономии места. А так на n900 тодж не корутилз а бизибокс, но собранный с большим функционалом.
Для моего способа если не переносить swap то fstab можно и не трогать. На момент запуска rcS-late просто /home уже будет смонтирован и его монтирование просто будет пропущено. А так конечно правильней при таком подходе будет отредактировать /etc/default/mount-opts. Правда никакого смысла в фактическом отказе от fstab и его генерацией при запуске я не вижу.