Kích thước khối vật lý của đơn vị là 2048 byte, nhưng Linux cho biết đó là 512, khi định dạng USB - Cách tạo USB có thể khởi động mà không gặp lỗi này


95

Tôi đang sử dụng:

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

Để tạo các ổ USB Ubuntu có khả năng khởi động trên các phiên bản Ubuntu cũ hơn. Nó đã hoạt động hoàn hảo. Đôi khi tôi sử dụng Startup Disk Creatorchương trình, hoạt động tốt.

Nhưng khi tôi sử dụng các phương pháp tương tự trên Ubuntu 16.04 LTS, tôi nhận được một số cảnh báo trong khi định dạng nó sau đó.

Phương tiện cài đặt hoạt động như mong đợi, nhưng khi tôi cố gắng định dạng thanh USB đó sau khi hoàn thành công việc, tôi nhận được cảnh báo sau:

nhập mô tả hình ảnh ở đây

Việc phân vùng Pendrive đó trông lạ:

nhập mô tả hình ảnh ở đây

Và nó cũng cho thấy con số 16GB của tôi là 64GB.

Sau khi vật lộn rất nhiều với Gparted, bằng cách nào đó tôi sẽ định dạng nó. Nhưng tại sao nó lại xảy ra như thế này ?? Có phương pháp nào tốt hơn để tạo Ubuntu có thể khởi động trong 16.04 không?

EDIT : có một câu hỏi liên quan ở đây . Nhưng câu hỏi của tôi không phải là về cách định dạng nó đúng. Câu hỏi của tôi là "Làm thế nào để tạo USB có thể khởi động mà không gặp lỗi đó." & "Wht là nguyên nhân gây ra lỗi đó"


đối với UEFI Tôi sử dụng các lệnh sgdisk - Tôi đã tạo 6 bản phân phối USB trực tiếp theo cách này trong vài tháng qua và nó hoạt động rất tốt đối với tôi
Zanna

@Zanna vui lòng giải thích việc sử dụng sgdisk
Severus Tux

Bạn có chắc chắn đó là thiết bị chính xác? Nếu nó phải là 16GB thì có lẽ đó là / dev / sdc hoặc thứ gì khác. Rất nhiều thẻ sd là 64GB và những thẻ này thường không hoạt động để khởi động. Ổ đĩa của bạn sẽ không luôn luôn hiển thị giống nhau (sdb sdc) và tất cả phụ thuộc vào ổ đĩa nào được gắn đầu tiên.
mchid

1
Tôi định dạng USB với mkfssau một ISO. Hoạt động bất kể phương pháp tạo USB.
Đại

Câu trả lời:


118

Phương pháp dòng lệnh để tạo USB trực tiếp cho các hệ thống UEFI

Xin lưu ý: điều này sẽ xóa tất cả dữ liệu trên thiết bị đích.

Cài đặt điều kiện tiên quyết:

sudo apt-get install p7zip-full

Giả sử USB đích là /dev/sdb

( vui lòng kiểm tra trước bằng lsblkhoặc gnome-diskshoặc sudo fdisk -lchắc chắn bạn biết bạn đang định dạng gì)

Đảm bảo thiết bị không có hệ thống tập tin được gắn và ngắt kết nối thiết bị nếu cần, ví dụ:

udisksctl unmount -b /dev/sdb1

Phá hủy bảng phân vùng hiện có:

sudo sgdisk --zap-all /dev/sdb

Tạo GPT mới:

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

Định dạng là FAT32:

sudo mkfs.vfat -F32 /dev/sdb1

Kiểm tra nó:

sudo fdisk -l /dev/sdb

Nên xuất ra một cái gì đó như:

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

Gắn ổ đĩa và trích xuất iso vào nó, thay thế 'name-of-iso' bằng tên tệp thực tế của iso bạn đã tải xuống trước đó

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

Vô song

sudo umount /mnt

Bây giờ khởi động lại và tận hưởng Ubuntu ^ _ ^

( Đây là nơi ban đầu tôi học cách làm điều này.)


3
Làm điều đó ... nhưng điều này cần các gói p7zip-full, Sẽ tốt hơn nếu bạn thêm làm tương tự với tarcâu trả lời của mình.
Severus Tux

3
ồ Cảm ơn rât nhiều . Nó hoạt động tốt. vách ngăn trông sạch sẽ . Sẽ là tốt nhất nếu bạn thêm trích xuất bằng các công cụ sẵn có như tartrong câu trả lời của bạn. (hoặc thậm chí thêm rằng 7z có sẵn trong p7zip-full)
Severus Tux

