QuickStart/WriteISOtoUSB

Материал из ALT Linux Wiki

Как записать загрузочный/установочный носитель?

Хорошо, выбрали дистрибутив под свою архитектуру, скачали ISO'шник и проверили контрольную сумму. Как теперь записать скаченное на USB-флэшку из другой Linux-системы?

Внимание! Другие способы записи ISO-образа на диски различных типов, в том числе, если под рукой нет Linux'а, описаны в отдельной статье Запись образов на DVD и USB Flash.

Вставляем USB-флэшку, на которой нет ценных данных, – её сейчас будем перезаписывать. Логинимся в рутовую консоль и отмонтируем флэшку, предварительно выяснив её название:

Примечание: Здесь и далее по тексту используются общепринятые обозначения. Команды, выполняемые с рутовыми привилегиями, отмечены символом приглашения «#». Команды, выполняемые с правами обычного пользователя, отмечены символом приглашения «$». Эти символы набирать конечно же не надо! Всё, что этими символами не отмечено – результат выполнения команды, выводимый в ответ.
# mount | tail
...
/dev/sdb1 on /media/MYDATA type vfat (rw,...)

Обычно последняя строка, самое первое поле (/dev/sdb1 в данном примере). Именно это устройство и нужно отмонтировать. Однако на флэшке может быть несколько разделов и отмонтировать нужно все, поэтому надёжнее сделать так:

# umount /dev/sdb[1-9]*

Здесь и далее по тексту наша флэшка называется /dev/sdb, у вас это может называться иначе, так что будьте внимательны! Записываем скаченный ISO-образ на USB-флэшку:

# dd if=/home/user/iso/alt-kworkstation-8.2-install-x86_64.iso \
		of=/dev/sdb bs=2M oflag=direct status=progress; sync

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

$ sha256sum /home/user/iso/alt-kworkstation-8.2-install-x86_64.iso
474a3de5dc04c980c44893370addae0d3e7b07e27d85bb37993d5263dae82a57

Посмотрим на размер образа в байтах:

$ du -sb /home/user/iso/alt-kworkstation-8.2-install-x86_64.iso
3959422976 /home/user/iso/alt-kworkstation-8.2-install-x86_64.iso

Разделим это число на 2Мб:

echo $(( 3959422976 / 2048 / 1024 ))
1888

Именно столько 2Мб-блоков должно было войти и выйти при копировании через dd. Проверим в обратную сторону:

echo $(( 1888 * 2048 * 1024 ))
3959422976

Теперь посчитаем контрольную сумму того, что мы записали только что на флэшку. Для этого возвращаемся в рутовую консоль и командуем:

# dd if=/dev/sdb bs=2M count=1888 | sha256sum 
1888+0 записей получено 
1888+0 записей отправлено 
474a3de5dc04c980c44893370addae0d3e7b07e27d85bb37993d5263dae82a57  - 
3959422976 байт (4,0 GB, 3,7 GiB) скопирован, 315,284 s, 12,6 MB/s 

Если контрольная сумма совпала, значит всё сделано верно. Иначе – придётся начинать всё с самого начала. Возможно, необходимо заменить флэшку. Обратите внимание, что проверять контрольную сумму следует не только того, что записывается на USB-флэшку, но и того, что скачивается. Для этого можно использовать по аналогии соответствующие утилиты: sha256sum, sha1sum, md5sum.

Внимание! Другие способы записи ISO-образа на диски различных типов, в том числе, если под рукой нет Linux'а, описаны в отдельной статье Запись образов на DVD и USB Flash.