HPC.ru lite - Все форумы
Форум: КПК и смартфоны на Linux: Zaurus, планшеты Nokia, прочее
Тема: хочется cacko из kexec (kexecboot)
Страницы: [1] 2 3 4
[Ответить]
psionrevo [13.03.2009 19:11] хочется cacko из kexec (kexecboot):
у меня на обоих заврах стоит прошивка cacko.
в свое время пробовал установить на SD Debian yonggun и перезагружаться между ним и cacko через kexec.
Debian успешно встал, kexec грузит ядро cacko,а вот cacko во флеше при установке ядра попортилась.
Шаманил, запустил qpe, но криво.
Сейчас попробовал kexecboot - та же проблема: при прошивке ядра портится cacko во флеше - напр. исчезли папки plugins и lib в /home/QtPalmtop.
Опять чуток пошаманил - запустил, но работать невозможно - qpe тормозит и иногда вылетает.
вопрос: почему так?
может я не тот updater.sh пользую
и при установке ядра angstrom с kexecboot оно наезжает на раздел с директориями cacko?
очень хочется разобраться!
потому что хочется и в cacko работать - привык(очень удобно все настроено), и попробовать наваять на завре GUI к моим программам под X-ми для их портирования на настольный комп.
повторюсь, у меня ядро для cacko грузится kexec либо kexecboot без проблем.
т.е. в консоли все здорово.
как форматнуть флеш и/или восстановить на нем структуру каталогов cacko?
есть tar архив полученный через backup в cacko.
спасибо 
Jay [14.03.2009 13:27] :
kexecboot использует штатный загрузчик и придерживается штатной разметки NAND. Так что тут ничего ломаться не должно. При условии, что на NAND действительно штатная разметка (64Mb root и остаток - home), которую вы не изменяли через инсталлятор cacko. В случае измененной разметки проблемы должны быть, насколько я себе это представляю. Восстановить штатную разметку можно при помощи NAND restore, например, из образа NAND-Backup с trisoft.de из раздела Service/Information -> Download.
Отдебажить пока можно только при помощи serial console и с пересборкой kexecboot с вкюченным дебагом и параметром debug у ядра.. Тогда, например, можно будет увидеть кучу сообщений от jffs2 при загрузке kexecboot во время сканирования устройств.
Jay [14.03.2009 13:38] :
Проблемы с нештатной разметкой обусловлены тем, что sharp loader умеет передавать параметры ядру только посредством интерфейса, который был удален из ядра 2.6. Поэтому kexecboot при загрузке не может получить разметку NAND от загрузчика. Как следствие, используется вкомпиленная в ядро разметка. Кстати, при использовании u-boot такой проблемы нет. Ядро получает mtdparts от загрузчика, а kexecboot передает этот параметр загружаемому kexec'ом ядру.
У нас в планах есть реализация поддержки чтения информации о разделах из NAND (как это делает загрузчик). Но не в следующем релизе точно. Скорее всего, через один.
psionrevo [14.03.2009 17:45] :
Jay
Спасибо!
Т.е. мне надо:
1) архивнуть всё cacko из \ во флеше напр на CF (кстати, а как это сделать gnu-tar ом, чтобы и /dev тоже в архив загнать?)
2) прошить родной sharp nand flash образ, тем самым восстановив родную разметку в nand
3) установить ядро с kexecboot
4) на CF в /boot/zImage от cacko
5) загружаемся в консоль и восстанавливаем с помощью gnu-tar все добро из архива во флеш (поверх встанет ?)
что-то про пункт 5 сомневаюсь.
хотя может ручками стирать во флеше директории ручками и из архива ручками их восстанавливать?
Jay [15.03.2009 20:48] :
Ну, в целом, все верно с небольшими изменениями:
0) на всякий случай сделать NAND Backup из D+M меню.
1) что-то типа "gnu-tar -zcf /media/card/rootfs.tar.gz /"
5) загружаемся во что-то c CF или SD, трем все, что есть в корне (та самая команда rm -rf /)
6) распаковываем обратно архив: cd / && gnu-tar -zpxf /media/card/rootfs.tar.gz
Нечто из пункта 5 - это любой дистрибутив, который умеет работать с SD/CF-карты и имеет в себе tar (например, Andromeda, Angstrom, Zubuntu). Проверить работу этого комплекта лучше до снесения всего из NAND.
psionrevo [24.04.2009 20:17] :
так, что сделал:
прошил японский nand,
поставил ядро с kexecboot,
angstrom грузится и работает с SD,
с CF загрузил ядро cacko,
перемонтировал \ с ro в rw и удалил что получилось.
теперь засада: не найду как подмонтировать в ангстроме internal flash, чтобы на него залить rootfs от cacko.
т.е. сижу в консоли в ангстроме, смотрю mount и не вижу внутреннего флеша завра.
более того, подмонтированную CF тоже в media\cf не вижу, [jnz mount пишет что подмонтирована %)
может мне для кучи на sd younggun debian залить и в нем увидится internal flash?
Jay [24.04.2009 23:02] :
Cмонтируйте /dev/mtdblock2 - это корень в NAND. /dev/mtdblock3 - это /home.
А вообще, выводу mount в linux верить нельзя. Смотрите в /proc/mount текущее состояние. Оно может отличаться от того, что выводит mount. Меня это всегда бесило 
psionrevo [25.04.2009 20:40] :
освоился, подмонтировал внутренний флеш, залил \ с cacko.
ядро cacko грузится и ругается
unknoun JFFS2 compression type 0x07
я так понял, в cacko старый драйвер для jffs2
т.е. когда из под angstrom копируешь на jffs2 сохраняются файлы с новой compression type
мне нужно искать утилиту для рекомпрессии данных на jffs2?
интересно, а можно ли все каталоги из / внутреннего флеша сделать по symlink на cf напр? или /proc и /dev нельзя?
попробовал перенести все на cf и оставить на jffs2 только линки - ругается invalid cross-device link
у меня пока больше нет идей кроме как надеяться на zImage с kexecboot собранный под cacko разметку nand 
psionrevo [26.04.2009 11:18] :
еще придумал:
1)шью исходный japan nand
2)ставлю zImage с kexecboot
3)гружусь с cacko zImage на cf (не вхожу в qpe)
задача: как на загруженной системе в консоли поменять все каталоги (bin sbin home ...) на каталоги из cacko?
где бы почитать где и какие там lock и на системных файлах?
или проще попробовать?
))
Jay [26.04.2009 16:20] :
Есть другая идея - просто поставить cacko штатным инсталлятором, но без изменения размеров разделов. Потом закинуть в /boot цацкино ядро, прошить kexecboot и проверить.
[Ответить]
[Вперед >]