Jump to content

# USB flash installation medium (Русский)

From ArchWiki
Состояние перевода: На этой странице представлен перевод статьи USB flash installation media. Дата последней синхронизации: 17 марта 2019. Вы можете помочь синхронизировать перевод, если в английской версии произошли изменения.

Ссылки по теме

- Optical disc drive#Burning
- Archiso (Русский)
- Multiboot USB drive

На этой странице описаны различные способы создания загрузочной флешки с 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, его можно посчитать самым простым и надежным инструментом для использования.

Примечание Образ должен быть записан в режиме DD-образ.

- Для версий 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`.

Совет Если вы не хотите устанавливать Cygwin, вы можете скачать `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, согласно выходной информации предыдущей команды. Например:

Важно Это уничтожит безвозвратно всю информацию на USB-накопителе, поэтому убедитесь, что на нем нет важных файлов перед этим.

    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

Примечание Буквы дисков в Windows связаны с разделами. Чтобы разрешить выбор всего диска, dd для Windows имеет параметр `od`, который используется в приведенных выше командах. Однако обратите внимание, что этот параметр относится к версии dd для Windows и может отсутствовать в других реализациях dd.
Важно Из-за использования параметра `od` все разделы на выбранном диске будут уничтожены. Перед выполнением убедитесь, что вы ввели правильное имя устройства.

Замените все пустые места (обозначенные "x") правильной датой и правильной буквой диска. Вот полный пример.

    # dd if=ISOs\archlinux-версия-x86_64.iso od=\\.\d: bs=4M

The factual accuracy of this article or section is disputed.

Reason: Следующее замечание может быть неверно. В документации нет ничего связанного с PhysicalDrive. (Discuss in Talk:USB flash installation medium (Русский)#dd для windows)
Примечание Альтернативно, замените букву устройства на `\\.\PhysicalDriveX`, где `X` - физический номер устройства (начинается с 0). Например:

    # dd if=ISOs\archlinux-версия-x86_64.iso of=\\.\PhysicalDrive1 bs=4M

Вы можете узнать физический номер вводом `wmic diskdrive list brief` в комадную строку или с `dd --list`.

Любые окна Проводника должны быть закрыты или dd сообщит об ошибке.

#### В 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.

Важно Это уничтожит всю информацию на USB-носителе!

- Скачайте syslinux и mtools с официальных репозиториев.
- Найдите вашу флешку с помощью `lsblk`.
- Введите `mkdiskimage -4 /dev/sdx 0 64 32` (заменив x на букву вашего устройства). Это займет некоторое время.

Теперь выполняйте инструкции из раздела ручного форматирования выше. Раздел будет `/dev/sdx4` из-за особенностей работы ZIP-дисков.

Примечание Не форматируйте накопитель в FAT32; он должен быть в FAT16.

#### Через UNetbootin

UNetbootin можно использовать на любом дистрибутиве Linux или Windows для копирования iso на USB. Но он перезаписывает `syslinux.cfg`, поэтому созданная загрузочная флешка не правильно загружается. Из-за этого Unetbootin не рекомендуется -- пожалуйста используйте `dd` или один из других описанных здесь способов.

Важно UNetbootin перезаписывает стандартный `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 не сможет открыть флешку как блочное устройство и сможет писать только через дескриптор диска.

Примечание Известно, что вам нужно использовать букву диска, а не номер. flashnul 1rc1, Windows 7 x64.

#### Загрузка установочного носителя из ОЗУ

Этот способ использует Syslinux и Ramdisk (MEMDISK) для загрузки всего образа Arch Linux в ОЗУ. Поскольку он будет работать полностью из оперативной памяти, вам необходимо убедиться, что система, на которую вы будете его устанавливать, имеет достаточный объем. Минимальное количество ОЗУ - между 500 MB и 1 GB. Этого должно хватить для MEMDISK на основе Arch Linux.

Для получения дополнительной информации о системных требованиях Arch Linux, а также о требованиях для MEMDISK соответственно смотрите Руководство по установке и это. Для справки, вот тема форума об этом.

Совет После того, как установщик завершит загрузку, вы можете просто извлечь USB-накопитель и даже использовать его на другом компьютере заново. Использование MEMDISK также позволяет загружать и устанавливать Arch Linux с одной и той же USB-флешки.

##### Подготовка флэш-накопителя 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-устройство. Существуют примеры ситуаций, в которых решаются все проблемы.

## Смотрите также

- Gentoo wiki - LiveUSB/HOWTO
- Fedora wiki - How to create and use Live USB
- openSUSE wiki - SDB:Live USB stick

Category:

- Installation process (Русский)

Hidden category:

- Pages or sections flagged with Template:Accuracy

USB flash installation medium (Русский)
Add topic