Một người bạn của tôi đã sử dụng thanh USB của tôi để cài đặt phiên bản OS X mới trên máy mac của anh ấy. Bây giờ tôi đã lấy lại được, tôi muốn xóa sạch nó (tôi sử dụng Linux). Tuy nhiên, tôi có một chút rắc rối khi làm như vậy. Điều đầu tiên tôi làm là viết một Fedora LiveCD cho nó, sử dụng dd
:
# dd if=Fedora.iso of=/dev/sdb
Điều này, tôi nghĩ, sẽ ghi đè lên bảng phân vùng nằm ở đầu thiết bị và do đó xóa các phân vùng mà trình cài đặt OS X đã tạo. Tuy nhiên, tôi đã sai, các phân vùng vẫn còn đó. Vì vậy, tôi đã tra cứu các bảng phân vùng GUID và nhận ra rằng chúng thêm các tiêu đề không chỉ ở phần đầu của thiết bị mà cả phần cuối. Tôi cũng vậy:
$ sudo dd if=/dev/zero of=/dev/sdb
dd: writing to `/dev/sdb': No space left on device
15687681+0 records in
15687680+0 records out
8032092160 bytes (8.0 GB) copied, 1354.82 s, 5.9 MB/s
Sau đó, tôi rút thanh USB ra khỏi máy tính và cắm lại. Chạy blkid
ngay bây giờ sẽ không mang lại phân vùng nào trên thiết bị. Tuy nhiên, sau khi viết lại hình ảnh Fedora, các phân vùng OS X đã trở lại:
$ sudo blkid
/dev/sdb1: LABEL="Fedora-17-x86_64-Live-Desktop.is" TYPE="iso9660"
/dev/sdb2: SEC_TYPE="msdos" LABEL="EFI" UUID="B368-CE08" TYPE="vfat"
/dev/sdb3: UUID="f92ff3eb-0250-303f-8030-7d063e302ccf" LABEL="Fedora 17" TYPE="hfsplus"
Tôi nghi ngờ điều này có liên quan đến bit MBR bảo vệ đó trong trang wikipedia ở trên. Làm sao để tôi thoát khỏi nó?
Cập nhật
Cuối cùng tôi đã chạy parted
và xóa GPT từ đó. Tôi đã nhận được những lời cảnh báo về một GPT bị hỏng (có thể là từ không) nhưng "chữ ký" đã ở đó.
Vì vậy, cuối cùng tôi đã khôi phục thanh USB của mình, nhưng vẫn tốt nếu ai đó có thể làm sáng tỏ chính xác những gì đã xảy ra, những chữ ký đó được lưu trữ ở đâu?
sync
và chắc chắn rằng ánh sáng xanh nhỏ trên cây gậy không nhấp nháy (tôi đợi ~ 20 giây).
blkid
sử dụng một tập tin bộ nhớ cache /etc/blkid.tab
. Nó có thể đã được hiển thị các giá trị lưu trữ. Để buộc đọc lại, bạn nên sử dụng sudo blkid -c /dev/null
.
sudo sfdisk -d /dev/sdb
hoặc một cái gì đó tương tự để đọc bảng phân vùng thực tế trên thiết bị.
fdisk
nó và nó cũng hiển thị các phân vùng bổ sung.
dd if=/dev/zero
lẽ phải ghi đè lên nó (và mọi thứ khác). Bạn đã kiểm tra trạng thái của thanh USB saudd
nhưng trước khi tháo nó ra khỏi máy tính?