Как создать загрузочный USB-накопитель Ubuntu с терминала?

Используйте раскрывающийся файл Vala GIO, показанный здесь http://live.gnome.org/Vala/GIOSamples

var web_page = File.new_for_uri ("http://live.gnome.org/Vala");

Это стандартный метод захвата файлов и веб-страниц, и вы можете использовать синтаксис uri для ряда поддерживаемых протоколов, таких как ssh, ftp и т. д.

1
задан 12 April 2018 в 22:19

7 ответов

Создание загрузочного USB-накопителя Ubuntu с терминала

Поместите файл ubuntu.iso в любой раздел жесткого диска. Затем установите файл ubuntu.iso с помощью следующих команд в терминале:
sudo mkdir /media/iso/
sudo mount -o loop /path/to/ubuntu.iso /media/iso
Вставьте USB-накопитель. Мой диск /dev/sdd. Вот скриншот:

Поместите файл ubuntu.iso в любой раздел жесткого диска.

Поместите файл ubuntu.iso на любой жесткий диск раздел

cp -a /media/iso/. /media/xxx/
Затем смонтируйте файл ubuntu.iso с помощью следующих команд в терминале:
sudo mkdir /media/iso/
sudo mount -o loop /path/to/ubuntu.iso /media/iso

Затем установите файл ubuntu.iso с помощью следующих команд в терминале:

Вставьте USB-накопитель. Мой диск /dev/sdd. Вот скриншот:

Скопируйте все файлы с /media/iso/ на установленный USB-накопитель, выполнив приведенную ниже команду (обязательно включите точку):

80
ответ дан 24 May 2018 в 15:33
  • 1
    На данный момент я пытаюсь это сделать, не могли бы вы указать, что / почему вы используете: cp -a, а не cp -r – moldovean 19 July 2014 в 20:44
  • 2
    Вам понадобится sudo для команды syslinux. – Cammy_the_block 4 November 2014 в 08:55
  • 3
    Этот метод не работал для меня. Cp -a дает: 'cp: не может создать символическую ссылку' /media/xxx/./ubuntu ': операция не разрешена' и другие подобные, так как целью является fat32. Я попытался игнорировать это ... не работал – sheß 30 May 2015 в 15:26
  • 4
    Важно отметить, что usb должен быть файловой системой fat32, иначе syslinux не будет работать – Ricardo BRGWeb 2 November 2015 в 05:22
  • 5
    Консоль показывает мне ту же ошибку, что и @ sheß. Я проверил файловую систему (FAT32) и флаг BOOT. – Chofoteddy 4 January 2016 в 22:07

Вы почти там с dd, но вам не хватает шага.

sudo umount /dev/sdX
sudo dd if=/path/to/ubuntu.iso of=/dev/sdX bs=4M && sync

, где sdX - ваше устройство usb (это можно проверить с помощью lsblk).

бит sync важен, поскольку dd может вернуться до завершения операции записи.

69
ответ дан 24 May 2018 в 15:33
  • 1
    +1 для упоминания sync. Без этого вы не знаете, действительно ли контент был скопирован. Кроме того, если вы не спешите, вы должны md5sum, чтобы оба файла были вдвойне уверены. – Dave 15 October 2015 в 03:28
  • 2
    Возможно, стоит упомянуть, что USB, возможно, должен быть (повторно) отформатирован как FAT32 с sudo mkfs.msdos -F 32 /dev/sdX первым? – Nemo 5 May 2016 в 01:32
  • 3
    @Nemo, возможно ли это изменить ситуацию? dd в / dev / sdX перезапишет любую существующую файловую систему. – mwfearnley 8 May 2016 в 16:54
  • 4
    sync здесь бессмысленно. Это влияет только на действия файловой системы. – punund 19 June 2016 в 17:03

У вас есть два варианта:

Если вам нужен графический интерфейс, используйте usb-creator (он находится в репозиториях ubuntu)

Если вы нужен инструмент командной строки, используйте dd

#Replace X accordingly in both commands

sudo umount /dev/sdX
sudo dd if=/path/to/ubuntu.iso of=/dev/sdbX bs=1M

Просто убедитесь, что /dev/sdX - это флэш-диск, который вы хотите использовать (он уничтожит данные на флэш-диске).

[d6 ] См. Https://help.ubuntu.com/community/Installation/FromUSBStick для получения дополнительной информации.

34
ответ дан 24 May 2018 в 15:33
  • 1
    Я хочу только инструменты командной строки, а не инструмент gui (например, создатель автозагрузки). Согласно методу dd, в моем usb было создано только 3 папки и 1 файл. Пока я пытаюсь загрузить его, говорит operating system not found error.Files например ubninit,menu.c32,ubnpathl.txt,ubnfilel.txt,ldlinux.sys (что очень важно для загрузки live ubuntu usb). – Avinash Raj 8 November 2013 в 11:00
  • 2
    Я попробовал dd-метод с ubuntu.iso, и он сработал! это слишком много времени, однако, чтобы быть написанным на USB. Интересно, что означает bs = 1M. Я нашел этот сайт manpages.ubuntu.com/manpages/karmic/en/man1/dd.1.html . Теперь мне интересно, изменит ли значение скорость копирования на USB быстрее? И каковы риски ... может быть, кто-то знает. – moldovean 17 August 2014 в 12:42
  • 3
    Bs - размер блока. dd будет считывать 1 МБ данных в память, а затем переходить к записи на диск в целом. Используя очень небольшой размер блока, вы получите много накладных расходов на процессор. Использование очень большого размера блока может привести к неожиданным побочным эффектам, например. более длительные паузы в отсутствии активности диска и / или использование большой ОЗУ. 1M или 4M обычно является хорошим значением при создании диска из ISO. Дополнительная информация о размерах блоков: stackoverflow.com/questions/6161823/… – ApolloLV 11 November 2014 в 22:28
  • 4
    Я полагаю, что создание загрузочного USB - это то, что я делаю нечасто, но когда я это делаю, я хочу, чтобы все было правильно. Меньший размер блока может занять больше времени, но это проблема? Неа. – Marc 19 February 2015 в 01:44
  • 5
    @Marc - Единственная проблема - скорость, меньший размер блока не более или менее подвержен ошибкам, чем больший размер блока и, следовательно, меньший размер блока! = «Сделано правильно». Done right означает проверку md5sum iso и подтверждение md5sum записанного изображения. Как только вы подтвердите m5dsums, вы знаете, что все было сделано правильно. – Panther 19 February 2015 в 17:58

