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

Материал из ALT Linux Wiki
Нет описания правки
Нет описания правки
Строка 1: Строка 1:


'''<big>Регулярные сборки для одноплатных компьютеров с архитектурой процессора RISC-V (rv64gc)</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
|}
|}
Строка 11: Строка 9:
| [[:en:Regular/riscv64|English]]
| [[:en:Regular/riscv64|English]]
|}
|}
<div id="intro"></div>
= '''Краткий обзор''' =


[[Regular|Регулярные сборки]] образов предназначены для разработки и тестирования порта на архитектуру RISC-V (rv64gc) репозитория [[Sisyphus]]. Дополнительную информацию о порте можно узнать на [[Ports/riscv64|этой странице]].


Подробную информацию о регулярных сборках можно прочитать [[Regular|здесь]].
== Краткий обзор ==


В случае предложений или обнаружения ошибок смотрите раздел [[#Обратная связь|"Обратная связь"]].
[[Regular|Регулярные сборки]] образов предназначены для разработки и тестирования [[Ports/riscv64|порта на архитектуру RISC-V (rv64gc)]] репозитория [[Sisyphus]]. Дополнительная информация:
* о регулярных сборках: [[Regular]];
* о Sisyphus на riscv64: [[Ports/riscv64]];
* [[#Обратная связь|"Обратная связь"]].


После загрузки системы с предложенными ниже образами необходимо ввести следующие логин и пароль:
После загрузки системы с предложенными ниже образами необходимо ввести следующие логин и пароль:
<br>
 
'''<tt>login: root</tt>'''
  login: root
<br>
  password: alt
'''<tt>password: alt</tt>'''


Графический образ с [https://ru.wikipedia.org/wiki/Xfce XFCE] не имеет предустановленного пароля для root.
На достаточно свежих образах с графикой ([https://ru.wikipedia.org/wiki/Xfce XFCE], [https://ru.wikipedia.org/wiki/MATE MATE]) этот пароль действует при первом запуске. Во время первого запуска пользователю предлагается выполнить настройку системы самостоятельно через графический мастер настройки; в частности, потребуется задать новый пароль root'а.
Во время первого запуска пользователю предлагается выполнить настройку системы самостоятельно через
графическое меню.


В случае системы для разработчика ('''builder''') есть также предустановленный пользователь:
В случае системы для разработчика ('''builder''') есть также предустановленный пользователь:
<br>
 
'''<tt>login: altlinux</tt>'''
  login: altlinux
<br>
  password: alt
'''<tt>password: alt</tt>'''


{{Attention|Сразу же после авторизации '''смените пароль'''!!!}}
{{Attention|Сразу же после авторизации '''смените пароль'''!!!}}


== HiFive Unleashed ==
== HiFive Unmatched и Unleashed ==
На текущий момент опубликованы четыре вида образов для платы [https://www.sifive.com SiFive] [https://www.crowdsupply.com/sifive/hifive-unleashed HiFive Unleashed]:


* Минимальная система с systemd -- [http://nightly.altlinux.org/sisyphus-riscv64/alpha/regular-jeos-systemd-latest-riscv64.tar.xz ссылка] ([http://nightly.altlinux.org/sisyphus-riscv64/alpha/MD5SUM MD5], [http://nightly.altlinux.org/sisyphus-riscv64/alpha/SHA1SUM SHA1])
Для [[HiFive  Unmatched]] и [[HiFive Unleashed]] актуальны образы, которые собирает jqt4@: http://ftp.altlinux.org/pub/people/jqt4/images/hifive/
* Минимальная система с SysV -- [http://nightly.altlinux.org/sisyphus-riscv64/alpha/regular-jeos-sysv-latest-riscv64.tar.xz ссылка] ([http://nightly.altlinux.org/sisyphus-riscv64/alpha/MD5SUM MD5], [http://nightly.altlinux.org/sisyphus-riscv64/alpha/SHA1SUM SHA1])
 
* Минимальная система для разработчика (rpmbuild, [https://www.altlinux.org/Hasher hasher], gcc, ssh) -- [http://nightly.altlinux.org/sisyphus-riscv64/alpha/regular-builder-latest-riscv64.tar.xz ссылка] ([http://nightly.altlinux.org/sisyphus-riscv64/alpha/MD5SUM MD5], [http://nightly.altlinux.org/sisyphus-riscv64/alpha/SHA1SUM SHA1])
Инструкция для запуска образов -- на странице платы: [[HiFive Unmatched]] и [[HiFive Unleashed]].
* Графическая система с XFCE (VNC, X11) -- [http://nightly.altlinux.org/sisyphus-riscv64/alpha/regular-xfce-latest-riscv64.tar.xz ссылка] ([http://nightly.altlinux.org/sisyphus-riscv64/alpha/MD5SUM MD5], [http://nightly.altlinux.org/sisyphus-riscv64/alpha/SHA1SUM SHA1])
<br>
Инструкция для запуска образов на HiFive Unleashed находится в разделе [[#Запуск на HiFive Unleashed|"Запуск на HiFive Unleashed"]].


== QEMU ==
== QEMU ==
Помимо образов для платы HiFive Unleashed подготовлены образы для эмулятора [https://www.qemu.org QEMU]:
 
Подготовлены образы для эмулятора [https://www.qemu.org QEMU]:
* Минимальная система с systemd -- [http://nightly.altlinux.org/sisyphus-riscv64/alpha/regular-jeos-systemd-latest-riscv64.qcow2c ссылка] ([http://nightly.altlinux.org/sisyphus-riscv64/alpha/MD5SUM MD5], [http://nightly.altlinux.org/sisyphus-riscv64/alpha/SHA1SUM SHA1])
* Минимальная система с systemd -- [http://nightly.altlinux.org/sisyphus-riscv64/alpha/regular-jeos-systemd-latest-riscv64.qcow2c ссылка] ([http://nightly.altlinux.org/sisyphus-riscv64/alpha/MD5SUM MD5], [http://nightly.altlinux.org/sisyphus-riscv64/alpha/SHA1SUM SHA1])
* Минимальная система с SysV -- [http://nightly.altlinux.org/sisyphus-riscv64/alpha/regular-jeos-sysv-latest-riscv64.qcow2c ссылка] ([http://nightly.altlinux.org/sisyphus-riscv64/alpha/MD5SUM MD5], [http://nightly.altlinux.org/sisyphus-riscv64/alpha/SHA1SUM SHA1])
* Минимальная система с SysV -- [http://nightly.altlinux.org/sisyphus-riscv64/alpha/regular-jeos-sysv-latest-riscv64.qcow2c ссылка] ([http://nightly.altlinux.org/sisyphus-riscv64/alpha/MD5SUM MD5], [http://nightly.altlinux.org/sisyphus-riscv64/alpha/SHA1SUM SHA1])
Строка 55: Строка 46:
* Графическая система с XFCE (VNC, X11) -- [http://nightly.altlinux.org/sisyphus-riscv64/alpha/regular-xfce-latest-riscv64.qcow2c ссылка] ([http://nightly.altlinux.org/sisyphus-riscv64/alpha/MD5SUM MD5], [http://nightly.altlinux.org/sisyphus-riscv64/alpha/SHA1SUM SHA1])
* Графическая система с XFCE (VNC, X11) -- [http://nightly.altlinux.org/sisyphus-riscv64/alpha/regular-xfce-latest-riscv64.qcow2c ссылка] ([http://nightly.altlinux.org/sisyphus-riscv64/alpha/MD5SUM MD5], [http://nightly.altlinux.org/sisyphus-riscv64/alpha/SHA1SUM SHA1])
<br>
<br>
Инструкция для запуска образов в QEMU находится в разделе [[#Запуск на QEMU|"Запуск на QEMU"]].
Инструкция для запуска образов в QEMU находится на странице [[Ports/riscv64/QEMU]].
 
= '''Запуск на QEMU''' =
Для запуска образов на QEMU необходимо выполнить следующие шаги:
 
'''Шаг 1.''' Для запуска порта ALT на RISC-V необходимо установить QEMU с поддержкой riscv64. Например, в случае хостовой системы ALT Sisyphus: [http://sisyphus.ru/en/srpm/Sisyphus/qemu qemu-system-riscv-core].
 
'''Шаг 2.'''


==== <p style="color:#337569;">ALT</p> ====
Далее необходимо установить или распаковать пакет с [https://github.com/riscv/opensbi OpenSBI] и [https://www.denx.de/wiki/U-Boot/ U-Boot]. Для этого, в случае '''хостовой системы ALT''' (если это не так, [[#Другая система|см. ниже]]) можно добавить noarch репозиторий riscv64 и установить пакет <code>opensbi-firmware-generic</code>:
<source lang="shell">
$ apt-repo add 'rpm [sisyphus-riscv64] http://ftp.altlinux.org/pub/distributions/ALTLinux ports/riscv64/Sisyphus/noarch classic'
$ apt-get update
$ apt-get install opensbi-firmware-generic
</source>
После этого в вашей системе появится нужный файл прошивки <code>/usr/share/opensbi/generic/firmware/fw_payload.elf</code>.
==== <p style="color:#337569;">Другая система<p> ====
В этом случае можно скачать пакет <code>opensbi-firmware-generic-.*</code> из репозитория [http://ftp.altlinux.org/pub/distributions/ALTLinux/ports/riscv64/Sisyphus/noarch/RPMS.classic/ sisyphus-riscv64 noarch]. После этого, можно установить этот пакет в систему используя <code>rpm -i</code> или распаковать его <code>rpm2cpio</code>.
Кроме этого, можно достать файл прошивки <code>/usr/share/opensbi/generic/firmware/fw_payload.elf</code> из загруженного образа qcow2c с помощью <code>qemu-nbd</code>.
'''Шаг 3.''' После этого, скачав один из образов для QEMU ([[#QEMU|см. выше]]) можно запускать QEMU, заменив <code><IMAGE></code> на путь к образу qcow2c, а <code><FIRMWARE></code> на путь к <code>fw_payload.elf</code>:
<source lang="shell">
$ qemu-system-riscv64 -nographic -machine virt \
                      -bios <FIRMWARE> \
                      -m 2G -smp cpus=4 \
                      -drive file=<IMAGE>,id=hd0 -device virtio-blk-device,drive=hd0 \
                      -netdev user,id=eth0 -device virtio-net-device,netdev=eth0
</source>
В случае графического образа с XFCE необходимо перенаправить входящие TCP соединения к хосту на порт 5900 (VNC) в гостевую машину.
Для этого можно воспользоваться следующей командой:
<source lang="shell">
$ qemu-system-riscv64 -nographic -machine virt \
                      -bios <FIRMWARE> \
                      -m 2G -smp cpus=4 \
                      -drive file=<IMAGE>,id=hd0 -device virtio-blk-device,drive=hd0 \
                      -netdev user,id=eth0,hostfwd=tcp::5900-:5900 -device virtio-net-device,netdev=eth0
</source>
Информация о подключении к системе с графическим образом через VNC находится в разделе [[#VNC|"VNC"]].
Информация о подключении к системе с графическим образом через VNC находится в разделе [[#VNC|"VNC"]].


= '''Запуск на HiFive Unleashed''' =
== VNC ==
Данная инструкция предполагает, что пользователь работает на машине с установленным ALT Sisyphus.
Для запуска на плате HiFive Unleashed необходимо выполнить следующие шаги:


'''Шаг 1.''' Скачайте образ для платы ([[#HiFive Unleashed|см. выше]]), который представляет собой сжатый tar.xz архив с rootfs. Существует два варианта установки системы: [[#Автоматическая установка|автоматическая установка на системе ALT Sisyphus]] и [[#Ручная установка|ручная]].
Для образов с графикой (XFCE, MATE, ...) при первом запуске, пользователю будет предложено выполнить первоначальную настройку системы в графическом меню. Во время настройки можно
установить временную зону, пароль пользователя root, пароль для подключения к VNC, задать нового пользователя и т.д.


==== <p style="color:#337569;">Автоматическая установка</p> ====
Для автоматической установки требуется подготовка карты microSD в системе ALT Sisyphus.
'''Шаг 2.''' Установите пакет [https://packages.altlinux.org/ru/sisyphus/srpms/alt-rootfs-installer alt-rootfs-installer].
'''Шаг 3.''' Запустите установщик <code>alt-rootfs-installer</code>. Он автоматически выполнит разметку microSD карты и установку системы. Пример команды, для установки на microSD карту <code>/dev/sdX</code> образа <code>regular-builder-latest-riscv64.tar.xz</code>, с выводом логов в <code>/home/user/alt-rootfs-installer.log</code>:
<source lang="shell">
$ alt-rootfs-installer --rootfs=/home/user/images/regular-builder-latest-riscv64.tar.xz \
                      --media=/dev/sdX \
                      --target=HiFive-Unleashed-opensbi --log=/home/user/alt-rootfs-installer.log
</source>
<br>
После этого на диске <code>/dev/sdX</code> будет создано три раздела:
<ol>
<li>[https://github.com/sifive/freedom-u540-c000-bootloader FSBL (First Stage Bootloader)]</li>
<li>[https://github.com/riscv/opensbi OpenSBI] + [https://www.denx.de/wiki/U-Boot/ U-Boot]</li>
<li>rootfs</li>
</ol>
microSD карта готова к использованию с HiFive Unleashed.
==== <p style="color:#337569;">Ручная установка</p> ====
'''Шаг 2.''' Распакуйте 2 файла из архива полученного на шаге 1. Например, в случае минимального образа с systemd:
<source lang="shell">
$ tar -xJf regular-builder-latest-riscv64.tar.xz ./usr/share/fu540_boot/fsbl.bin ./usr/share/opensbi/sifive/fu540/firmware/fw_payload.bin
</source>
Полученные файлы <code>./usr/share/fu540_boot/fsbl.bin</code> и <code>./usr/share/opensbi/sifive/fu540/firmware/fw_payload.bin</code> являются, соответственно, [https://github.com/sifive/freedom-u540-c000-bootloader FSBL] и [https://github.com/riscv/opensbi OpenSBI] + [https://www.denx.de/wiki/U-Boot/ U-Boot].
'''Шаг 3.''' Создайте GPT таблицу с тремя разделами на вашей microSD карте:
<ul>
<li>Раздел с FSBL должен иметь [https://github.com/sifive/freedom-u540-c000-bootloader/blob/master/gpt/gpt.c специальный GUID] 5B193300-FC78-40CD-8002-E86C45580B47</li>
<li>Раздел с OpenSBI должен иметь [https://github.com/sifive/freedom-u540-c000-bootloader/blob/master/gpt/gpt.c специальный GUID] 2E54B353-1271-4842-806F-E436D6AF6985</li>
<li>Раздел с Linux Filesystem GUID 0FC63DAF-8483-4772-8E79-3D69D8477DE4</li>
</ul>
Пример команды для разметки <code>/dev/sdX</code>:
<source lang="shell">
$ sgdisk \
--new=1:2048:4095 --change-name=1:fsbl \
--typecode=1:5B193300-FC78-40CD-8002-E86C45580B47 \
--new=2:4096:32767 --change-name=2:opensbi-uboot \
--typecode=2:2E54B353-1271-4842-806F-E436D6AF6985 \
--new=3:32768: --change-name=3:rootfs \
--typecode=3:0FC63DAF-8483-4772-8E79-3D69D8477DE4 \
/dev/sdX
</source>
'''Шаг 4.''' Запишите файл с FSBL на раздел microSD c FSBL GUID (в примере это первый раздел):
<source lang="shell">
$ dd if=./usr/share/fu540_boot/fsbl.bin of=/dev/sdX1 bs=4M status=progress
</source>
'''Шаг 5.''' Запишите файл с OpenSBI+U-Boot на раздел microSD c OpenSBI GUID (в примере это второй раздел):
<source lang="shell">
$ dd if=./usr/share/opensbi/sifive/fu540/firmware/fw_payload.bin of=/dev/sdX2 bs=4M status=progress
</source>
'''Шаг 6.''' Создайте файловую систему на третьем разделе microSD. Примонтируйте его и распакуйте туда tar архив:
<source lang="shell">
$ mkfs.ext4 /dev/sdX3
$ mount /dev/sdX3 /mnt
$ tar -xpJvf regular-builder-latest-riscv64.tar.xz -C /mnt/
$ sync; umount /dev/sdX3
</source>
microSD карта готова к использованию с HiFive Unleashed.
= '''VNC''' =
При первом запуске, пользователю будет предложено выполнить первоначальную настройку системы в графическом меню. Во время настройки можно
установить временную зону, пароль пользователя root, пароль для подключения к VNC, задать нового пользователя и т.д.
В случае использования QEMU, всё, что нужно сделать это подключиться к VNC серверу внутри гостевой машины, который доступен по адресу 127.0.0.1.
В случае использования QEMU, всё, что нужно сделать это подключиться к VNC серверу внутри гостевой машины, который доступен по адресу 127.0.0.1.
Для этого, можно воспользоваться, например [https://en.wikipedia.org/wiki/TigerVNC tigerVNC]:
Для этого, можно воспользоваться, например [https://en.wikipedia.org/wiki/TigerVNC tigerVNC]:
Строка 181: Строка 60:
$ vncviewer 127.0.0.1
$ vncviewer 127.0.0.1
</source>
</source>
В случае платы HiFive Unleashed необходимо узнать IP адрес этой машины, который она автоматически получает по DHCP.
В случае физической машины необходимо узнать её IP адрес, который она автоматически получает по DHCP.
Один из способов, которым это можно сделать, заключается в подключении к последовательной консоли через microUSB разъём на плате.
Один из способов, которым это можно сделать, заключается в подключении к последовательной консоли через microUSB разъём на плате.
Для подключения к последовательной консоли (обычно /dev/ttyUSB1) с помощью GNU/screen воспользуйтесь следующей командой:
Для подключения к последовательной консоли (обычно /dev/ttyUSB1) с помощью GNU/screen воспользуйтесь следующей командой:
Строка 199: Строка 78:
</source>
</source>


= '''Обратная связь''' =
== Обратная связь ==
'''• Сообщения об ошибках''' принимаются через [https://bugzilla.altlinux.org bugzilla].
'''• Сообщения об ошибках''' принимаются через [https://bugzilla.altlinux.org bugzilla].
* В случае, если проблема в пакете, то при создании ошибки выбирайте ''Sisyphus''
* В случае, если проблема в пакете, то при создании ошибки выбирайте ''Sisyphus''

Версия от 12:36, 10 ноября 2021

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


Краткий обзор

Регулярные сборки образов предназначены для разработки и тестирования порта на архитектуру RISC-V (rv64gc) репозитория Sisyphus. Дополнительная информация:

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

 login: root
 password: alt

На достаточно свежих образах с графикой (XFCE, MATE) этот пароль действует при первом запуске. Во время первого запуска пользователю предлагается выполнить настройку системы самостоятельно через графический мастер настройки; в частности, потребуется задать новый пароль root'а.

В случае системы для разработчика (builder) есть также предустановленный пользователь:

 login: altlinux
 password: alt
Внимание! Сразу же после авторизации смените пароль!!!


HiFive Unmatched и Unleashed

Для HiFive Unmatched и HiFive Unleashed актуальны образы, которые собирает jqt4@: http://ftp.altlinux.org/pub/people/jqt4/images/hifive/

Инструкция для запуска образов -- на странице платы: HiFive Unmatched и HiFive Unleashed.

QEMU

Подготовлены образы для эмулятора QEMU:


Инструкция для запуска образов в QEMU находится на странице Ports/riscv64/QEMU.

Информация о подключении к системе с графическим образом через VNC находится в разделе "VNC".

VNC

Для образов с графикой (XFCE, MATE, ...) при первом запуске, пользователю будет предложено выполнить первоначальную настройку системы в графическом меню. Во время настройки можно установить временную зону, пароль пользователя root, пароль для подключения к VNC, задать нового пользователя и т.д.

В случае использования QEMU, всё, что нужно сделать это подключиться к VNC серверу внутри гостевой машины, который доступен по адресу 127.0.0.1. Для этого, можно воспользоваться, например tigerVNC:

$ vncviewer 127.0.0.1

В случае физической машины необходимо узнать её IP адрес, который она автоматически получает по DHCP. Один из способов, которым это можно сделать, заключается в подключении к последовательной консоли через microUSB разъём на плате. Для подключения к последовательной консоли (обычно /dev/ttyUSB1) с помощью GNU/screen воспользуйтесь следующей командой:

$ screen /dev/ttyUSB1 115200

Во время загрузки системы, будет выведено сообщение об IPv4 и IPv6 адресах сетевого устройства используемого по умолчанию в виде:

[  128.084540] xinit[276]: ALTERATOR SETUP === Default device: "eth0"
[  128.084888] xinit[276]: ALTERATOR SETUP === IPv4: "192.168.88.216/24"
[  128.085110] xinit[276]: ALTERATOR SETUP === IPv6: "fe80::72b3:d5ff:fe92:f229/64"

Подключение к VNC серверу выполняется аналогичным образом:

$ vncviewer 192.168.88.216

Обратная связь

• Сообщения об ошибках принимаются через bugzilla.

  • В случае, если проблема в пакете, то при создании ошибки выбирайте Sisyphus
  • В случае проблем с образами выбирайте Regular

В качестве платформы укажите riscv64 (выпадающий список справа). В качестве исполнителя укажите iv@altlinux.org.
• IRC канал #altlinux-riscv на freenode.
• Список рассылки: riscv-devel@lists.altlinux.org