"Ukuran blok fisik adalah 2048 byte, tetapi Linux mengatakan itu 512" ketika memformat USB - Cara membuat USB yang dapat di-boot tanpa kesalahan ini

95

Saya menggunakan:

dd  if=/path/to/my/ubuntuiso/ubuntu.iso  of=/dev/sdb1  bs=4M  &&  sync

Untuk membuat drive USB Ubuntu yang dapat di-boot pada versi Ubuntu yang lebih lama. Itu bekerja dengan sempurna. Terkadang saya menggunakan Startup Disk Creatorprogram, yang bekerja dengan baik.

Tetapi ketika saya menggunakan metode yang sama pada Ubuntu 16.04 LTS, saya mendapatkan beberapa peringatan saat memformatnya setelah itu.

Media instalasi berfungsi seperti yang diharapkan, tetapi ketika saya mencoba memformat USB stick setelah pekerjaan saya selesai, saya mendapatkan peringatan berikut:

masukkan deskripsi gambar di sini

Pemartisian dari Flashdisk itu terlihat aneh:

masukkan deskripsi gambar di sini

Dan itu juga menunjukkan flashdisk 16GB saya sebagai 64GB.

Setelah banyak berjuang dengan Gparted, saya akan memformatnya. Tapi mengapa ini terjadi seperti ini ?? Apakah ada metode yang lebih baik untuk membuat Ubuntu bootable di 16,04?

EDIT : ada pertanyaan terkait di sini . Tetapi pertanyaan saya bukan tentang bagaimana memformatnya dengan benar. Pertanyaan saya adalah "Cara membuat USB yang bisa di-boot tanpa kesalahan itu." & "Apa penyebab kesalahan itu"

Severus Tux
sumber
untuk UEFI saya menggunakan perintah sgdisk - Saya telah membuat 6 USB live distro dengan cara ini dalam beberapa bulan terakhir & ini bekerja dengan baik untuk saya
Zanna
@Zanna tolong jelaskan penggunaan sgdisk
Severus Tux
Apakah Anda yakin itu adalah perangkat yang benar? Jika harus 16GB mungkin itu adalah / dev / sdc atau yang lainnya. Banyak kartu sd 64GB dan biasanya tidak berfungsi untuk booting. Drive Anda tidak akan selalu menunjukkan hal yang sama (sdb sdc) dan itu semua tergantung pada drive mana yang dipasang pertama kali.
mchid
1
Saya memformat USB dengan mkfssetelah ISO. Bekerja terlepas dari metode pembuatan USB.
UniversallyUniqueID

Jawaban:

118

Metode baris perintah untuk membuat USB langsung untuk sistem UEFI

Harap dicatat: ini menghapus semua data pada perangkat target.

Instal prasyarat:

sudo apt-get install p7zip-full

Dengan asumsi USB target di /dev/sdb

( harap periksa dulu dengan lsblkatau gnome-disksatau sudo fdisk -ldan pastikan Anda tahu apa yang Anda format)

Pastikan perangkat tidak memiliki sistem file yang terpasang dan lepaskan jika perlu, misalnya:

udisksctl unmount -b /dev/sdb1

Hancurkan tabel partisi yang ada:

sudo sgdisk --zap-all /dev/sdb

Buat GPT baru:

sudo sgdisk --new=1:0:0 --typecode=1:ef00 /dev/sdb

Format sebagai FAT32:

sudo mkfs.vfat -F32 /dev/sdb1

Periksa:

sudo fdisk -l /dev/sdb

Haruskah menghasilkan sesuatu seperti:

Device     Start      End  Sectors  Size Type
/dev/sdb1   2048 15663070 15661023  7.5G EFI System

Pasang drive dan ekstrak iso ke atasnya, ganti 'name-of-iso' dengan nama file sebenarnya dari iso yang Anda unduh sebelumnya

sudo mount -t vfat /dev/sdb1 /mnt
sudo 7z x name-of-iso -o/mnt/

Lepas

sudo umount /mnt

Sekarang reboot & nikmati Ubuntu ^ _ ^

( Di sinilah saya awalnya belajar melakukan ini.)

Zanna
sumber
3
Melakukannya ... tetapi ini membutuhkan paket p7zip-full, Akan lebih baik jika Anda menambahkan melakukan hal yang sama dengan tarjawaban Anda.
Severus Tux
3
Wow! Terima kasih banyak . Itu bekerja dengan baik. partisi terlihat bersih . Akan lebih baik jika Anda menambahkan mengekstraksi menggunakan alat inbuilt seperti tardalam jawaban Anda. (atau bahkan menambahkan bahwa 7z tersedia di p7zip-full)
Severus Tux
2
Saya memperbaiki postingan ini karena ini adalah deskripsi yang bagus yang menunjukkan 'semua' langkah-langkah dasar :-) Tetapi ada juga alat yang membuat hal-hal secara otomatis untuk pengguna yang malas ;-)
sudodus
3
Ini adalah satu-satunya yang bekerja untuk saya di bawah 16,04. Terima kasih! Aplikasi default merusak media muy dengan masalah ukuran blok yang salah, dan membuat sistem file read-only yang saya tidak dapat kembalikan karena masalah ukuran blok. Metode ini memungkinkan pengguna untuk menikmati semua ruang kosong yang tersisa.
user334639
3
USB-creator Ubuntu 17.04 (Startup Disk Creator) "merusak" drive USB saya setiap saat. Dan langkah demi langkah di sini adalah satu-satunya cara untuk mengembalikannya ke kondisi normal yang dapat ditulis. gparted tidak bisa.
isync
39

Inilah cara saya memecahkan masalah mendapatkan kesalahan ini ketika mencoba memformat ulang USB setelah menggunakannya sebagai media instalasi:

  • Pertama buka Aplikasi Disk di bawah Aplikasi> Disk
  • Pilih pen drive yang dapat di-boot.
  • Akan ada menu opsi di sudut kanan atas
  • Pilih opsi Format drive ( CTRL+ F)
  • Munculan akan ditampilkan. Pilih 0 partisi dan format disk
  • Sekarang disk akan kosong tetapi tidak akan dikenali oleh sistem. Tetapi Anda dapat melihat pada Aplikasi Disk.
  • Pilih pen drive dan format ulang. Sekarang flashdisk dapat dideteksi oleh sistem apa pun.

Jawaban yang diterima terlalu rumit untuk digunakan, karena diperlukan banyak pengetikan dan mengingat nama disk tertentu (jika tidak, Anda mungkin berakhir dengan masalah serius). Milik saya sangat mudah diimplementasikan.

Gopal Prasad
sumber
2
+1, tapi saya pikir pertanyaan ini memiliki judul yang menyesatkan - saya telah mengeditnya. Jawaban yang diterima untuk pertanyaan ini adalah metode pembuatan media instalasi , seperti yang diminta OP, tidak hanya memformat drive (dan Anda harus selalu memastikan Anda memilih perangkat yang tepat ketika memformat, tidak peduli metode apa yang Anda gunakan!)
Zanna
Ok, terima kasih sudah memberi tahu saya. Sekarang Sesuai dengan judul yang diedit, Anda dapat menggunakan pembuat disk startup untuk membuat media instalasi baru setelah memformat drive.
Gopal Prasad
Terima kasih. Menu di sudut kanan atas tidak jelas ditemukan.
Tor Klingberg
16

Ditemukan bahwa masalahnya adalah karena bug di usb-creator-gtk. Ini sedang mengatur ukuran blok yang tidak tepat selama pembuatan media yang dapat di-boot.

Jika bug ini memengaruhi Anda, Anda dapat menandainya di sini: https://bugs.launchpad.net/ubuntu/+source/usb-creator/+bug/1589028

Severus Tux
sumber
1
Pada komentar terakhir di situs web di atas, Ada pengguna bernama EoflaOE, dan di bawahnya, Anda melihat komentar dan apa yang mempengaruhi saya dan apa yang saya sarankan sehingga Anda tidak pernah mencoba merusak USB Anda seperti terakhir kali. Jika Anda perlu membuat USB sendiri yang dapat di-boot, Gunakan Rufus atau Universal USB Creator hingga bug ini diperbaiki.
Eofla
14

Ini jauh lebih mudah. Ganti saja /dev/sdddengan alamat perangkat Anda. Ini dapat ditemukan di utilitas Disk atau Gparted .

sudo dd if=/dev/zero of=/dev/sdd bs=2048 count=32

Anda kemudian dapat menggunakan Startup Disk Creator untuk membakar gambar ke drive.

cara masa depan
sumber
7

Saya menggunakan UNetbootin di Ubuntu (versi lama dan 16.04) dan berfungsi dengan baik di PC saya. Inilah tautan untuk info lebih lanjut.

sudo apt-get install unetbootin
bagasi96
sumber
3
terima kasih atas minat Anda, tetapi pertanyaan saya bukan "alternatif apa pun", pertanyaan saya adalah "Mengapa metode itu tidak berfungsi seperti yang diharapkan?". Saya juga akan menghargai metode lain yang tidak melibatkan alat pihak ke - 3 .
Severus Tux
7
@SeverusTux Sebenarnya, unetbootin tidak lebih dari pihak ketiga. Ini tersedia melalui apt-get.
mchid
Tidak mengizinkan citra disk (multi-partisi) dipasang, bersikeras satu partisi sudah terpasang.
Gringo Suave
5

Coba dd if=/path/to/my/ubuntuiso/ubuntu.iso of=/dev/sdb cara ini jangan pernah gagal saya. (Catatan b bukan b1 di akhir - akan menghancurkan partisi lain jika ada)

Apakah Anda memeriksa apakah ISO rusak?

Juga melakukan ini dari TTY saat tidak masuk dalam lingkungan grafis dapat membantu melacak masalah.

Sunting: alih-alih menggunakan ISO yang dapat Anda gunakan /dev/nulluntuk menimpa tabel partisi.

Carlo P.
sumber
seperti ini: dd if = / dev / null of = / dev / sdb? Ini sepertinya tidak melakukan apa
quantumbutterfly
2
/dev/nullmenunjuk ke 'tidak ada' dan digunakan untuk output, tetapi /dev/zeromenghasilkan karakter nol (ascii 0).
sudodus
2

Keluhan tentang ukuran blok mungkin disebabkan oleh bug dalam perangkat lunak yang membaca iso9660sistem file. Versi baru dari gparteddirilis dan tersedia setidaknya di Ubuntu 17.10, di mana bug ini tergencet.


Anda dapat menggunakannya mkusbuntuk mengkloning drive. Metode ini tidak sensitif terhadap konten drive, sehingga sangat dapat diandalkan.

Ini juga sangat aman, karena mkusb 'membungkus sabuk pengaman' dengan ddperintah yang kuat namun berbahaya . Drive target ditampilkan dengan sangat jelas dan Anda memiliki pos pemeriksaan akhir, tempat Anda dapat memeriksa ulang, bahwa Anda akan menginstal ke drive yang benar (dan menghindari kesalahan).

Lihat tautan ini: https://help.ubuntu.com/community/mkusb

Jika masih tidak berfungsi, Anda dapat mencoba sesuai dengan tautan berikut,

Tidak dapat memformat drive usb saya. Saya sudah mencoba dengan mkdosfs dan gparted - Analisis masalah

Harap perhatikan bahwa Anda tidak perlu memulai dengan memformat, karena mkusb akan menimpa konten drive sebelumnya. Anda dapat langsung dan

  • instal sistem operasi dari file iso (atau file gambar) atau
  • mengembalikan drive ke perangkat penyimpanan standar
sudodus
sumber
1

masalah yang muncul dengan jawaban yang dipilih : Pen drive sekarang tidak terlihat saat memasukkan. (Saya menggunakan Lubuntu 16.04 64-bit) Solusi: Buka Disksutilitas untuk memasangnya.

In Lubuntu: Start menu > Preferences > Disks.

Apa yang bekerja dengan jawaban yang dipilih, adalah bahwa kita kembali ke cara lama yang baik dari USB drive untuk mendapatkan ISO yang dapat di-boot tertulis padanya dan masih tetap menjadi USB drive yang dapat ditulis dengan ruang yang tersisa untuk menyimpan file lain (dari OS lain yang ada di mana kami tidak menjalankan OS langsung). Dengan Startup Disk Creator16,04, itu menghapus USB, membuat partisi read-only mirip dengan CD, membuat bagian tersisa dari USB tidak dialokasikan (jadi drive 32GB menjadi drive read-only 900mb), dan saya tidak mampu membuat partisi sekunder di ruang yang tidak terisi.