Сначала отключите USB-устройство, а затем используйте lsblk, чтобы проверить устройство.

Иногда (обычно более старые файлы iso) dd недостаточно, и pendrive не загружается. В этом случае вам может потребоваться установить syslinux:

sudo apt-get install syslinux

, а затем запустить следующие команды:

sudo mkfs -t vfat -I /dev/sdX

Вы хотите запустить эту последнюю команду для /dev/sdX и не /dev/sdX1.

Затем выполните следующие команды:

isohybrid /path/to/file.iso --entry 4 --type 0x1c
dd if='/path/to/file.iso' of=/dev/sdX bs=8M

или, чтобы увидеть ход записи изображения:

pv -tpreb /path/to/file.iso | dd of=/dev/sdX bs=8M

или вместо dd вы можете использовать cat вместо:

sudo -s
cat /path/to/file.iso > /dev/sdX

Rememeber для вызова команды синхронизации для сброса кеша записи

sync

web.archive.org/web /20140327085331/https://tails.boum.org/doc/first_steps/installation/manual/linux/index.en.html

22
ответ дан 24 May 2018 в 15:33
  • 1
    Мне нужно упомянуть, что для меня все остальное не удалось, но это сработало - я выбрал команду cat. – Digital Dracula 29 November 2016 в 16:46
  • 2
    Для тех, кто настаивает на том, что dd один достаточно, я также нуждался в этом, чтобы работать. – GuiRitter 4 November 2017 в 18:04
$ dd if=ubuntu-14.04.1-desktop-amd64.iso of=/dev/sdX bs=1MB

Не используйте путь к биту.

Используйте команду cd, чтобы попасть в папку, содержащую файл .iso, с помощью команды dd if=FILE NAME HERE.iso of=/dev/sdX bs=1MB Подождите, пока выйдет консоль выглядит примерно так:
1028+1 records in
1028+1 records out
1028653056 bytes (1.0 GB) copied, 55.4844 s, 18.5 MB/s
Загрузитесь с USB.

Примечание. Убедитесь, что вы пишете на правильном устройстве, USB не всегда будет установлен на: dev/sdX, где X может быть любой буквой.

6
ответ дан 24 May 2018 в 15:33
  • 1
    каково значение bs = 1MB в команде dd ??? – juggernaut1996 25 January 2016 в 16:56
  • 2
    @ juggernaut1996 нет. Это размер блока, который нужно использовать при копировании. Поскольку аргумент count не был предоставлен, он скопирует весь вход в 1MB-блоки. Его можно удалить. – sjbx 29 June 2016 в 18:23
  • 3
    «Не использовать путь к биту». является дезинформацией. Сам процесс не испекает компоненты пути в скопированное изображение на любом этапе, поэтому не имеет значения, если вы перейдете к каталогу, содержащему образ ISO, или просто укажите полный путь. Более того, dd также может принимать входные данные от stdin, поэтому вы можете просто подключить два dd в eachother, чтобы убедиться, что в изображение не было никакого пути. – Gabor Garami 15 August 2016 в 17:12

Если «сторонний» означает «gui», я предлагаю легкий сценарий с именем bootiso после ответа Avinash Raj, потому что dd не всегда работает.

Как использовать его

Первый вариант, просто укажите, что это очень безопасно (выполняет многие проверки безопасности, чтобы не испортить систему). ISO в качестве первого аргумента, и вам будет предложено выбрать диск среди списка, извлеченного из lsblk:

bootiso myfile.iso

Или предоставить явно устройство USB:

bootiso -d /dev/sde myfile.iso
[d6 ] Быстрая установка
curl -L https://git.io/bootiso -O
chmod +x bootiso

См. В действии:

Я предлагаю легкий сценарий с именем bootiso

2
ответ дан 24 May 2018 в 15:33

Попробуйте это и никогда не сбивали меня с ног более 100 раз:

Отформатируйте карту:

$ sudo mkfs.vfat -F32 /dev/sdx

Установите образ ISO:

$ sudo mount ubuntu.iso /mnt
[d3 ] Скопировать содержимое на карту:

$ sudo cp -rvf /mnt/* /SD_CardMountPoint

Затем:

переименовать isolinux папку в syslinux переименовать syslinux/isolinux.cfg в syslinux/syslinux.cfg переименовать syslinux/isolinux.bin в syslinux/syslinux.bin запустить syslinux -s /dev/sdx
-4
ответ дан 24 May 2018 в 15:33
  • 1
    -1. Вы даже проверили это? sudo cp -rvf /mnt/* /dev/sdx не будет работать (или, по крайней мере, не делать то, что вы намереваетесь). Вы не копируете файлы на необработанное устройство (/dev/). Вместо этого вы должны установить карту и скопировать содержимое файла ISO на карту (точка подключения к точке монтирования). И что не так с текущим принятым ответом, который имеет тот же подход. – gertvdijk 2 January 2015 в 19:29

Другие вопросы по тегам:

Похожие вопросы: