USB flash installation medium (Русский)
На этой странице описаны различные способы создания загрузочной флешки с Arch Linux как для загрузки в системах с BIOS, так и с UEFI. Результатом будет система LiveUSB (подобная LiveCD), которую можно будет использовать для установки Arch Linux, обслуживания системы или в целях восстановления. Обратите внимание, что после выключения все изменения на носителе будут отмены из-за особенностей SquashFS.
Если вам нужно запускать Arch Linux с USB-накопителя с сохранением изменений, посмотрите статью Installing Arch Linux on a USB key. Если вы хотите использовать загрузочный USB-носитель Arch Linux в целях восстановления, посмотрите статью Cмена суперпользователя.
Создание загрузочного USB для BIOS и UEFI
Используя автоматические инструменты
В GNU/Linux
Через dd
/dev/sdx
. Чтобы восстановить USB-накопитель как пустое, пригодное для использования запоминающее устройство после использования ISO-образа Arch, необходимо удалить подпись файловой системы ISO 9660, выполнив wipefs --all /dev/sdx
от суперпользователя, перед разметкой и форматированием.lsblk
. Убедитесь что она не примонтирована.Выполните следующую команду, заменив /dev/sdx
на ваше устройство, например, на /dev/sdb
. (Не добавляйте номер раздела, т.е. не используйте что-то вроде /dev/sdb1
)
# dd bs=4M if=путь/до/archlinux.iso of=/dev/sdx status=progress oflag=sync
Для получения дополнительной информации о dd, а также о oflag=sync
смотрите соответственно dd(1) и dd(1) § DESCRIPTION.
В Windows
Через Rufus
Rufus - универсальная утилита для записи ISO на USB-накопители. Просто выберите образ Arch Linux, USB-накопитель, который вы хотите сделать загрузочным, и нажмите СТАРТ.
Поскольку Rufus не проверяет правильно ли отформатировано устройство и предоставляет GUI, его можно посчитать самым простым и надежным инструментом для использования.
- Для версий Rufus ≥ 3.0 выберите GPT в Схема раздела. После нажатия СТАРТ вы получите диалоговое окно для выбора режима, выберите Записать в режиме DD-образ.
- Для версий Rufus < 3.0 выберите режим DD-образ из выпадающего меню напротив пункта "Создать загрузочный диск".
Через USBwriter
Этот способ не требует каких-либо обходных решений и прост как dd
в Linux. Вам нужно только скачать образ Arch Linux и использовать утилиту USBwriter с локальными правами администратора для записи USB флешки.
Через win32diskimager
win32diskimager - инструмент для записи iso на USB с GUI для Windows. Просто выберите ваш iso образ и букву USB-носителя (вам может потребоваться сначала отформатировать его для назначения буквы), потом нажмите Write.
Через Cygwin
Убедитесь, что установка Cygwin содержит пакет dd
.
dd
для Windows здесь. Для получения дополнительной информации смотрите следующий раздел.Положите образ в ваш домашний каталог:
C:\cygwin\home\John\
Запустите cygwin от администратора (это необходимо cygwin'y для доступа к железу). Для записи на USB-носитель выполните следующую команду:
dd if=образ.iso of=\\.\x: bs=4M
где образ.iso - путь до образа iso без директории cygwin
, а \\.\x:
- ваша флешка, где x
это буква, присвоенная устройству windows, например, \\.\d:
.
В Cygwin 6.0 узнайте имя устройства с помощью:
cat /proc/partitions
и запишите образ ISO, согласно выходной информации предыдущей команды. Например:
dd if=образ.iso of=/dev/sdb bs=4M
через dd для Windows
GPL версия утилиты dd для Windows доступна на сайте http://www.chrysocome.net/dd. Преимуществом над Cygwin является меньший размер. Используйте ее, как показано в инструкциях для Cygwin выше.
Для начала скачайте последнюю версию dd для Windows. После загрузки распакуйте содержимое архива в каталог Загрузки или в другое место.
Теперь запустите командную строку
от администратора. Далее смените директорию с помощью (cd
) на Загрузки.
Если ISO Arch Linux в другом месте, укажите полный путь до него. Для удобства вы можете поместить образ Arch Linux в ту же папку, что и исполняемый файл dd. Основной формат команды будет выглядеть следующим образом.
# dd if=archlinux-версия-x86_64.iso od=\\.\x: bs=4M
od
, который используется в приведенных выше командах. Однако обратите внимание, что этот параметр относится к версии dd для Windows и может отсутствовать в других реализациях dd.od
все разделы на выбранном диске будут уничтожены. Перед выполнением убедитесь, что вы ввели правильное имя устройства.Замените все пустые места (обозначенные "x") правильной датой и правильной буквой диска. Вот полный пример.
# dd if=ISOs\archlinux-версия-x86_64.iso od=\\.\d: bs=4M
\\.\PhysicalDriveX
, где X
- физический номер устройства (начинается с 0). Например:
# dd if=ISOs\archlinux-версия-x86_64.iso of=\\.\PhysicalDrive1 bs=4M
Вы можете узнать физический номер вводом wmic diskdrive list brief
в комадную строку или с dd --list
.
В macOS
Сначала, вам нужно идентифицировать USB-устройство. Откройте /Applications/Utilities/Terminal
и перечислите все устройства хранения с помощью команды:
$ diskutil list
Ваше USB-устройство появится, как /dev/disk2 (external, physical)
. Убедитесь, что это устройство, которое вы хотите использовать, проверив его имя и размер, а затем используйте его идентификатор для приведенных ниже команд вместо /dev/diskX.
USB-устройства обычно автомонтируются в macOS, и вам необходимо отключить его (не извлечь) перед записью через dd
. В Терминале выполните:
$ diskutil unmountDisk /dev/diskX
Теперь скопируйте ISO образ на устройство. Команда dd
похожа на версию dd в Linux, но заметьте, что 'r' перед 'disk' обозначает режим raw, который делает процесс намного быстрее:
# dd if=путь/до/arch.iso of=/dev/rdiskX bs=1m
Обратите внимание, что в diskX
здесь не включается суффикс s1
, иначе USB-носитель будет загружаться только в режиме UEFI, а не в legacy. После завершения macOS может жаловаться, что "The disk you inserted was not readable by this computer" ("Вставленный диск не читается этим компьютером"). Выберите 'Игнорировать'. Устройство USB будет загрузочным.
Используя ручное форматирование
В GNU/Linux
Это способ сложнее, чем запись напрямую через dd
. Но преимущество этого способа - сохранение возможности хранение прочей информации на флешке (ISO образ устанавливается в определенный раздел уже размеченного устройства без изменения оставшихся).
/dev/disk/by-id/usb-My_flash_drive-partn
. В любой из следующих команд изменяйте My_flash_drive
и n
в соответствии с вашей системой.- Если это еще не сделано, создайте таблицу разделов на
/dev/disk/by-id/usb-My_flash_drive
.
- Если это еще не сделано, создайте раздел на устройстве. Раздел
/dev/disk/by-id/usb-My_flash_drive-partn
должен быть отформатирован в FAT32
- Смонтируйте файловую систему FAT32, расположенную на флешке, и извлеките туда содержимое ISO-образа. Например:
# mount /dev/disk/by-id/usb-My_flash_drive-partn /mnt # bsdtar -x -f archlinux-version-x86_64.iso -C /mnt
Для загрузки в режиме BIOS требуется указать том, на котором находятся файлы. По умолчанию UUID YYYY-mm-dd-HH-MM-SS-00
(с соответствующей датой и временем выпуска в формате UTC). Замените параметр archisodevice=
в /mnt/boot/syslinux/archiso_sys-linux.cfg
на постоянный идентификатор устройства для вашего устройства. Например, archisodevice=UUID=YOUR-UUID
.
archisolabel
или archisodevice
будет препятствовать загрузке с созданного носителя.Файлы Syslinux для систем BIOS уже скопированы в /mnt/boot/syslinux/
. Размонтируйте файловую систему FAT, установите пакеты syslinux и mtools и выполните следующие команды, чтобы сделать раздел загрузочным:
# umount /mnt # syslinux --directory boot/syslinux --install /dev/disk/by-id/usb-My_flash_drive-partn # dd bs=440 count=1 conv=notrunc if=/usr/lib/syslinux/bios/mbr.bin of=/dev/disk/by-id/usb-My_flash_drive
- Замените
mbr.bin
наgptmbr.bin
, если/dev/disk/by-id/usb-My_flash_drive
имеет таблицу разделов GUID. См. Syslinux (Русский)#Таблица разделов MBR для получения подробной информации. - Для таблицы разделов MBR вам нужно будет установить флаг «boot». См. Syslinux (Русский)#Таблица разделов MBR для получения подробной информации.
В Windows
- При ручном форматирование не используйте утилиты для создания загрузочных USB для UEFI. Также не используйте dd для Windows, чтобы записать ISO на USB.
- В командах ниже X: предполагает USB-носитель в Windows.
- Windows использует обратную косую черту
\
для разделения пути, поэтому она в командах ниже. - Все команды следует выполнять в командной строке Windows от администратора.
>
обозначает командную строку Windows.
- Разметку и форматирование USB-устройства выполните, используя Rufus. Выберите схему разделов MBR для BIOS и UEFI и файловую систему FAT32. Уберите галку с пунктов "Создать загрузочный диск используя ISO-образ" и "Создать расширенную метку и значок устройства".
- Измените Метку устройства USB-носителя
X:
на МЕТКУarchisolabel=
, находящейся в<ISO>\loader\entries\archiso-x86_64.conf
. Этот шаг необходим для официального ISO (Archiso). Этот шаг также можно было выполнить через Rufus, на предыдущем шаге "разбиение и форматирование". - Распакуйте ISO (похоже на распаковку архива ZIP) на флешку, используя 7-Zip.
- Скачайте официальный бинарник Syslinux 6.xx (архив zip) с https://www.kernel.org/pub/linux/utils/boot/syslinux/ и извлеките его. Версия Syslinux желательно должна совпадать с версией в образе ISO.
- Запустите следующие команды (в cmd Windows от администратора):
> cd bios\ > for /r %Y in (*.c32) do copy "%Y" "X:\arch\boot\syslinux\" /y > copy mbr\*.bin X:\arch\boot\syslinux\ /y
- Установите Syslinux на USB (используйте
win64\syslinux64.exe
для x64 Windows):
> cd bios\ > win32\syslinux.exe -d /arch/boot/syslinux -i -a -m X:
- Приведенный выше шаг устанавливает
ldlinux.sys
Syslinux'а в VBR раздела USB, устанавливает раздел как "активный/загрузочный" в таблице разделов MBR и записывает код загрузки MBR в 1-й 440-байтовый загрузочный код USB. - Параметр
-d
ожидает путь с разделителем пути косой черты, как в *unix системах.
Другие способы для систем с BIOS
В GNU/Linux
Через мультизагрузочную флешку
Этот способ позволяет запускать несколько ISO с одного USB-носителя, включая archiso. Обновление ISO образа на USB-накопителе здесь делается проще, чем в большинстве других методах. Для получения дополнительной информации смотрите Multiboot USB drive.
Через GNOME Disk Utility
В дистрибутивах Linux с GNOME легко можно сделать liveCD через nautilus и gnome-disk-utility. Просто нажмите правой кнопкой мыши на файл .iso и выберите Open With Disk Image Writer. Когда откроется GNOME Disk Utility, укажите флешку в Destination и нажмите Start Restoring.
Создание USB-ZIP накопителя
Некоторые старые системы с BIOS поддерживают загрузку только с USB-ZIP носителя. Этот способ позволяет вам все еще загружаться с накопителя USB-HDD.
- Скачайте syslinux и mtools с официальных репозиториев.
- Найдите вашу флешку с помощью
lsblk
. - Введите
mkdiskimage -4 /dev/sdx 0 64 32
(заменив x на букву вашего устройства). Это займет некоторое время.
Теперь выполняйте инструкции из раздела ручного форматирования выше. Раздел будет /dev/sdx4
из-за особенностей работы ZIP-дисков.
Через UNetbootin
UNetbootin можно использовать на любом дистрибутиве Linux или Windows для копирования iso на USB. Но он перезаписывает syslinux.cfg
, поэтому созданная загрузочная флешка не правильно загружается. Из-за этого Unetbootin не рекомендуется -- пожалуйста используйте dd
или один из других описанных здесь способов.
syslinux.cfg
, поэтому его нужно восстановить до использования флешки.Измените syslinux.cfg
:
sysconfig.cfg
default menu.c32 prompt 0 menu title Archlinux Installer timeout 100 label unetbootindefault menu label Archlinux_x86_64 kernel /arch/boot/x86_64/vmlinuz append initrd=/arch/boot/x86_64/archiso.img archisodevice=/dev/sdx1 ../../
В строке /dev/sdx1
вы должны заменить x на первую свободную букву т.е. на букву, которая следует за последней использованой в системе, на которую устанавливаете Arch Linux (например, если у вас два жестких диска, используйте c
.). Вы можете сделать это изменение во время первой фазы загрузки, нажав Tab
, когда отображается меню.
В Windows
Через Flashnul
flashnul - утилита для проверки работоспособности и обслуживания Flash-памяти (USB-Flash, IDE-Flash, SecureDigital, MMC, MemoryStick, SmartMedia, XD, CompactFlash и т.д.).
В командной строке вызовите flashnul с параметром -p
и определите, какой индекс устройства является вашим USB-накопителем, например:
C:\>flashnul -p
Avaible physical drives: Avaible logical disks: C:\ D:\ E:\
Когда вы определили, какое вам нужно устройство, вы можете записать образ на него, вызвав flashnul с индексом устройства, -L
и с путем к образу, например:
C:\>flashnul E: -L путь\до\arch.iso
Если вы действительно уверены, что хотите записать данные, введите yes, а затем немного подождите, пока они будут записываться. Если вы получили ошибку "Отказано в доступе", закройте все открытые окна Проводника.
Если вы используете Vista или Win7, вы должны открыть консоль от имени администратора, иначе flashnul не сможет открыть флешку как блочное устройство и сможет писать только через дескриптор диска.
Загрузка установочного носителя из ОЗУ
Этот способ использует Syslinux и Ramdisk (MEMDISK) для загрузки всего образа Arch Linux в ОЗУ. Поскольку он будет работать полностью из оперативной памяти, вам необходимо убедиться, что система, на которую вы будете его устанавливать, имеет достаточный объем. Минимальное количество ОЗУ - между 500 MB и 1 GB. Этого должно хватить для MEMDISK на основе Arch Linux.
Для получения дополнительной информации о системных требованиях Arch Linux, а также о требованиях для MEMDISK соответственно смотрите Руководство по установке и это. Для справки, вот тема форума об этом.
Подготовка флэш-накопителя USB
Отформатируйте USB-носитель в FAT32. Затем создайте следующие папки на нем.
Boot
Boot/ISOs
Boot/Settings
Копирование нужных файлов на флешку
Далее скопируйте ISO, с которого вы хотите загружаться, в каталог Boot/ISOs
. После этого извлеките следующие файлы из последней версии syslinux отсюда и скопируйте их в следующие каталоги.
./win32/syslinux.exe
на Рабочий стол или в Загрузки вашей системы../memdisk/memdisk
в каталогSettings
на вашей флешки.
Создание файла настроек
После копирования необходимых файлов перейдите на USB-накопителе в /boot/Settings и создайте файл syslinux.cfg
.
INITRD
обязательно используйте имя файла ISO, который вы скопировали в папку ISOs
./Boot/Settings/syslinux.cfg
DEFAULT arch_iso LABEL arch_iso MENU LABEL Arch Setup LINUX memdisk INITRD /Boot/ISOs/archlinux-версия-x86_64.iso APPEND iso
Для получения дополнительной информации о Syslinux смотрите статью Arch Wiki.
Заключительные шаги
Наконец, создайте файл *.bat
в месте расположения syslinux.exe
и запустите его ("Запустите от администратора" если вы используете Vista или Windows 7):
C:\Documents and Settings\username\Desktop\install.bat
@echo off syslinux.exe -m -a -d /Boot/Settings X:
Решение проблем
- Если появляется сообщение об ошибке "устройство не появляется через 30 секунд" ("device did not show up after 30 seconds") из-за того, что
/dev/disk/by-label/ARCH_YYYYMM
не монтируется, попробуйте переименовать USB-носитель вARCH_YYYYMM
(например,ARCH_201501
). - Если вы получили ошибки, попробуйте использовать другое USB-устройство. Существуют примеры ситуаций, в которых решаются все проблемы.