Установка на sheevaplug: различия между версиями
Нет описания правки |
|||
(не показано 19 промежуточных версий 5 участников) | |||
Строка 1: | Строка 1: | ||
{{Stub}} | {{Stub}} | ||
== | [[Категория:ARM]] | ||
[[Категория:Hardware]] | |||
[[Категория:HCL]] | |||
[[Категория:Мини-компьютеры]] | |||
== Получение образа == | |||
* скачать репозиторий http://git.altlinux.org/people/silicium/packages/mkimage-profile-armrootfs.git | |||
* прочитать [http://git.altlinux.org/people/silicium/packages/mkimage-profile-armrootfs.git?p=mkimage-profile-armrootfs.git;a=blob;f=README;h=2fa2fb3fa5eed235ae36eafda849f29f3404b9e5;hb=911e46b2df34430623008d15adc4d0423ee841e1 README] и сделать по нему. Для работы mkimage нужен правильно настроенный hasher под arm, подробнее о нем можно прочитать здесь [[Ports/arm/BuildHowto]] | |||
* в .work/.out/armroot.tar появится образ системы | |||
== Загрузка с USB flash == | |||
=== Подготовка === | |||
'''ОСТОРОЖНО все данные на флешке будут уничтожены!''' | |||
* берем любую флешку | |||
* создаем на ней fdiskом 1 раздел типа 83 (linux). Можно создать несколько и использовать по своему усмотрению, но дальше мы будем работать только с этим первым разделом | |||
* форматируем её(вместо ''sdd' название устройства на вашей машине) | |||
mkfs -t ext2 ''/dev/sdd1'' | |||
Можно в принципе и ext3 но не ext4 | |||
* монтируем | |||
* заходим туда и распаковываем tar архив | |||
=== Загрузка === | |||
* Вставляем флешку в sheevaplug | |||
* Подключаем USB консоль | |||
* включаем | |||
* запускаем minicom. устройство скорее всего /dev/ttyUSB0 | |||
* Видим примерно такое | |||
U-Boot 1.1.4 (Mar 19 2009 - 16:06:59) Marvell version: 3.4.16 | |||
U-Boot code: 00600000 -> 0067FFF0 BSS: -> 006CEE80 | |||
Soc: 88F6281 A0 (DDR2) | |||
CPU running @ 1200Mhz L2 running @ 400Mhz | |||
SysClock = 400Mhz , TClock = 200Mhz | |||
* Нажимаем любую клавишку чтобы не началась загрузка по умолчанию | |||
* Появляется консоль | |||
MARVEL>>> | |||
* Для загрузки пишем там: | |||
usb start | usb start | ||
ext2load usb 0:1 800000 /boot/uImage-2.6.34-sheeva-alt1 | ext2load usb 0:1 800000 /boot/uImage-2.6.34-sheeva-alt1 | ||
set bootargs console=ttyS0,115200 root=/dev/sda1 rootdelay=10 rootwait=1 ro | set bootargs console=ttyS0,115200 root=/dev/sda1 rootdelay=10 rootwait=1 ro | ||
bootm 800000 | bootm 800000 | ||
После каждой из этих команд должны быть ответы. После первой должно написать что 1 storge device found. После второй появиться много точек. После третий ничего. После четвертой начинает грузиться ядро. hint: по флешке можно полазить ext2ls usb 0:1 <путь> | |||
* Должна начаться загрузка ядра и системы | |||
* root там без пароля | |||
== Установка системы == | == Установка системы == | ||
Строка 25: | Строка 63: | ||
mtd1: 00400000 00020000 "uImage" | mtd1: 00400000 00020000 "uImage" | ||
mtd2: 1fb00000 00020000 "root" | mtd2: 1fb00000 00020000 "root" | ||
Нам нужен mtd2 | Нам нужен mtd2. | ||
Cобственно процесс создания раздела | Cобственно процесс создания раздела | ||
ubiformat /dev/mtd2 | ubiformat /dev/mtd2 | ||
Строка 31: | Строка 70: | ||
ubimkvol /dev/ubi0 -m -N root | ubimkvol /dev/ubi0 -m -N root | ||
В принципе можно сделать несколько разделов по вкусу. | В принципе можно сделать несколько разделов по вкусу. | ||
Помните что своп на mtd не самая лучшая идея | Помните что своп на mtd не самая лучшая идея | ||
Строка 47: | Строка 87: | ||
/dev/ubi0_0 / ubifs defaults 0 0 | /dev/ubi0_0 / ubifs defaults 0 0 | ||
=== Ставим ядро === | === Ставим ядро === | ||
Поскольку ядро | Поскольку ядро ставится в специальную область, для этого нужно сделать дополнительные действия | ||
flash_eraseall /dev/mtd1 | flash_eraseall /dev/mtd1 | ||
nandwrite -map /dev/mtd1 /boot/uImage-2.6.34-sheeva-alt1 | nandwrite -map /dev/mtd1 /boot/uImage-2.6.34-sheeva-alt1 | ||
Строка 59: | Строка 99: | ||
Ещё раз перезагружаемся и наблюдаем за загрузкой. | Ещё раз перезагружаемся и наблюдаем за загрузкой. | ||
reset | reset | ||
== Конфигурирование == | |||
* поправить /etc/net | |||
* задать hostname в /etc/sysconfig/network | |||
* поправить /etc/resolv.conf | |||
* настроить апт на репозитарий | |||
rpm file:/sisyphus arm classic | |||
Здесь /sisyphus это подмонтированая по NFS копия сизифа. Можно использовать классический путь с FTP | |||
== Установка на openrd client == | |||
В приципе тоже самое но надо сделать | |||
setenv mainlineKernel yes | |||
setenv arcNumber 2361 | |||
saveenv | |||
reset | |||
'''перезагружаться обязательно''' |
Текущая версия от 21:53, 10 августа 2019
Получение образа
- скачать репозиторий http://git.altlinux.org/people/silicium/packages/mkimage-profile-armrootfs.git
- прочитать README и сделать по нему. Для работы mkimage нужен правильно настроенный hasher под arm, подробнее о нем можно прочитать здесь Ports/arm/BuildHowto
- в .work/.out/armroot.tar появится образ системы
Загрузка с USB flash
Подготовка
ОСТОРОЖНО все данные на флешке будут уничтожены!
- берем любую флешку
- создаем на ней fdiskом 1 раздел типа 83 (linux). Можно создать несколько и использовать по своему усмотрению, но дальше мы будем работать только с этим первым разделом
- форматируем её(вместо sdd' название устройства на вашей машине)
mkfs -t ext2 /dev/sdd1
Можно в принципе и ext3 но не ext4
- монтируем
- заходим туда и распаковываем tar архив
Загрузка
- Вставляем флешку в sheevaplug
- Подключаем USB консоль
- включаем
- запускаем minicom. устройство скорее всего /dev/ttyUSB0
- Видим примерно такое
U-Boot 1.1.4 (Mar 19 2009 - 16:06:59) Marvell version: 3.4.16 U-Boot code: 00600000 -> 0067FFF0 BSS: -> 006CEE80 Soc: 88F6281 A0 (DDR2) CPU running @ 1200Mhz L2 running @ 400Mhz SysClock = 400Mhz , TClock = 200Mhz
- Нажимаем любую клавишку чтобы не началась загрузка по умолчанию
- Появляется консоль
MARVEL>>>
- Для загрузки пишем там:
usb start ext2load usb 0:1 800000 /boot/uImage-2.6.34-sheeva-alt1 set bootargs console=ttyS0,115200 root=/dev/sda1 rootdelay=10 rootwait=1 ro bootm 800000
После каждой из этих команд должны быть ответы. После первой должно написать что 1 storge device found. После второй появиться много точек. После третий ничего. После четвертой начинает грузиться ядро. hint: по флешке можно полазить ext2ls usb 0:1 <путь>
- Должна начаться загрузка ядра и системы
- root там без пароля
Установка системы
Забекапить!
подключаем имеющиеся фс, скорее всего
mkdir /mnt/src mount /dev/mtdblock2 /mnt/src
делаем бекап
cd /mnt/src/ mkdir /backup/ tar czf /backup/orig.tar.gz .
Создаем раздел ubifs
отмонтируем
umount /mnt/src
Проверяем расположение разделов
cat /proc/mtd dev: size erasesize name mtd0: 00100000 00020000 "u-boot" mtd1: 00400000 00020000 "uImage" mtd2: 1fb00000 00020000 "root"
Нам нужен mtd2.
Cобственно процесс создания раздела
ubiformat /dev/mtd2 ubiattach /dev/ubi_ctrl -m 2 ubimkvol /dev/ubi0 -m -N root
В принципе можно сделать несколько разделов по вкусу.
Помните что своп на mtd не самая лучшая идея
Заливаем файлы
Для того чтобы не залить содержимое proc dev и прочего делаем
mount --bind / /mnt/src
Создаем и подключаем ubifs
mkfs.ubifs /dev/ubi0_0 mkdir /mnt/dst mount -t ubifs /dev/ubi0_0 /mnt/dst
Заливаем систему
rsync -avP --exclude backup /mnt/src /mnt/dst
Правим конфиги
Правим /mnt/dst/etc/fstab
/dev/ubi0_0 / ubifs defaults 0 0
Ставим ядро
Поскольку ядро ставится в специальную область, для этого нужно сделать дополнительные действия
flash_eraseall /dev/mtd1 nandwrite -map /dev/mtd1 /boot/uImage-2.6.34-sheeva-alt1
erase надо делать всегда, потому что это nand и запись переводит только из 1 в 0, но не наоборот. И если там что то было то образ будет поврежден.
Правим опции загрузки
Перезагружаемся. Заходим в консоль загрузчика
set bootargs console=ttyS0,115200 rootfstype=ubifs ubi.mtd=2 root=ubi:root fastboot save
Ещё раз перезагружаемся и наблюдаем за загрузкой.
reset
Конфигурирование
- поправить /etc/net
- задать hostname в /etc/sysconfig/network
- поправить /etc/resolv.conf
- настроить апт на репозитарий
rpm file:/sisyphus arm classic
Здесь /sisyphus это подмонтированая по NFS копия сизифа. Можно использовать классический путь с FTP
Установка на openrd client
В приципе тоже самое но надо сделать
setenv mainlineKernel yes setenv arcNumber 2361 saveenv reset
перезагружаться обязательно