Bagaimana cara menulis image ISO ke memory stick usb dari linux command-line?

23

Saya mengalami kesulitan mencari tahu bagaimana saya akan menulis image disk ISO ke perangkat memori flash USB dari baris perintah di Ubuntu. Saya memiliki utilitas Startup Disk Creator, tetapi saya harus dapat melakukan skrip pekerjaan ini.

Saya menemukan paket usb-creator, tetapi ada tampaknya tidak menjadi dokumentasi dan python -m usbcreatormemberikan usbcreator is a package and cannot be directly executed.

Saya melihat unetbootin, tetapi sepertinya utilitas lain yang hanya GUI.

Apakah ada solusi jelas yang saya abaikan?

mikepurvis
sumber

Jawaban:

12

Saya tahu Anda bisa melakukan ini di UNetbootin gui. Saya belum mencobanya sendiri, tetapi sepertinya Anda bisa melakukannya dengan command-line, juga:

http://sourceforge.net/apps/trac/unetbootin/wiki/commands

metode unetbootin = diskimage isofile = "my.iso" installtype = USB targetdrive = / dev / sdc1

Ian
sumber
^ jawaban yang akan saya berikan. unetbootinsecara otomatis menangani langkah-langkah yang diperlukan untuk memindahkan sebagian besar file ISO ke media USB.
MikeyB
Bagi saya di Fedora Core 23 diluncurkan unetbootin guitetapi dengan pengaturan yang disediakan pada baris perintah.
Yaroslav Nikitenko
25

Apakah Anda yakin jika ISO image akan berfungsi pada perangkat USB? Beberapa ISO yang akan melakukan boot jika menggunakan CD / DVD tidak akan benar-benar mem-boot dari perangkat USB.

Dengan asumsi ISO yang Anda inginkan memiliki bootloader yang akan berfungsi, maka harus sesederhana dd if=filename.iso of=/dev/usbdevicetetapi ini akan menggantikan apa pun yang saat ini ada di disk USB.

Jika Anda ingin menempatkan ISO ke sistem file yang ada pada drive USB dan mem-boot-nya, maka pengaturannya mungkin jauh lebih rumit.

Sakit kepala
sumber
Tidak, ini sempurna; persis apa yang saya butuhkan. Terima kasih!
mikepurvis
1
Ack ... tidak cukup. Metode ini memuat sistem file, tetapi tampaknya tidak membuat drive dapat di-boot seperti yang dilakukan alat Startup Disk Creator (dengan ISO yang sama).
mikepurvis
2
Seperti yang saya sebutkan itu tidak tergantung pada boot-loader apa yang ada pada ISO dan bagaimana konfigurasi. Beberapa gambar akan berfungsi hanya dengan melakukan dd, yang lain tidak. Misalnya, Debian Live akan berfungsi dengan baik dengan menggunakan metode dd. Untuk memastikan Anda dapat mencobanya, atau membaca dokumen untuk apa pun yang Anda bicarakan untuk melihat apakah itu didukung.
Zoredache
2
@Zoredache untuk memeriksa apakah isodapat di-boot bisa Anda gunakan file. Jika dapat di-boot, ia akan mencetak bootabledi akhir garis keluaran.
Yaroslav Nikitenko
10

Dari Linux ada cara yang sangat mudah untuk membuat memory stick yang dapat di-boot dari image ISO - dan ini harus bekerja untuk OS apa pun . Dengan asumsi memory stick adalah /dev/sdbdan gambar /home/username/Downloads/system.iso.

Lakukan ini (sebagai root):

dd if=/home/username/Downloads/system.iso of=/dev/sdb

Jauh lebih mudah daripada unetbootin atau metode lain yang pernah saya dengar.

Paul
sumber
Ini mengasumsikan bootloader termasuk dalam iso, yang umumnya tidak demikian.
mikepurvis
6
Hanya langkah penting adalah menulis / outputfile ke perangkat, bukan partisi. Yaitu of=/dev/sdbdan TIDAK of=/dev/sdb1. (Hanya ingin mengomentari masalah ini, tidak ada yang salah dengan posting Anda: o))
sjas
Ini bekerja untuk saya ketika mencoba menginstal Debian 9 pada netbook Asus Eee PC lama. Unetbootin menghasilkan drive yang tidak bisa boot sama sekali dalam kasus ini.
unfa
0

Saya menggunakan prosedur berikut:

1. Membaca ukuran blok dan ukuran volume:

[root@testserver ~]# isoinfo -d -i /path_to_iso | grep -i -E 'block size|volume size' 
Logical block size is: 2048
Volume size is: 327867

2. Menjalankan dd dengan parameter untuk ukuran blok dan ukuran volume:

root@testserver ~]# dd if=/path_to_iso of=/dev/your_usb_device bs=block-size-from-above count=volume-size-from-above
campur aduk
sumber