2
Tôi ủng hộ bài đăng này vì đây là một mô tả hay hiển thị 'tất cả' các bước cơ bản :-) Nhưng cũng có những công cụ tự động tạo mọi thứ cho người dùng lười biếng ;-)
sudodus

3
Đây là người duy nhất làm việc cho tôi dưới 16.04. Cảm ơn! Ứng dụng mặc định làm hỏng phương tiện muy với vấn đề kích thước khối sai và tạo ra một hệ thống tệp chỉ đọc mà tôi không thể hoàn nguyên do vấn đề kích thước khối. Phương pháp này cho phép người dùng tận hưởng tất cả không gian trống còn lại.
dùng334639

3
Trình tạo usb của Ubuntu 17.04 (Startup Disk Creator) "làm hỏng" ổ USB của tôi mỗi lần. Và từng bước này ở đây là cách duy nhất để hoàn nguyên nó về trạng thái có thể ghi bình thường. gparted không thể.
isync

39

Đây là cách tôi giải quyết vấn đề nhận lỗi này khi cố gắng định dạng lại USB sau khi sử dụng làm phương tiện cài đặt:

  • Trước tiên hãy mở Ứng dụng Đĩa trong Ứng dụng> Đĩa
  • Chọn ổ đĩa bút khởi động.
  • Sẽ có một menu tùy chọn ở góc trên bên phải
  • Chọn tùy chọn Ổ đĩa định dạng ( CTRL+ F)
  • Một cửa sổ bật lên sẽ được hiển thị. Chọn 0 phân vùng và định dạng đĩa
  • Bây giờ đĩa sẽ trống nhưng nó sẽ không được hệ thống nhận ra. Nhưng bạn có thể thấy trên Ứng dụng Đĩa.
  • Chọn ổ đĩa bút và định dạng lại nó. Bây giờ các ổ đĩa có thể được phát hiện bởi bất kỳ hệ thống.

Câu trả lời được chấp nhận là quá phức tạp để sử dụng, vì nó yêu cầu rất nhiều cách gõ và ghi nhớ tên đĩa cụ thể (nếu không bạn có thể gặp vấn đề nghiêm trọng). Của tôi là siêu dễ dàng để thực hiện.


2
+1, nhưng tôi nghĩ câu hỏi này có tiêu đề sai lệch - tôi đã chỉnh sửa nó. Câu trả lời được chấp nhận cho câu hỏi này là phương pháp tạo phương tiện cài đặt , như OP yêu cầu, không chỉ đơn giản là định dạng ổ đĩa (và bạn luôn phải chắc chắn rằng mình đang chọn đúng thiết bị khi định dạng, bất kể bạn sử dụng phương pháp nào!)
Zanna

Ok, cảm ơn đã cho tôi biết. Bây giờ Theo tiêu đề đã chỉnh sửa của bạn, Bạn có thể sử dụng trình tạo đĩa khởi động để tạo phương tiện cài đặt mới sau khi định dạng ổ đĩa.
Gopal Prasad

Cảm ơn bạn. Menu ở góc trên bên phải không rõ ràng để tìm.
Tor Klingberg

16

Nó được tìm thấy rằng vấn đề là do một lỗi trong usb-creator-gtk. Nó đang đặt kích thước khối không phù hợp trong quá trình tạo phương tiện có thể khởi động.

Nếu lỗi này ảnh hưởng đến bạn, bạn có thể đánh dấu nó tại đây: https://bugs.launchpad.net/ubfox/+source/usb-creator/+orms/1589028


1
Trong bình luận cuối cùng trên trang web trên, có người dùng tên EoflaOE và bên dưới nó, bạn thấy các bình luận và những gì ảnh hưởng đến tôi và những gì tôi đã đề xuất để bạn không bao giờ cố làm hỏng USB của mình như lần trước. Nếu bạn cần tạo USB có thể khởi động của riêng mình, hãy sử dụng Rufus hoặc Universal USB Creator cho đến khi lỗi này được khắc phục.
Eofla

14

Điều này đã dễ dàng hơn nhiều. Chỉ cần thay thế /dev/sddbằng địa chỉ thiết bị của bạn. Điều này có thể được tìm thấy trong tiện ích Đĩa hoặc Gparted .

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

Sau đó, bạn có thể sử dụng Startup Disk Creator để ghi hình ảnh vào ổ đĩa.


7

