Regular/arm: различия между версиями

Материал из ALT Linux Wiki
(не показаны 42 промежуточные версии 2 участников)
Строка 1: Строка 1:
= Регулярные сборки для одноплатных компьютеров c архитектурой процессора armh и aarch64 =


== Введение ==
'''<big>Регулярные сборки для одноплатных компьютеров и qemu c архитектурой процессора armh и aarch64</big>
'''
{| style="border:1px solid #AAA; background:#F9F9F9; margin: 0 0 1em 1em; padding:.2em; text-align:center; float: right;" class=noprint
|}
{| style="border:1px solid #AAA; background:#F9F9F9; margin: 0 0 1em 1em; padding:.2em; text-align:center; float: right;" class=noprint
|'''aarch64''', '''armh''',<br/>'''[[regular|x86_64, i586]]''',<br/>'''[[regular/mipsel|mipsel]]''', '''[[regular/riscv64|riscv64]]'''
|-
| __TOC__
|-
| [[:en:Regular|English]]
|}
<div id="intro"></div>
== '''Введение''' ==


Регулярные сборки для одноплатных компьютеров предназначены для тестирования репозитория [[Sisyphus]]. Подробнее об их назначении смотреть основную статью [[Regular]].
Регулярные сборки для одноплатных компьютеров предназначены для тестирования репозитория [[Sisyphus]]. Подробнее об их назначении смотреть основную статью [[Regular]].
Сборки представляют собой архив файловой системы в формате tar.xz, которую предстоит развернуть на SD-карте в соответствии с [[#Запись дистрибутива на SD-карту|инструкцией]].
Сборки представляют собой архивы корневой файловой системы (rootfs) в формате tar.xz, которую предстоит развернуть на SD-карте в соответствии с '''[[Ports/arm/Write/rootfs | инструкцией]''', и образы для запуска в qemu.


Первый запуск проходит долго, нужно набраться терпения. Проверяется файловая система и происходит перезагрузка. Затем загружается мастер первого запуска из шести стандартных шагов, в котором вы принимаете условия лицензии, настраиваете часовой пояс и время, задаёте пароль суперпользователя [[root]], создаёте системного пользователя. По завершении работы мастера снова произойдёт перезагрузка, после которой загрузится экран приветствия готовой к работе системы.
При первом запуске загружается мастер настройки системы из шести стандартных шагов, в котором вы принимаете условия лицензии, настраиваете часовой пояс и время, задаёте пароль суперпользователя [[root]], создаёте системного пользователя. По завершении работы мастера произойдёт перезагрузка, после которой загрузится экран приветствия готовой к работе системы.


Эти сборки тестировались на одноплатных компьютерах Raspberry Pi 3 B+ и Orange Pi Prime. О выявленных проблемах просьба сообщать {{man|antohami}}. Но для начала прочтите соответствующий [[#Текущие проблемы|раздел]].
Cборки на базе ядра [https://packages.altlinux.org/ru/sisyphus/srpms/kernel-image-mp mainline] тестировались на одноплатных компьютерах Raspberry Pi 3 B+, Orange Pi Prime и qemu.


== Прямые ссылки на загрузку ==
== '''Прямые ссылки на загрузку'''<ref>Это ссылки на сборки, помеченные как tested. Помимо них есть ещё несколько снапшотов: [http://nightly.altlinux.org/sisyphus-aarch64/snapshots aarch64] [http://nightly.altlinux.org/sisyphus-armh/snapshots armh]  </ref> ==
 
'''Десктопные<ref>Данные сборки не имеют предустановленного пользователя. При первом запуске вам будет предложено создать пользователя и задать пароль суперпользователя root</ref>:'''


* lxde: [http://nightly.altlinux.org/sisyphus-aarch64/tested/regular-lxde-latest-aarch64.tar.xz aarch64] [http://nightly.altlinux.org/sisyphus-armh/tested/regular-lxde-latest-armh.tar.xz armh]
* lxde: [http://nightly.altlinux.org/sisyphus-aarch64/tested/regular-lxde-latest-aarch64.tar.xz aarch64] [http://nightly.altlinux.org/sisyphus-armh/tested/regular-lxde-latest-armh.tar.xz armh]
Строка 20: Строка 33:
* xfce: [http://nightly.altlinux.org/sisyphus-aarch64/tested/regular-xfce-latest-aarch64.tar.xz aarch64] [http://nightly.altlinux.org/sisyphus-armh/tested/regular-xfce-latest-armh.tar.xz armh]
* xfce: [http://nightly.altlinux.org/sisyphus-aarch64/tested/regular-xfce-latest-aarch64.tar.xz aarch64] [http://nightly.altlinux.org/sisyphus-armh/tested/regular-xfce-latest-armh.tar.xz armh]


== Запись дистрибутива на SD-карту ==
* icewm: [http://nightly.altlinux.org/sisyphus-aarch64/tested/regular-icewm-latest-aarch64.tar.xz aarch64] [http://nightly.altlinux.org/sisyphus-armh/tested/regular-icewm-latest-armh.tar.xz armh] <ref>Используется система инициализации sysvinit с elogind для управления сеансом </ref>
 
1 Подготовка SD-карты. Потребуется micro-SD карта не менее 4 ГБ (Рекомендуется 8 ГБ и более). Для создания разделов можно воспользоваться программой gparted. Если целевой платформой будет не Raspberry Pi 2/3 (и поддержка её в будущем не нужна), то пункт 1.2 можно пропустить.
 
1.1 Создаём таблицу разделов msdos
 
1.2 Создаём раздел с файловой системой FAT (FAT16) размером не менее 30 МБ
 
1.3 Создаём раздел с файловой системой ext4. Под него выделяем всё оставшееся место
 
1.4 Присваиваем второму разделу метку (Label) "ROOT"
 
1.5 Устанавливаем второму разделу флаг "boot"
 
Должно получиться как на картинке
 
[[Файл:Разбивка в Gparted.png]]
 
2 Распаковываем rootfs на второй раздел SD-карты с файловой системой ext4:
 
2.1 Для этого получаем права root:


<pre> su - </pre>
'''Без графического интерфейса<ref>У данных сборок пароль суперпользователя '''altlinux'''</ref>:'''


2.2 Распаковываем командой:
* jeos-sysv: [http://nightly.altlinux.org/sisyphus-aarch64/tested/regular-jeos-sysv-latest-aarch64.tar.xz aarch64] [http://nightly.altlinux.org/sisyphus-armh/tested/regular-jeos-sysv-latest-armh.tar.xz armh]


<pre> tar -xpJf /путь/до/имя_rootfs.tar.xz -C /путь/до/раздела_ROOT/sd-карты/</pre>
* jeos-systemd: [http://nightly.altlinux.org/sisyphus-aarch64/tested/regular-jeos-systemd-latest-aarch64.tar.xz aarch64] [http://nightly.altlinux.org/sisyphus-armh/tested/regular-jeos-systemd-latest-armh.tar.xz armh]


3 Записываем bootloader (загрузчик) на SD-карту
'''Для qemu'''
* jeos-systemd<ref>У данной сборки пароль суперпользователя '''altlinux'''</ref>: [http://nightly.altlinux.org/sisyphus-aarch64/tested/regular-jeos-systemd-latest-aarch64.qcow2с aarch64] [http://nightly.altlinux.org/sisyphus-armh/tested/regular-jeos-systemd-latest-armh.qcow2c armh]


3.1 Для Raspberry Pi 3 нужно скопировать из rootfs на раздел fat для aarch64:
* lxqt: [http://nightly.altlinux.org/sisyphus-aarch64/tested/regular-lxqt-latest-aarch64.qcow2с aarch64] [http://nightly.altlinux.org/sisyphus-armh/tested/regular-lxqt-latest-armh.qcow2c armh]


<pre>/usr/share/u-boot/rpi_3/kernel8.img</pre>
* mate: [http://nightly.altlinux.org/sisyphus-aarch64/tested/regular-mate-latest-aarch64.qcow2с aarch64] [http://nightly.altlinux.org/sisyphus-armh/tested/regular-mate-latest-armh.qcow2c armh]


для armh:
* xfce: [http://nightly.altlinux.org/sisyphus-aarch64/tested/regular-xfce-latest-aarch64.qcow2с aarch64] [http://nightly.altlinux.org/sisyphus-armh/tested/regular-xfce-latest-armh.qcow2c armh]


<pre>/usr/share/u-boot/rpi_3_32b/kernel7.img</pre>
== '''Установка на SD-карту''' ==
Действуйте согласно [[Write/rootfs | инструкции]].


3.2 Затем нужно скопировать проприетарные компоненты (блобы) для raspberry на раздел fat.
== '''Запуск на QEMU''' ==
Для запуска образов на QEMU необходимо выполнить следующие шаги:


Блобы нужно брать с https://github.com/raspberrypi/firmware/tree/next/boot
'''Шаг 1.''' Для запуска порта ALT на aarch64 и armh необходимо установить QEMU с поддержкой aarch64 и armh. Например, в случае хостовой системы на ALT x86_64: [https://packages.altlinux.org/ru/srpm/Sisyphus/qemu qemu-system-aarch64-core] и [https://packages.altlinux.org/ru/srpm/Sisyphus/qemu qemu-system-arm-core].


<pre>bootcode.bin
fixup_cd.dat
fixup.dat
fixup_db.dat
fixup_x.dat
start_cd.elf
start_db.elf
start.elf
start_x.elf</pre>


3.3 Создать файл config.txt и положить на раздел FAT с такой строчкой:
'''Шаг 2.''' Далее необходимо получить [https://packages.altlinux.org/ru/srpm/Sisyphus/u-boot-qemu u-boot-qemu для архитектур armh и aarch64]
<pre>enable_uart=1</pre>


Также блобы можно взять из пакета raspberrypi-firmware (в следующей сборке будет на SD-карте)
'''Шаг 3.''' После этого, скачав один из образов для QEMU (см. выше) можно запускать QEMU, заменив <IMAGE> на путь к образу qcow2:
3.4 Для всех остальных плат (поддерживаемых) загрузчики находятся в записанной rootfs:  


Для плат семейства Orange Pi PC2 и Orange Pi Prime два файла: sunxi-spl.bin и u-boot.itb (из пакета u-boot-sunxi):
Для запуска qemu-образа aarch64 укажите вместо <aarch64/u-boot.bin> путь к u-boot для aarch64:
<pre>dd if=путь/до/rootfs/usr/share/u-boot/имя_платы/sunxi-spl.bin of=/dev/mmcblkX bs=8k seek=1
<source lang="shell">
dd if=путь/до/rootfs/usr/share/u-boot/имя_платы/u-boot.itb of=/dev/mmcblkX bs=8k seek=5
$ qemu-system-aarch64 \
sync
-machine virt -cpu cortex-a57 -m 2048 -smp 4 \
</pre>
-bios <aarch64/u-boot.bin> \
-drive if=none,id=sda,format=qcow2,file=<IMAGE>  \
-device virtio-blk-device,drive=sda \
-device virtio-keyboard -device virtio-tablet \
-device virtio-net-device,netdev=net0 -netdev user,id=net0 \
-device virtio-gpu,xres=1366,yres=768 -nographic -vnc :0
</source>


где вместо X нужно поставить цифру, соответствующую вашей SD-карте.
Для запуска qemu-образа armh укажите вместо <armh/u-boot.bin> путь к u-boot для armh:
<source lang="shell">
$ qemu-system-arm \
-machine virt -m 2048 -smp 4 \
-bios <armh/u-boot.bin> \
-drive if=none,id=sda,format=qcow2,file=<IMAGE>  \
-device virtio-blk-device,drive=sda \
-device virtio-keyboard -device virtio-tablet \
-device virtio-net-device,netdev=net0 -netdev user,id=net0 \
-device virtio-gpu,xres=1366,yres=768 -nographic -vnc :0
</source>


Для других плат ищите инструкции в /usr/share/doc/u-boot-*/ в rootfs
Весь текстовый вывод будет отображаться в терминале. Для работы в графическом режиме используйте подключение по протоколу vnc:
<source>remote-viewer vnc://localhost:5900</source>


4 Выполняем команду c правами root:
Порт 5900 соответствует опции -vnc :0
Порт 5901 - опции -vnc :1
и т.д.


<pre>sync</pre>
== '''Как сообщить об ошибке''' ==


Ждём её завершения. После чего безопасно извлекаем карту, размонтировав разделы.
Во-первых, ознакомьтесь с соответствующим [[#Известные проблемы|разделом]].


== Текущие проблемы ==
Сообщения об ошибках принимаются по адресу https://bugzilla.altlinux.org/  (см. [[BugTracking]]).
* если проблема в пакете, выбирайте продукт Sisyphus, компонент соответствующий имени пакета, платформа armh или aarch64.
* если проблема в сборке или образе, выбирайте продукт Regular, компонент, соответствующий DE по умолчанию, платформа armh или aarch64.


=== Общие ===
'''ВАЖНО''':
* указать <tt>Platform: aarch64 или armh </tt> (справа в верхней части формы создания бага)
* назначить ошибку на [https://packages.altlinux.org/ru/sisyphus/maintainers/antohami antohami@altlinux.org]


* Не выходит из ждущего режима
См. также [[BugTracking/BugzillaMiniHowto|Краткое пособие по использованию Bugzilla]]


* Нет аппаратных часов. При загрузке время обнуляется на дату релиза systemd. При использовании sysVinit вообще на 1970 год.
== '''Известные проблемы''' ==
В сборках от 20190213 openntpd был заменён на chrony. Теперь время синхронизируется сразу же при подключении к интернету. Но только если используется подключение через NetworkManager.


* Для того, чтобы заработало аппаратное ускорение видео, удалите файл /etc/X11/xorg.conf.d/99-modesetting-noglamor.conf
:'''1''' Общие:
Аппаратное ускорение поддерживает Raspberry Pi2/3. Большинство других подобных компьютеров на данный момент (февраль 2019) не поддерживают аппаратное ускорение графики.


=== regular-lxde: ===
::'''1.1''' Выключены ждущий, спящий режимы и гибернация, так как система не выходит из них. Отключены в /etc/systemd/sleep.conf. На sysvinit не отключены.


=== regular-lxqt: ===
::'''1.2''' Проблемы из-за отсутствия аппаратных часов. При загрузке время обнуляется на дату релиза systemd. При использовании sysVinit вообще на 1970 год. Тем не менее время синхронизируется сразу же после подключения к интернету.


=== regular-mate: ===
::'''1.4''' Отключено аппаратное ускорение в mpv. Смотреть конфиг /etc/mpv/mpv.conf


=== regular-xfce: ===
:'''2''' aarch64:


::'''2.1''' В mpv не отображаются элементы интерфейса bug [https://bugzilla.altlinux.org/show_bug.cgi?id=36200 36200]


{{Category navigation|title=Regular|category=Regular|sortkey=*}}
{{Category navigation|title=Regular|category=Regular|sortkey=*}}
{{Category navigation|title=Ports|category=Ports|sortkey=*}}
[[Категория:Sisyphus]]
[[Категория:Sisyphus]]
[[Категория:Regular]]
[[Категория:Regular]]
[[Категория:Aarch64]]
[[Категория:ARM]]
[[Категория:ARM]]
[[Категория:Ports]]
[[Категория:Ports]]
[[en:Regular]]
[[en:Regular/arm]]

Версия от 11:52, 15 августа 2019

Регулярные сборки для одноплатных компьютеров и qemu c архитектурой процессора armh и aarch64

aarch64, armh,
x86_64, i586,
mipsel, riscv64
English

Введение

Регулярные сборки для одноплатных компьютеров предназначены для тестирования репозитория Sisyphus. Подробнее об их назначении смотреть основную статью Regular. Сборки представляют собой архивы корневой файловой системы (rootfs) в формате tar.xz, которую предстоит развернуть на SD-карте в соответствии с [[Ports/arm/Write/rootfs | инструкцией], и образы для запуска в qemu.

При первом запуске загружается мастер настройки системы из шести стандартных шагов, в котором вы принимаете условия лицензии, настраиваете часовой пояс и время, задаёте пароль суперпользователя root, создаёте системного пользователя. По завершении работы мастера произойдёт перезагрузка, после которой загрузится экран приветствия готовой к работе системы.

Cборки на базе ядра mainline тестировались на одноплатных компьютерах Raspberry Pi 3 B+, Orange Pi Prime и qemu.

Прямые ссылки на загрузку[1]

Десктопные[2]:

Без графического интерфейса[4]:

Для qemu

Установка на SD-карту

Действуйте согласно инструкции.

Запуск на QEMU

Для запуска образов на QEMU необходимо выполнить следующие шаги:

Шаг 1. Для запуска порта ALT на aarch64 и armh необходимо установить QEMU с поддержкой aarch64 и armh. Например, в случае хостовой системы на ALT x86_64: qemu-system-aarch64-core и qemu-system-arm-core.


Шаг 2. Далее необходимо получить u-boot-qemu для архитектур armh и aarch64

Шаг 3. После этого, скачав один из образов для QEMU (см. выше) можно запускать QEMU, заменив <IMAGE> на путь к образу qcow2:

Для запуска qemu-образа aarch64 укажите вместо <aarch64/u-boot.bin> путь к u-boot для aarch64:

$ qemu-system-aarch64 \
	-machine virt -cpu cortex-a57 -m 2048 -smp 4 \
	-bios <aarch64/u-boot.bin> \
	-drive if=none,id=sda,format=qcow2,file=<IMAGE>  \
	-device virtio-blk-device,drive=sda \
	-device virtio-keyboard -device virtio-tablet \
	-device virtio-net-device,netdev=net0 -netdev user,id=net0 \
	-device virtio-gpu,xres=1366,yres=768 -nographic -vnc :0

Для запуска qemu-образа armh укажите вместо <armh/u-boot.bin> путь к u-boot для armh:

$ qemu-system-arm \
	-machine virt -m 2048 -smp 4 \
	-bios <armh/u-boot.bin> \
	-drive if=none,id=sda,format=qcow2,file=<IMAGE>  \
	-device virtio-blk-device,drive=sda \
	-device virtio-keyboard -device virtio-tablet \
	-device virtio-net-device,netdev=net0 -netdev user,id=net0 \
	-device virtio-gpu,xres=1366,yres=768 -nographic -vnc :0

Весь текстовый вывод будет отображаться в терминале. Для работы в графическом режиме используйте подключение по протоколу vnc:

remote-viewer vnc://localhost:5900

Порт 5900 соответствует опции -vnc :0 Порт 5901 - опции -vnc :1 и т.д.

Как сообщить об ошибке

Во-первых, ознакомьтесь с соответствующим разделом.

Сообщения об ошибках принимаются по адресу https://bugzilla.altlinux.org/ (см. BugTracking).

  • если проблема в пакете, выбирайте продукт Sisyphus, компонент соответствующий имени пакета, платформа armh или aarch64.
  • если проблема в сборке или образе, выбирайте продукт Regular, компонент, соответствующий DE по умолчанию, платформа armh или aarch64.

ВАЖНО:

  • указать Platform: aarch64 или armh (справа в верхней части формы создания бага)
  • назначить ошибку на antohami@altlinux.org

См. также Краткое пособие по использованию Bugzilla

Известные проблемы

1 Общие:
1.1 Выключены ждущий, спящий режимы и гибернация, так как система не выходит из них. Отключены в /etc/systemd/sleep.conf. На sysvinit не отключены.
1.2 Проблемы из-за отсутствия аппаратных часов. При загрузке время обнуляется на дату релиза systemd. При использовании sysVinit вообще на 1970 год. Тем не менее время синхронизируется сразу же после подключения к интернету.
1.4 Отключено аппаратное ускорение в mpv. Смотреть конфиг /etc/mpv/mpv.conf
2 aarch64:
2.1 В mpv не отображаются элементы интерфейса bug 36200
  1. Это ссылки на сборки, помеченные как tested. Помимо них есть ещё несколько снапшотов: aarch64 armh
  2. Данные сборки не имеют предустановленного пользователя. При первом запуске вам будет предложено создать пользователя и задать пароль суперпользователя root
  3. Используется система инициализации sysvinit с elogind для управления сеансом
  4. У данных сборок пароль суперпользователя altlinux
  5. У данной сборки пароль суперпользователя altlinux