LINUX.ORG.RU

Создание своей rootfs на основе Debian 7.1

 , , ,


0

2

И так, череда тредов про арм-поделки продолжается. В all winner a10 флешку надо бить минимум на два раздела - загрузщик и, собственно, rootfs. В принципе, можно найти готовый раздел и залить на флешку, но это не тру. Во первых, там куча хлама типа LXDE, из которого мне нужен только openbox. Во вторых, скорее всего, у меня будут другие модули для работы с тачпадом, дисплеем, сетевухой, USB и вебкой. Собственно, их можно выдернуть из родной прошивки, но как их добавить в ядро? Это первый вопрос.

А теперь, я бы хотел подробнее узнать о процессе создания самой rootfs. Я этот процесс представляю как то так - запустить в виртуальной машинке armhf дебиан, поставить все нужное, и потом как то вытянуть от туда корень. Это верный путь?

Deleted

Количество постов в этой теме огорчает Леонида Аркадьевича и моего котика.

Deleted
()

Я бы тебе советовал взять генту, а не дебиан. (потому что ограниченные ресурсы девайса, а нужный тебе софт в генте можно собирать без всех ненужных опций => софт будет меньше => софт будет менее прожорливым). Подымаешь qemu-arm, делашеь туда обычную установку генты из (arm'ного)stage3, попутно настраивая флаги для программ. После этого берешь собранное для твоего девайса ядрышко и инитрд(опционально), настраиваешь загрузчик (u-boot или чего там еще нынче используется), и собранную тобой инсталляцию генты заливаешь на флешку, или где там должен жить rootfs.

Собственно, их можно выдернуть из родной прошивки, но как их добавить в ядро?

Подозреваю что никак, т.к тебе нужны драйверы для иксов, а в стоковой прошивке ведроид с далвиком.

Если не хочешь играться с гентой - есть debbootstrap же, позволяет развернуть систему в папке, опять же на подобии «установщика» генты.

NeverLoved ★★★★★
()
Последнее исправление: NeverLoved (всего исправлений: 2)

там куча хлама

выпиливай.

но как их добавить в ядро?

есть два пути:

1. пересобрать ядро, поменяв в конфиге m на y. Я так делал когда-то давно.

2. не пересобирать ядро. Вместо этого смонтировать initrd со всеми нужными модулями. Получится такая маленькая rootfs, с модулями и ещё чем-то нужным (есть даже shell годный для отладке прямо по живому). Там и подключай нужные модули. Делал в слаке, а по слухам в дебе тоже можно.

и потом как то вытянуть от туда корень. Это верный путь?

можно так. Корень можно вытянуть простой dd вроде-бы, прямо изнутри VM. Я прямо на железяке делал, но у меня не ARM (но тоже 32 бита, потому просто на нормальном компе без VM не получалось, архитектура таки другая, на нормальном компе ессно 64бита)

детали в бложике, но для слаки(но в сети полно манов про деб)

drBatty ★★
()
Ответ на: комментарий от NeverLoved

Только ты забыл, что в Debian используется eglibc, вариант LibC для встраиваемых систем, а в Gentoo обычная Glibс.

kostik87 ★★★★★
()
Ответ на: комментарий от kostik87

Да я про генту говорю, а не про дебиан :)
В дереве есть ебилд для uclibc. emerge uclibc && emerge -e @world на этапе сразу после чрута с свежий stage3, и норм, имхо.

NeverLoved ★★★★★
()
Ответ на: комментарий от kostik87

Пробовал. я и на КПК в 600 мгц генту собирал, было дело (hp ipaq 214). давно это было, правда. временные затраты на сборку стоят прироста производительности на конечной системе, ИМХО. преимущество source-based дистров намного сильнее ощущается на маломощных машинах.

NeverLoved ★★★★★
()

В принципе, можно найти готовый раздел и залить на флешку, но это не тру. Во первых, там куча хлама типа LXDE

нет

Во вторых, скорее всего, у меня будут другие модули для работы с тачпадом, дисплеем, сетевухой, USB и вебкой.

ядро пересоберешь отдельно

И вообще, манов в сети предостаточно, я хз чем ты гуглил.

lazyklimm ★★★★★
()
Ответ на: комментарий от NeverLoved

Я бы тебе советовал взять генту, а не дебиан.

и переканпелять на каждый чих, ага

lazyklimm ★★★★★
()
Ответ на: комментарий от drBatty

Slackware ARM hard float port now in progress

Не не не.

Deleted
()

NeverLoved Окей. Я знаю спецификации своей китайщины, но на руках у меня ее еще нет. И месяц еще не будет. Вопрос - мне месяца хватит на то, чтобы разобраться с гентой, скомпилить все и вся?