Tôi sử dụng UNetbootin trên Ubuntu (cả phiên bản cũ hơn và 16.04) và nó hoạt động tốt trên PC của tôi. Đây là liên kết để biết thêm.

sudo apt-get install unetbootin

3
cảm ơn vì sự quan tâm của bạn, nhưng câu hỏi của tôi không phải là "bất kỳ lựa chọn thay thế nào?" câu hỏi của tôi là "Tại sao những phương pháp đó không hoạt động như mong đợi?". Tôi cũng sẽ đánh giá cao bất kỳ phương pháp nào khác không liên quan đến các công cụ của bên thứ 3 .
Severus Tux

7
@SeverusTux Trên thực tế, unetbootin không phải là bên thứ 3 hơn bất kỳ thứ gì khác. Nó có sẵn thông qua apt-get.
mchid

Không cho phép cài đặt hình ảnh đĩa (đa phân vùng), nhấn mạnh một phân vùng đã được gắn.
Gringo Suave

5

Hãy thử dd if=/path/to/my/ubuntuiso/ubuntu.iso of=/dev/sdb cách này không bao giờ thất bại với tôi. (Lưu ý b không phải b1 ở cuối - sẽ phá hủy các phân vùng khác nếu có)

Bạn đã kiểm tra nếu ISO bị hỏng?

Cũng làm điều này từ TTY trong khi không đăng nhập vào môi trường đồ họa có thể giúp theo dõi vấn đề.

Chỉnh sửa: thay vì sử dụng ISO, bạn có thể sử dụng /dev/nullđể ghi đè lên bảng phân vùng.


như thế này: dd if = / dev / null of = / dev / sdb? Điều này dường như không làm gì cả
quantumbutoston

2
/dev/nulltrỏ đến 'nothing' và được sử dụng cho đầu ra, nhưng /dev/zerotạo ra các ký tự 0 (ascii 0).
sudodus

2

Khiếu nại về kích thước khối có thể là do lỗi trong phần mềm đọc iso9660hệ thống tệp. Một phiên bản mới gpartedđược phát hành và có sẵn ít nhất trong Ubuntu 17.10, trong đó lỗi này đã bị xóa.


Bạn có thể sử dụng mkusbđể sao chép ổ đĩa. Phương pháp này không nhạy cảm với nội dung của ổ đĩa, vì vậy nó rất đáng tin cậy.

Nó cũng rất an toàn, bởi vì mkusb 'quấn một vành đai an toàn' xung quanh ddmệnh lệnh mạnh mẽ nhưng nguy hiểm . Ổ đĩa đích được hiển thị rất rõ ràng và bạn có một điểm kiểm tra cuối cùng, nơi bạn có thể kiểm tra lại, rằng bạn sẽ cài đặt đúng ổ đĩa (và tránh nhầm lẫn).

Xem liên kết này: https://help.ubfox.com/community/mkusb

Nếu nó vẫn không hoạt động, bạn có thể thử theo liên kết sau,

Không thể định dạng ổ đĩa USB của tôi. Tôi đã thử với mkdosfs và gparted - Phân tích vấn đề

Xin lưu ý rằng bạn không cần bắt đầu với định dạng, vì mkusb sẽ ghi đè lên nội dung trước đó của ổ đĩa. Bạn có thể đi thẳng và

  • cài đặt hệ điều hành từ tệp iso (hoặc tệp hình ảnh) hoặc
  • khôi phục ổ đĩa cho một thiết bị lưu trữ tiêu chuẩn

1

một vấn đề xuất hiện với câu trả lời đã chọn : Ổ đĩa bút hiện không thể nhìn thấy khi chèn. (Tôi đang sử dụng LubFi 16.04 64-bit): Mở Diskstiện ích để gắn kết.

In Lubuntu: Start menu > Preferences > Disks.

Điều đã làm việc với câu trả lời được chọn, đó là chúng ta quay lại cách tốt để ổ USB được ghi ISO có thể khởi động được và vẫn còn một ổ USB có thể ghi với dung lượng còn lại để lưu trữ các tệp khác (từ một HĐH hiện có khác chúng tôi không chạy hệ điều hành trực tiếp). Với Startup Disk Creatortính 16,04, nó được lau ra USB, tạo ra một phân vùng chỉ đọc giống như một đĩa CD, làm cho phần còn lại của USB unallocated (do đó, một ổ đĩa 32GB trở thành một 900MB read-only lái xe), và tôi đã không có thể tạo bất kỳ phân vùng thứ cấp trong không gian chưa phân bổ.

Cập nhật: Unetbootin dường như thực hiện công việc, ổ đĩa bút vẫn hiển thị, không ẩn khi chèn và phần còn lại của đĩa vẫn có sẵn để lưu trữ dữ liệu khác. NHƯNG đĩa KHÔNG được công nhận là USB có thể khởi động khi tôi khởi động máy tính xách tay của mình! Tôi đã sử dụng phiên bản Ubuntu của UNetBootin.


1. Bạn có thể gặp may mắn hơn, nếu bạn cài đặt Unetbootin từ PPA của nhà phát triển, vì phiên bản trong kho lưu trữ của Ubuntu có thể quá cũ (không cập nhật để đối phó với các phiên bản Ubuntu mới); 2. Thông báo lỗi trong tiêu đề của câu hỏi này là do phần mềm không hiểu hệ thống tệp iso9660 của ổ đĩa nhân bản; 3. Và nếu bạn gặp vấn đề trong việc khôi phục ổ đĩa cho thiết bị lưu trữ tiêu chuẩn, bạn có thể sử dụng mkusb theo liên kết trong câu trả lời của tôi. (Cũng có thể với gparted và Disks, nhưng có thể khó khăn hơn.)
sudodus

0

Tôi đã có cùng một vấn đề, ngay cả trên một ổ SSD hoàn toàn mới. Tôi đã sử dụng phiên bản Linux Mint 18.1 và Ubuntu 16.04 LTS. Cho dù tôi đã tải lại ISO bao nhiêu lần, viết lại ISO và thực hiện tất cả các bước được đề xuất ở trên để giải quyết lỗi được đề cập, nó sẽ không biến mất. Kỳ lạ là tôi đã cài đặt Mint 18.1 và muốn cài đặt mới nhưng sau đó gặp lỗi. Tôi thậm chí đã sử dụng cùng một thanh USB & SSD để cài đặt Windows 10, sau đó viết lại cùng một đĩa USB AGAION với Ubuntu 16.04 / Mint 18.1 và cài đặt thất bại. Ý kiến ​​của tôi là có lỗi với tệp ISO hoặc phần cứng cụ thể của tôi không tương thích. Tôi đã lãng phí vài GIỜ của cuộc đời mình.

** GIẢI PHÁP: Đã tải xuống Ubuntu 17.04 ISO & đã cài đặt. Hoạt động tốt trên cùng một phần cứng, cùng ổ / ổ USB trong đó Ubuntu 16.04 sẽ không có bất kỳ phần mềm nào. ****


0

Rõ ràng lỗi nằm ở việc đọc ổ đĩa không chính xác và không phải là lệnh dd hoặc chương trình Startup Disk Creator

Báo cáo lỗi Debian cho chia tay: https://bugs.debian.org/cgi-bin/ormsreport.cgi?orms=788808

Giải pháp thay thế: Nếu bạn sử dụng fdisk thay vì chia tay thì bạn sẽ thấy phân vùng chính xác. Sử dụng fdisk thay vì chia tay cho đến khi sửa lỗi.


0

Thật đáng tiếc khi nhiều tiện ích đĩa GUI này sẽ không cho phép bạn xóa bảng phân vùng khỏi USB, thay vì chỉ nhắc nhở với các lỗi ngu ngốc như:

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

Hộp thoại lỗi đó phải được kết hợp với câu hỏi này:

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

Vì nó không làm điều này, bạn có thể tự thực hiện ngay lập tức bằng lệnh này:

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

Hãy chắc chắn hai điều trước khi bạn thực hiện lệnh trên:

  1. Hãy chắc chắn rằng thiết bị đầu cuối của bạn được đăng nhập vào máy tính mà bạn nghĩ là nó.
  2. Đảm bảo đường dẫn thiết bị là chính xác (xem dấu hỏi trong lệnh anh ta ở trên, bạn cần thay đổi đường dẫn đó thành đường dẫn thiết bị chính xác).

Như những người khác đã đề cập, bạn có thể tìm ra đường dẫn thiết bị với:

sudo fdisk -l

Sau này, có lẽ bạn có thể tiến hành bằng cách sử dụng tiện ích bạn đang sử dụng khi gặp lỗi này.

BTW, các giải pháp lệnh dd cho vấn đề này quá chậm so với nhu cầu của tôi. Tất cả những gì tôi thực sự muốn làm là thoát khỏi lỗi đó, không phải chờ đợi dd để thoát ra khỏi toàn bộ ổ đĩa.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.