Write/rootfs: различия между версиями
(не показано 20 промежуточных версий 8 участников) | |||
Строка 13: | Строка 13: | ||
* операционная система Linux (установленная или Live); | * операционная система Linux (установленная или Live); | ||
* программа для автоматической установки архива с rootfs - [https://packages.altlinux.org/ru/sisyphus/srpms/alt-rootfs-installer alt-rootfs-installer]. Программа уже входит в комплект [https://www.altlinux.org/Starterkits стартеркитов] и дистрибутивов '''9 платформы''', но программу всё же лучше обновить перед применением | * программа для автоматической установки архива с rootfs - [https://packages.altlinux.org/ru/sisyphus/srpms/alt-rootfs-installer alt-rootfs-installer]. Программа уже входит в комплект [https://www.altlinux.org/Starterkits стартеркитов] и дистрибутивов, начиная с '''9 платформы''', но программу всё же лучше обновить перед применением. | ||
'''Порядок действий для установки на SD-карту:''' | '''Порядок действий для установки на SD-карту:''' | ||
Строка 29: | Строка 29: | ||
<pre>su -</pre> | <pre>su -</pre> | ||
* Определяем имя целевого устройства в вашей системе. SD-карта обычно определяется в системе как /dev/mmcblk0, но может определяться и как /dev/sdX, где X - маленькая латинская буква от b до z (на /dev/sda установлена ваша система) | * Определяем имя целевого устройства в вашей системе. SD-карта обычно определяется в системе как /dev/mmcblk0, но может определяться и как /dev/sdX, где X - маленькая латинская буква от b до z (на /dev/sda установлена ваша система). Можно узнать как именно определилась карта например прочитав вывод # dmesg | tail -f сразу после подключения карты. | ||
* Устанавливаем командой: | * Устанавливаем командой: | ||
Строка 36: | Строка 36: | ||
== Примеры создания загрузочных SD-карт == | == Примеры создания загрузочных SD-карт == | ||
=== ЭЛВИС Салют ЭЛ24ПМ2 (mcom02) === | === ЭЛВИС Салют ЭЛ24ПМ2 (mcom02) === | ||
Строка 88: | Строка 52: | ||
mkdir -p /mnt/destination | mkdir -p /mnt/destination | ||
mount /dev/mmcblk0p0 /mnt/destination | mount /dev/mmcblk0p0 /mnt/destination | ||
tar -Jxf alt-p9-lxde-mcom02-20190729-armh.tar.xz /mnt/destination | tar -Jxf alt-p9-lxde-mcom02-20190729-armh.tar.xz -С /mnt/destination | ||
sync | sync | ||
umount /mnt/destination | umount /mnt/destination | ||
Строка 96: | Строка 60: | ||
На microSD-карте необходимо создать таблицу разделов msdos, один раздел, отформатировать его в файловую систему ext4fs, файловой системе присвоить метку ROOT. После чего примонтировать созданный раздел и распаковать архив rootfs на него. | На microSD-карте необходимо создать таблицу разделов msdos, один раздел, отформатировать его в файловую систему ext4fs, файловой системе присвоить метку ROOT. После чего примонтировать созданный раздел и распаковать архив rootfs на него. | ||
=== | === Orange Pi Prime === | ||
Команда для установки regular-mate-20190228-aarch64.tar.xz на SD-карту /dev/mmcblk0 с загрузчиком для | Команда для установки regular-mate-20190228-aarch64.tar.xz на SD-карту /dev/mmcblk0 с загрузчиком для Orange Pi Prime будет выглядеть так: | ||
<pre>alt-rootfs-installer --rootfs=regular-mate-20190228-aarch64.tar.xz --media=/dev/mmcblk0 --target= | <pre>alt-rootfs-installer --rootfs=regular-mate-20190228-aarch64.tar.xz --media=/dev/mmcblk0 --target=orangepi_prime</pre> | ||
=== | === Замена загрузчика === | ||
Одну и ту же micro-SD карту можно легко использовать на другом устройстве, лишь заменив загрузчик (это касается только загрузчиков для одного и того же типа SOC): | |||
<pre>alt-rootfs-installer | <pre>alt-rootfs-installer --media=/dev/mmcblkX --target=<имя_u-boot_загрузчика></pre> | ||
=== | == Создание образа img из архива rootfs == | ||
В версии alt-rootfs-installer 0.3.0 появилась возможность создавать образ из архива rootfs. Для этого вместо опции --media= нужно указать --image-out= | |||
<pre>alt-rootfs-installer --rootfs=<путь/до/rootfs.tar.xz> --image-out=<путь/до/выходного_образа.img> --target=<цель></pre> | |||
Пример: создание образа regular-lxqt-20190213-aarch64.img из архива rootfs regular-lxqt-20190213-aarch64.tar.xz для Raspberry Pi 3: | |||
<pre>alt-rootfs-installer --rootfs=regular-lxqt-20190213-aarch64.tar.xz --image-out=regular-lxqt-20190213-aarch64.img --target=rpi3</pre> | |||
Будет создан образ с минимальным запасом свободного места достаточного для загрузки, но не полноценной работы. Если планируется создать образ для работы в qemu, то можно явно указать желаемый размер в MiB: | |||
<pre>alt-rootfs-installer --rootfs=<путь/до/rootfs.tar.xz> --image-out=<путь/до/выходного_образа.img> --image-size=<размер_образа_в_MiB> --target=<цель></pre> | |||
Пример: создание образа regular-lxqt-20190213-aarch64.img из архива rootfs regular-lxqt-20190213-aarch64.tar.xz для Raspberry Pi 3 размером 8000 MiB: | |||
<pre>alt-rootfs-installer --rootfs=regular-lxqt-20190213-aarch64.tar.xz --image-out=regular-lxqt-20190213-aarch64.img --image-size=8000 --target=rpi3</pre> | |||
== Запись образа img на SD-карту == | |||
Можно воспользоваться удобной утилитой с графическим интерфейсом {{Package|rpi-imager}} ([https://www.raspberrypi.org/software/ сайт]), которая существует под самые распространенные платформы. [https://lists.altlinux.org/pipermail/devel-sbc/2021-April/000283.html Ссылка на сообщение в рассылке] | |||
В любом Linux можно записать командой: | |||
<source lang="Bash">xzcat <путь/до/образа.img.xz>| dd of=/dev/mmcblkX bs=4M status=progress</source> | |||
где /dev/mmcblkX - SD-карта (microSD-карта) | |||
Также в версии alt-rootfs-installer 0.3.0 появилась возможность записывать образы img, img.gz, img.xz. Для этого вместо опции --rootfs= нужно указать --image-in= | |||
<source lang="Bash">alt-rootfs-installer --image-in=<путь/до/входного_образа.img> --media=/dev/mmcblkX --target=<цель></source> | |||
Пример: запись образа regular-lxqt-20190213-aarch64.img.xz на /dev/mmcblkX для компьютера Orange Pi Prime: | |||
<source lang="Bash">alt-rootfs-installer --image-in=<regular-lxqt-20190213-aarch64.img.xz> --media=/dev/mmcblkX --target=orangepi_prime</source> | |||
Пример: запись образа lt-workstation-10.0-aarch64.img.xz на /dev/sdb для компьютера Orange Pi Prime: | |||
=== | <source lang="Bash"># alt-rootfs-installer --image-in=alt-workstation-10.0-aarch64.img.xz --media=/dev/sdb --target=orangepi_prime</source> | ||
Пример: запись образа slinux-rpi4-9.0-aarch64.img.xz на /dev/sdb для компьютера Raspberry Pi 4: | |||
< | <source lang="Bash">alt-rootfs-installer --image-in=slinux-rpi4-9.0-aarch64.img.xz --media=/dev/sdb</source> | ||
И наконец, если у вас Windows, то записать, предварительно разархивировав, можно программой [[Запись_образов_на_DVD_и_USB_Flash#HDD_Raw_Copy_Tool | HDD Raw Copy Tool]]. | |||
=== Расширить корневой раздел на всё свободное место === | |||
Начиная с версии 0.3.2 в alt-rootfs-installer появилась опция --resize. Она расширяет последний раздел на накопителе на всё оставшееся неразмеченное пространство. Поддерживаются разметки диска mbr и gpt. | |||
Пример: запись образа slinux-rpi4-9.0-aarch64.img.xz на /dev/sdb для компьютера Raspberry Pi 4 с последующим расширением корневого раздела: | |||
<source lang="Bash">alt-rootfs-installer --image-in=slinux-rpi4-9.0-aarch64.img.xz --media=/dev/sdb --resize</source> | |||
=== Конфигурация периферии === | |||
Конфигурация платы, поставляемая вместе с ядром, является максимально подходящей для всех. Многое отключено. В этом поможет [[Device Tree|cтатья]] о настройке периферийных устройств. | |||
[[Категория:Sisyphus]] | [[Категория:Sisyphus]] | ||
[[Категория:Regular]] | [[Категория:Regular]] | ||
[[Категория:ARM]] | [[Категория:ARM]] | ||
[[Категория: | [[Категория:AArch64]] | ||
[[en:Regular]] | [[en:Regular]] |
Текущая версия от 07:55, 16 февраля 2024
Введение
Данная страница посвящена описанию способов установки архивов корневых файловых систем (rootfs) на физические носители (flash-накопители).
Установка rootfs на SD-карту с помощью alt-rootfs-installer
Потребуются:
- micro-SD карта (или иной накопитель, если целевое устройство его поддерживает) достаточного объёма (не менее 8 ГБ; рекомендуется 16 ГБ и более; для сборок без DE должно хватить 4 ГБ);
- операционная система Linux (установленная или Live);
- программа для автоматической установки архива с rootfs - alt-rootfs-installer. Программа уже входит в комплект стартеркитов и дистрибутивов, начиная с 9 платформы, но программу всё же лучше обновить перед применением.
Порядок действий для установки на SD-карту:
- Скачиваем интересующий вас rootfs
- Выясняем поддерживается ли целевое устройство:
alt-rootfs-installer --supported
В списке нужно найти название загрузчика (u-boot), предназначенного для вашего устройства, и указать его в качестве цели (--target=<имя_u-boot_загрузчика>). Список разбит по производителям SOC и архитектурам (armh, aarch64 и т.д.). Особняком стоят загрузчики для Raspberry Pi. rpi2 предназначен для записи armh rootfs для Raspberry Pi 2 и 3. rpi3 для записи aarch64 rootfs на Raspberry Pi 3.
- Получаем права суперпользователя root:
su -
- Определяем имя целевого устройства в вашей системе. SD-карта обычно определяется в системе как /dev/mmcblk0, но может определяться и как /dev/sdX, где X - маленькая латинская буква от b до z (на /dev/sda установлена ваша система). Можно узнать как именно определилась карта например прочитав вывод # dmesg | tail -f сразу после подключения карты.
- Устанавливаем командой:
alt-rootfs-installer --rootfs=<путь/до/rootfs.tar.xz> --media=/dev/mmcblkX --target=<имя_u-boot_загрузчика>
Примеры создания загрузочных SD-карт
ЭЛВИС Салют ЭЛ24ПМ2 (mcom02)
Для установки на процессорный модуль ЭЛВИС Салют ЭЛ24ПМ2 потребуются специальные сборки с ядром mcom02. В названии rootfs должно присутствовать mcom02. Установка осуществляется командой:
alt-rootfs-installer --rootfs=alt-p9-lxde-mcom02-20190729-armh.tar.xz --media=/dev/mmcblk0
Также можно установить вручную, выполнив следующие команды от root:
umount /dev/mmcblk0p? parted /dev/mmcblk0 mktable msdos parted -a optimal /dev/mmcblk0 mkpart primary ext4 2MIB 100% mkfs.ext4 -L ROOT /dev/mmcblk0p0 partprobe mkdir -p /mnt/destination mount /dev/mmcblk0p0 /mnt/destination tar -Jxf alt-p9-lxde-mcom02-20190729-armh.tar.xz -С /mnt/destination sync umount /mnt/destination
Или же можно воспользоваться графической утилитой вроде gparted. На microSD-карте необходимо создать таблицу разделов msdos, один раздел, отформатировать его в файловую систему ext4fs, файловой системе присвоить метку ROOT. После чего примонтировать созданный раздел и распаковать архив rootfs на него.
Orange Pi Prime
Команда для установки regular-mate-20190228-aarch64.tar.xz на SD-карту /dev/mmcblk0 с загрузчиком для Orange Pi Prime будет выглядеть так:
alt-rootfs-installer --rootfs=regular-mate-20190228-aarch64.tar.xz --media=/dev/mmcblk0 --target=orangepi_prime
Замена загрузчика
Одну и ту же micro-SD карту можно легко использовать на другом устройстве, лишь заменив загрузчик (это касается только загрузчиков для одного и того же типа SOC):
alt-rootfs-installer --media=/dev/mmcblkX --target=<имя_u-boot_загрузчика>
Создание образа img из архива rootfs
В версии alt-rootfs-installer 0.3.0 появилась возможность создавать образ из архива rootfs. Для этого вместо опции --media= нужно указать --image-out=
alt-rootfs-installer --rootfs=<путь/до/rootfs.tar.xz> --image-out=<путь/до/выходного_образа.img> --target=<цель>
Пример: создание образа regular-lxqt-20190213-aarch64.img из архива rootfs regular-lxqt-20190213-aarch64.tar.xz для Raspberry Pi 3:
alt-rootfs-installer --rootfs=regular-lxqt-20190213-aarch64.tar.xz --image-out=regular-lxqt-20190213-aarch64.img --target=rpi3
Будет создан образ с минимальным запасом свободного места достаточного для загрузки, но не полноценной работы. Если планируется создать образ для работы в qemu, то можно явно указать желаемый размер в MiB:
alt-rootfs-installer --rootfs=<путь/до/rootfs.tar.xz> --image-out=<путь/до/выходного_образа.img> --image-size=<размер_образа_в_MiB> --target=<цель>
Пример: создание образа regular-lxqt-20190213-aarch64.img из архива rootfs regular-lxqt-20190213-aarch64.tar.xz для Raspberry Pi 3 размером 8000 MiB:
alt-rootfs-installer --rootfs=regular-lxqt-20190213-aarch64.tar.xz --image-out=regular-lxqt-20190213-aarch64.img --image-size=8000 --target=rpi3
Запись образа img на SD-карту
Можно воспользоваться удобной утилитой с графическим интерфейсом rpi-imager[1] (сайт), которая существует под самые распространенные платформы. Ссылка на сообщение в рассылке
В любом Linux можно записать командой:
xzcat <путь/до/образа.img.xz>| dd of=/dev/mmcblkX bs=4M status=progress
где /dev/mmcblkX - SD-карта (microSD-карта)
Также в версии alt-rootfs-installer 0.3.0 появилась возможность записывать образы img, img.gz, img.xz. Для этого вместо опции --rootfs= нужно указать --image-in=
alt-rootfs-installer --image-in=<путь/до/входного_образа.img> --media=/dev/mmcblkX --target=<цель>
Пример: запись образа regular-lxqt-20190213-aarch64.img.xz на /dev/mmcblkX для компьютера Orange Pi Prime:
alt-rootfs-installer --image-in=<regular-lxqt-20190213-aarch64.img.xz> --media=/dev/mmcblkX --target=orangepi_prime
Пример: запись образа lt-workstation-10.0-aarch64.img.xz на /dev/sdb для компьютера Orange Pi Prime:
# alt-rootfs-installer --image-in=alt-workstation-10.0-aarch64.img.xz --media=/dev/sdb --target=orangepi_prime
Пример: запись образа slinux-rpi4-9.0-aarch64.img.xz на /dev/sdb для компьютера Raspberry Pi 4:
alt-rootfs-installer --image-in=slinux-rpi4-9.0-aarch64.img.xz --media=/dev/sdb
И наконец, если у вас Windows, то записать, предварительно разархивировав, можно программой HDD Raw Copy Tool.
Расширить корневой раздел на всё свободное место
Начиная с версии 0.3.2 в alt-rootfs-installer появилась опция --resize. Она расширяет последний раздел на накопителе на всё оставшееся неразмеченное пространство. Поддерживаются разметки диска mbr и gpt.
Пример: запись образа slinux-rpi4-9.0-aarch64.img.xz на /dev/sdb для компьютера Raspberry Pi 4 с последующим расширением корневого раздела:
alt-rootfs-installer --image-in=slinux-rpi4-9.0-aarch64.img.xz --media=/dev/sdb --resize
Конфигурация периферии
Конфигурация платы, поставляемая вместе с ядром, является максимально подходящей для всех. Многое отключено. В этом поможет cтатья о настройке периферийных устройств.