Как записать установочный iso-образ Linux на USB-флэш

debianeach

Опубликован:  2018-09-16T08:24:46.950776Z
Отредактирован:  2018-09-19T05:24:25.510753Z

Установка любой операционной системы начинается с получения носителя с записанной инсталляционной программой дистрибутива. В мире Linux дистрибутивные решения принято распространять на iso-образах. Сегодня поговорим о процедуре записи iso-образа на USB-флэш накопитель. Весь процесс я продемонстрирую на примере установочного образа Simply Linux, любезно предоставленного компанией BaseALT, который скачаю с одного из зеркал, запишу на носитель и проверю полученный результат по контрольным суммам. Для этой демонстрации мне потребуются:

  • компьютер с установленной и настроенной операционной системой Linux, я буду использовать Debian stretch;
  • безлимитное соединение с сетью Интернет;
  • эмулятор терминала;
  • Интернет-браузер;
  • консольные программы dd, du и md5sum из пакета coreutils, udisksctl из пакета udisks2, a также sudo и wget;
  • USB-флеш накопитель.

Для загрузки образа я буду использовать wget. Установочные iso-образы Linux-дистрибутивов как правило занимают много места, а скорость отдачи трафика на зеркалах ограничена, поэтому процесс загрузки может занять некоторое время. А wget умеет докачивать частично загруженные файлы в случаях обрыва соединения в процессе загрузки.

Чтобы избежать свалки в домашнем каталоге, создаю специальный каталог для iso образов командой mkdir и вхожу в него.

mkdir -p workspace/iso
cd workspace/iso

9ga1ZjAkA8.png

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

Открываю Интернет-браузер и захожу на ftp.yandex.ru, нахожу в корне каталог altlinux и в нём стабильный текущий релиз p8->images->simply.

Ug3vKV5zED.png

В этом каталоге меня интересуют два файла: текстовый файл с контрольными суммами MD5SUM и установочный образ alt-simply-8.2.0-live-x86_64.iso. Поочерёдно копирую в браузере ссылки на эти файлы в буфер обмена, и скачиваю эти файлы с помощью wget. Ссылку в терминале вставляю из буфера обмена.

CSGBZKtRpv.png

В данном случае загрузка iso-образа прошла без сбоев. Для справки, в случае обрыва соединения в процессе загрузки файла можно перезапустить wget с опцией -c, которая позволяет докачать уже частично загруженный файл. На скриншоте выше в выхлопе wget подчёркнуто итоговое количество загруженных байт, это число понадобится чуть позже и его можно без труда получить при помощи программы du.

Загрузка файла с контрольными суммами много времени не занимает.

pmIsgsroVO.png

Когда оба файла загружены, необходимо посчитать контрольную сумму загруженного iso-образа и сравнить её с контрольной суммой записанной в файле MD5SUM.

md5sum alt-simply-8.2.0-live-x86_64.iso
grep alt-simply-8.2.0-live-x86_64.iso MD5SUM

7scsu0b4Aj.png

На скриншоте видно, что контрольные суммы совпали, это гарантирует, что iso-образ загружен без искажений и его можно записывать на носитель.

Вставляю свой флэш-накопитель в USB-разъём компьютера.

Важное замечание: запись образа на носитель можно осуществлять только в том случае, если все разделы флэш накопителя отмонтированы, а питание флэшки включено, подробности о работе с флэш накопителями описаны в Как работать с USB-флэш накопителями в Linux, рекомендую прочесть.

Следует обратить внимание, что размер дискового пространства флэш накопителя должен быть больше размера записываемого образа. Размер дискового пространства флэшки в байтах можно определить с помощью программы udisksctl.

udisksctl info --block-device /dev/sdb | grep Size

Ahp8aDyS6J.png

Размер записываемого образа в байтах легко определить программой du.

du -b alt-simply-8.2.0-live-x86_64.iso

5wmFhcomil.png

Это число мне сегодня уже встречалось в выхлопе wget при загрузке этого образа.

На моей флэшке имеется один единственный раздел с файловой системой FAT32, который занимает всё доступное на флэшке пространство, и этот раздел отмонтирован, а питание флэшки включено.

ijGgNBAmDN.png

Следует помнить, что в результате записи iso-образа, все имеющиеся перед записью данные на носителе будут утеряны. Записываю скачанный образ.

sudo dd oflag=direct if=alt-simply-8.2.0-live-x86_64.iso of=/dev/sdb bs=1M status=progress; sync

qc5pAtL09z.png

Важное замечание: при записи образа на носитель следует правильно указывать параметр of для dd, в данном случае of=/dev/sdb содержит идентификатор носителя а не раздела на этом носителе.

На скриншоте выше видно, что программа dd выдала число записанных на флэшку байт, в моём случае это 1320222720, это число мне уже встречалось выше, оно совпадает с размером записываемого образа. Это число мне потребуется, чтобы посчитать контрольную сумму этой области пространства флэшки. Считаю контрольную сумму такой командой.

sudo head -c 1320222720 /dev/sdb | md5sum

И сравниваю полученную контрольную сумму с контрольной суммой записанной в файле MD5SUM для данного iso-образа.

grep alt-simply-8.2.0-live-x86_64.iso MD5SUM

Убеждаюсь, что контрольные суммы совпадают.

IOxFR8J6NJ.png

Установочная флэшка готова, и теперь её можно проверить тестовой загрузкой виртуального компьютера в VirtualBox, чтобы убедиться, что всё работает правильно.

Oa72BuZIfT.png

Как загрузить виртуальный компьютер с USB-флэш вставленного в хост-машину Дебианыч расскажет чуть позже, о Simply Linux и записанном в этом обзоре LiveCD мы тоже обязательно поговорим. А сегодняшняя цель достигнута, осталось правильно извлечь носитель из гнезда компьютера.

Замечание: как правильно вынуть флэшку из разъёма описано в Как работать с USB-флэш накопителями в Linux.

Комментарии: