?

Log in

No account? Create an account
  Journal   Friends   Calendar   User Info   Memories
 

Электронный миссионер

8th November, 2017. 6:51 pm. Как побыстренькому перенести Centos 7 на армовскую платку

Так исторически сложилось, в конторе в которой я работаю, что все изделия (до сего момента х86) делались на Centos 7. Со всеми вытекающими. Лично меня жутко рвёт и тошнит от него, но деваться некуда. Тонны кода и скриптов написаны именно под эту ОС и перенос на другую систему будет очень уж дорогим. Хотя для задач, которые тут решаются достаточно будет и OpenWRT. Но тем не менее. Мне принесли еврейскую (в буквальном смысле) платку с отладкой, а именно CL-SOM-iMX7.



Руководство поставило задачу быстро и с малой кровью накатить на неё Centos 7. Поскольку кросскомпилировать мне лень, а хочется быстро, то есть решение. Решение это универсально и может подойти для многих ARM-железок. Внимание, только для ARM!!! И я решил попробовать. Чем чёрт не шутит, вдруг взлетит? И взлетело!

Для начала нужно скачать официальный дебиан для данной железки. Установить его и убедится в его работоспособности. Я потратил пол часа войны с u-boot, прежде чем понял почему не грузится с mmc. Кстати, убут там почти как обычный бивис, умеет выводить изображение по hdmi (вопрос только ЗАЧЕМ???). Даже клава работает, прям обычный комп!

херовая фотка убута на монитореCollapse )

Фрешку разметили, дебиан по инструкции накатили (да, в инструкциях обязаны быть ошибки, включайте мозг, они там есть!). Проверили, грузится и именно с SD-карты. У меня долго грузилось с nand, и я это понял по тому, что пароль разный стоял на root.
После чего нам понадобится рабочий дистрибутив центоса для армовской платформы. Брал с официального сайта. https://wiki.centos.org/Download . Можно взять абсолютно любой armhfp, который нравится. Мной был использован малиновый. Теперь начинается магия. Инструкция немного универсальна, поэтому пишу кратко.

1. Монтируем размеченую флешку, с дебианом. С правами рута переходим в раздел rootfs и удаляем весь дебиановский rootfs rm -rf ./*
2. Распаковываем образ centos 7, монтируем. Из раздела rootfs центоса копируем в раздел rootfs на флешку все файлы.
3. Распаковываем образ rootfs дебиана и от туда копируем файлы /etc/fstab /lib/modules/* /lib/firmware/* в аналогичные папки на нашей карте.
4. Выполняем sync

5. Вставляем карту. И грузимся. Пароль у малинового центоса "centos"

...
???
PROFIT!!!

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

Read 2 Notes -Make Notes

Back A Day - Forward A Day