Я спецификации хоть и знаю, но опять таки, не все, на руках же нет еще. Например, единственное, что я знаю точно, это то что там в ядро надо впихнуть mali-400mp. Ни чего ни про тачпад, ни про клаву (хотя, думаю, она подхватится), ни про вебку/кардридер/звук/дисплей я не знаю. Вот. Зато достоверно известно, что там a10.

Вопрос 2 - ядро можно же пересобрать будет потом, как это чудо прилетит?

А вообще, конечно, идея не плохая. На компе я в генту не очень верю, а вот на такой маломощной штуковине, вполне.

drBatty

выпиливай.

Это не тру. Но если ни фига не получится, прийдется так и сделать, посмотрим.

есть два пути

Ну, я конечно на первый способ надеюсь. Но опять таки, посмотрим что там с гентой выйдет.

Корень можно вытянуть простой dd вроде-бы, прямо изнутри VM.

Хаха, блин, как я не догадался? Ясно, спс.

lazyklimm

и переканпелять на каждый чих, ага

Есть же Большой Брат, в принципе, не проблема. А блокнот и музыкальный плеер можно и на сабже скомпилять.

Deleted
()
Последнее исправление: Bizun (всего исправлений: 1)
Ответ на: комментарий от Deleted

Ядрышки уже собранные ищи на сайте-производителе камня, я бы советовал взять оттуда.
Проверь, включен ли там usb-host и прочие нужные штуки. А вообще спроси на xda-developers, вдруг кто-то уже имел дело с этой железякой, и имеет наработки для нее.
Месяца тебе хватит с головой, устанавливай по хендбуку (русский перевод имеет в данный момент вполне актуальное состояние), только ставь не с gentoo minimal iso, а из какого-нибудь дистра с иксами и прочим, вроде ubuntu livecd. Тогда лучше поймешь концепцию того, что реально генту поставить можно куда угодно из откуда угодно работающего линуха (всего-то надо в папку распаковать стейдж, смонтировать proc, забиндить /dev и /sys, настроить часики и сделать чрут в новое окружение).
Иксы же нужны для того, чтоб хендбук не распечатывтаь, а заглядывать в него через интернет, и гуглить то, что будет непонятно. В принципе, можешь сразу из-под дебиана (или что у тебя там) в виртуалке собирать, но это будет медленно-медленно. или не пользоваться livecd, а отколоть 20 гб от своего винта, форматировать, смонтировать и устанавливать генту из работающего дебиана. вариантов море, в общем. Материалов по кросскомпилированию для арма в интернете тоже масса находится, но не читай их пока не соберешь себе рабочую версию десктопной генты (читай - не поймешь зачем нужны USE-flags, как обращаться с portage, как работает маскировка-размаскировка, что такое кейворды и зачем они нужны etc). Если не будешь лениться читать доки - через месяц станешь вполне себе матерым гентушником. :)
В первую очередь в новой системе советую поставить eix и сделать eix-update, это тулза для просмотра инфы о пакетах в дереве (имя, краткое описание, версии, ссылка на сайт). имеет ключи для поиска в названии, в описании, в категории дерева. Удачи. :)

NeverLoved ★★★★★
()
Ответ на: комментарий от NeverLoved

Собственно:
1) поставить в песочницу на компе
2) поставить нужные тебе пакеты (опенбоксы там, и прочее что будешь пользоваться на планшетке)
3) завести иксы, поглядеть как оно работает (иксы можно запустить в чруте прямо, не загружаясь в систему)
4) проверить полученные знания
5) по прибытии планшета повторить то же самое с п1, только в чруте с qemu, и затем скормить рут загрузчику с планшета.

NeverLoved ★★★★★
()
Ответ на: комментарий от NeverLoved

ну семён семёныч, ну туды в качель!

http://linux-sunxi.org/Main_Page

https://github.com/linux-sunxi/linux-sunxi

там всё есть, ознакомьтесь и не говорите фигню

lazyklimm ★★★★★
()
Последнее исправление: lazyklimm (всего исправлений: 1)
Ответ на: комментарий от lazyklimm

Ааа, вот оно че. Да, извиняюсь за 4.2 про ядра. я на кпк готовое брал было cо специализированного сайта, там и гентовые оверлеи емнип были с уже собранными пакетами, но их мало было. :)

NeverLoved ★★★★★
()
Ответ на: комментарий от Deleted

Каникулы же, жаль что последние...

дык пользуйся - надо гулять, вести порочный образ жизни(с) итп! покрасноглазить всегда успеешь.

lazyklimm ★★★★★
()
Ответ на: комментарий от lazyklimm

дык пользуйся - надо гулять, вести порочный образ жизни(с) итп!

Чет не охота, та и не с кем. Я тренажорке сижу и в линуксе, норм.

Deleted
()
8 мая 2015 г.

еще не советовали buildroot

IvanR ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.