Pembaruan: Unetbootin tampaknya melakukan pekerjaan itu, pen drive tetap terlihat, tidak bersembunyi saat memasukkan, dan bagian disk lainnya tetap tersedia untuk menyimpan data lain. TETAPI disk TIDAK dikenali sebagai USB bootable ketika saya mem-boot laptop saya! Saya menggunakan UNetBootin versi Ubuntu.

Nikhil VJ
sumber
1. Anda mungkin lebih beruntung, jika Anda menginstal Unetbootin dari PPA pengembang, karena versi di repositori Ubuntu mungkin terlalu lama (tidak mutakhir untuk mengatasi versi baru Ubuntu); 2. Pesan kesalahan dalam judul pertanyaan ini adalah karena perangkat lunak tidak memahami sistem file iso9660 dari boot drive yang dikloning; 3. Dan jika Anda memiliki masalah untuk mengembalikan drive ke perangkat penyimpanan standar, Anda dapat menggunakan mkusb sesuai dengan tautan di jawaban saya. (Mungkin juga dengan gparted dan Disk, tapi mungkin lebih sulit.)
sudodus
0

Saya memiliki masalah yang sama persis, bahkan pada SSD baru. Saya menggunakan Linux Mint 18.1 dan Ubuntu 16.04 LTS ISO versi. Tidak peduli berapa kali saya mengunduh ulang ISO, menulis ulang ISO dan melakukan semua langkah yang disarankan di atas untuk mengatasi kesalahan yang disebutkan, itu tidak akan hilang. Anehnya saya memiliki Mint 18.1 diinstal dan ingin melakukan instalasi baru tetapi kemudian menemui kesalahan. Saya bahkan menggunakan stik & SSD yang sama untuk menginstal Windows 10, kemudian menulis ulang disk USB yang sama LAGI dengan Ubuntu 16.04 / Mint 18.1 dan instal gagal. Pendapat saya adalah bahwa ada kesalahan dengan file ISO atau perangkat keras khusus saya tidak kompatibel. Saya menghabiskan beberapa jam dalam hidup saya.

** SOLUSI: Unduh Ubuntu 17.04 ISO & diinstal. Bekerja dengan baik pada perangkat keras yang sama persis, drive / stick USB yang sama di mana Ubuntu 16.04 tidak memilikinya. ****

Grové Erasmus
sumber
0

Rupanya kesalahan terletak pada pembacaan sebagian drive yang salah dan bukan perintah dd atau program Startup Disk Creator

Laporan Bug Debian untuk berpisah: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=788808

Penanganan Masalah: Jika Anda menggunakan fdisk alih-alih berpisah maka Anda akan melihat partisi yang benar. Gunakan fdisk sebagai ganti parted sampai bug parted diperbaiki.

tamu
sumber
0

Sangat disayangkan bahwa banyak dari utilitas disk GUI ini tidak hanya akan memungkinkan Anda untuk menghapus tabel partisi dari USB, bukan hanya meminta dengan kesalahan bodoh seperti:

Physical block size is 2048 bytes, but Linux says it is 512 bytes

Dialog kesalahan itu harus digabungkan dengan pertanyaan ini:

Would you like delete the partition table on this device (all data will be lost)?

Karena tidak melakukan ini, Anda dapat langsung melakukannya sendiri dengan perintah ini:

sudo sgdisk --zap-all /dev/sd?

Pastikan dua hal sebelum Anda melakukan perintah di atas:

  1. Pastikan terminal Anda masuk ke komputer yang Anda pikir itu.
  2. Pastikan jalur perangkat sudah benar (lihat tanda tanya pada perintah di atas, Anda perlu mengubahnya ke jalur perangkat yang benar).

Seperti yang disebutkan orang lain, Anda dapat mengetahui jalur perangkat dengan:

sudo fdisk -l

Setelah ini, Anda mungkin dapat melanjutkan dengan menggunakan utilitas yang Anda gunakan saat Anda mendapatkan kesalahan ini.

BTW, solusi perintah dd untuk masalah ini terlalu lambat untuk kebutuhan saya. Yang saya benar-benar ingin lakukan adalah menyingkirkan kesalahan itu, tanpa menunggu pada dd ke nol seluruh drive.

Lonnie Best
sumber