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



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

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



Фрешку разметили, дебиан по инструкции накатили (да, в инструкциях обязаны быть ошибки, включайте мозг, они там есть!). Проверили, грузится и именно с 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!!!

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

Date: 2017-11-08 03:53 pm (UTC)
From: [identity profile] hillguard.livejournal.com

Гениально, тысяча чертей!:)

Date: 2017-11-08 04:00 pm (UTC)
From: [identity profile] dlinyj.livejournal.com
Но есть шанс в будущем поиметь тонны граблей. Так что для всяких опытов хорошо.

January 2026

S M T W T F S
    123
456 78910
11121314151617
18192021222324
25262728293031

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jan. 22nd, 2026 06:20 am
Powered by Dreamwidth Studios