ไม่สามารถลบพาร์ติชันไดรฟ์ USB (ข้อผิดพลาดขนาดบล็อก)


123

ฉันไม่สามารถฟอร์แมต / ลบพาร์ติชันในไดรฟ์ USB Sandisk Cruzer Force 32 GB ของฉันได้ ฉันได้รับข้อผิดพลาดต่อไปนี้เมื่อทำการลบพาร์ติชั่นใด ๆ ของมัน

`Error deleting partition /dev/sdd2: Command-line `parted --script "/dev/sdd" "rm 2"' exited with non-zero exit status 1: Warning: The driver descriptor says the physical block size is 2048 bytes, but Linux says it is 512 bytes.
(udisks-error-quark, 0)

มีวิธีใดบ้างที่ฉันสามารถฟอร์แมตไดรฟ์ทั้งหมดของฉันและแปลงเป็นพาร์ติชันขนาดใหญ่เดียวได้หรือไม่ ฉันยังไม่พบวิธีแก้ไขข้อผิดพลาดนี้ที่นี่ดังนั้นฉันจึงคิดว่าจะถามอีกครั้ง


ฉันใช้ดิสก์ GParted ดูเหมือนจะไม่ตรวจจับ / แสดงไดรฟ์ USB ของฉัน
น้ำหวาน

4
คุณลองเช็ดมันให้สะอาดก่อนdd if=/dev/zero of=/dev/sdd bs=2048หรือไม่? ทำให้แน่ใจว่าคุณใช้ / dev / sdd เท่านั้นหากนั่นคือสิ่งที่มันเป็น!
Daniel

ยอดเยี่ยมมันทำงานได้อย่างสมบูรณ์ ฉันจะจำได้ว่าคำสั่งดังกล่าว :)
น้ำทิพย์

คำตอบ:


173

ปัญหาที่คุณกำลังอธิบายเกิดจากเครื่องมืออุปกรณ์ระดับต่ำ (เช่น dd) การเขียนบล็อกที่ขนาดไม่ถูกต้องลงบนอุปกรณ์โดยตรง

ในการแก้ไขปัญหานี้คุณต้องเขียนบล็อคอุปกรณ์อีกครั้งตามขนาดที่เหมาะสม สามารถทำได้ด้วยวว ตรวจสอบอุปกรณ์เอาต์พุตของคุณอีกครั้งก่อนรันคำสั่ง

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

เมื่อคำสั่ง dd เสร็จสิ้นคุณควรจะสามารถเข้าถึงอุปกรณ์ของคุณผ่าน gparted


มันฟังขวาเพื่อให้ แต่ก็ยังไม่ได้ทำงานสำหรับฉัน :( มีวิธีการแก้ไขได้เพียงใด?
เอริค Fossum

7
ผมสามารถที่จะแก้ไขข้อผิดพลาดนี้โดยไม่ต้องเขียนอุปกรณ์ทั้งฉันเพิ่งเพิ่มในตอนท้ายของคำสั่งแล้ววิ่งcount=32 ddวิธีนี้เร็วกว่ามาก ;-)
ผู้ชายชาวบราซิลนั่น

5
@Lee มันจะเขียนได้ 32 บล็อกเท่านั้น (ในกรณีนี้ 32 บล็อก 2048 ไบต์หรือ 68 KB) แทนที่จะเขียนแต่ละไบต์บนอุปกรณ์ ฉันเชื่อว่าเพียงเขียนทับตารางพาร์ทิชันหรือพื้นที่เทียบเท่าที่จุดเริ่มต้นของอุปกรณ์จะพอเพียง ฉันระบุ 32 บล็อกเพื่อให้แน่ใจ
Guy ชาวบราซิลนั่น

1
ทำงานได้ แต่ฉันต้องรีบูตคอมพิวเตอร์เพื่อให้สามารถใช้งานได้หลังจากใช้บรรทัดคำสั่ง
Danyl Bekhoucha

2
@ gooseberry ฉันไม่คิดว่า "การเขียนบล็อกที่ผิดขนาด" เป็นไปได้ ข้อแตกต่างควรเป็นความเร็ว (และในกรณีของหน่วยความจำแฟลชสวม) คำสั่งอาจใช้งานได้ แต่คำอธิบายนั้นดูไม่ถูกต้อง
มาร์ติ

26

คุณสามารถลองใช้งานได้ตลอดเวลา fdisk

เปิดเทอร์มินัล ( Ctl+ ALt+ t) และพิมพ์

sudo fdisk /dev/sdy

โดยที่/dev/sdy= ไฟล์อุปกรณ์สำหรับแฟลชไดรฟ์ของคุณ เมื่อคุณfdiskเปิดให้พิมพ์pเพื่อแสดงรายการตารางพาร์ทิชันเมื่อคุณรู้ว่ามันอยู่ที่ไหนคุณสามารถใช้d #เพื่อลบมัน (#= พาร์ติชัน; ตัวอย่างd 1, d 2) wเขียนตารางพาร์ทิชันกลับไปที่ดิสก์และqออกmเพื่อขอความช่วยเหลือ)

หากfdiskล้มเหลวฉันจะใช้dd (โปรดใช้อย่างระมัดระวังเพราะมันไม่ได้รับชื่อเล่นโดยไม่มีเหตุผล)

sudo dd if=/dev/zero of=/dev/sdy bs=512 count=1

แน่นอน/dev/sdyควรเปลี่ยนด้วยอุปกรณ์จริงสำหรับแฟลชไดรฟ์ของคุณจะทำเพื่อคุณ คุณสามารถเพิ่ม count = number เพื่อเขียนค่าศูนย์ไปยังดิสก์ได้มากขึ้นหรือละเว้นทั้งหมดเพื่อเขียนทับดิสก์ทั้งหมด ไม่จำเป็นต้องพูดว่าถ้าคุณทำเช่นนี้คุณจะสูญเสียไฟล์ใด ๆ ที่อาจถูกจัดเก็บไว้ในดิสก์อย่างถาวร


2
ทำงานได้อย่างสมบูรณ์แบบ ทำsudo fdisk /dev/sdaเช่นนั้นทันทีที่พิมพ์dสองสามครั้งเพื่อลบแต่ละพาร์ติชันในทางกลับกันแล้วwเขียนการเปลี่ยนแปลงของฉัน จากนั้นนำไดรฟ์ USB ออกแล้วนำกลับมาอีกครั้งและใช้ตัวจัดการดิสก์เพื่อสร้างพาร์ติชัน Fat32
Robin Winslow

คืออะไรdd's ชื่อเล่น?
Kolob Canyon

มันยืนหยัดต่อdick deathผู้สังหารอสูรหรือไม่?
Kolob Canyon

ดี! ไม่ต้องการนักฆ่าอสูร: |
Kolob Canyon

เห็นได้ชัดว่ามันเป็นชื่อเล่นหลังจาก Dee Dee น้องสาวของ
แล็ก

12
wipefs -a /dev/your-device

มันจะลบพาร์ติชันทั้งหมดในดิสก์ของคุณ


2
คำสั่งนี้ช่วยฉันในกรณีที่ฉันไม่สามารถฟอร์แมตไดรฟ์ USB ระวังเมื่อเลือกเส้นทางอุปกรณ์ของคุณ ตรวจสอบอีกครั้ง!
Bakhtiyor

1
อัปเดตสำหรับคำตอบที่ง่ายที่สุดที่ใช้งานได้
knocte

4

ววนั้นทรงพลัง แต่ก็อันตราย

ddเป็นเครื่องมือที่ทรงพลัง แต่ก็อันตรายมาก มันใช้งานได้ดีในการล้างส่วนแรกของไดรฟ์ USB เพื่อลบข้อมูลใด ๆ ที่อาจทำให้เครื่องมือที่คุณต้องการใช้สับสน แต่ddทำในสิ่งที่คุณบอกให้ทำโดยไม่มีคำถามดังนั้นหากคุณบอกให้ลบรูปภาพครอบครัวของคุณ ... และข้อผิดพลาดในการพิมพ์เล็กน้อยก็เพียงพอที่จะเขียนทับไดรฟ์อื่นแทนไดรฟ์ USB ที่คุณตั้งใจจะเขียนทับ

ใช่คุณสามารถใช้ddถ้าคุณรู้ว่าคุณกำลังทำอะไร แต่โปรดตรวจสอบและตรวจสอบอีกครั้งว่าบรรทัดคำสั่งด้วยddถูกต้อง

mkusb คาดเข็มขัดนิรภัยรอบ ๆ dd

mkusbจัดเตรียมอินเทอร์เฟซผู้ใช้แบบกราฟิกพร้อมจุดตรวจสอบเพื่อช่วยคุณระบุไดรฟ์เป้าหมายและตรวจสอบอีกครั้งว่าคุณกำลังเช็ดไดรฟ์ที่ถูกต้อง

มีตัวเลือกเมนูเพื่อล้างเมกะไบต์แรก (จริง ๆ mibibyte) ซึ่งโดยปกติจะเพียงพอหรือทั้งไดรฟ์ซึ่งเป็นกระบวนการที่ช้าและมีประโยชน์เฉพาะในกรณีพิเศษเช่นเมื่อ pendrive ช้า (เช่นน้อยกว่า ครึ่งหนึ่งของความเร็วดั้งเดิม)

ป้อนคำอธิบายรูปภาพที่นี่

ดูลิงก์เหล่านี้สำหรับรายละเอียดวิธีการติดตั้งและใช้ mkusb เวอร์ชัน 12 alias mkusb-dus

help.ubuntu.com/community/mkusb

mkUSB-เริ่มต้นอย่างรวดเร็ว-manual.pdf


3

ปัญหานี้เกี่ยวข้องกับดิสก์ที่สามารถบู๊ตได้จาก UEFI ฉันสร้างดิสก์ USB ที่สามารถบู๊ตได้บ่อยจากนั้นฉันต้องการมันสำหรับการจัดเก็บ แต่ไม่สามารถลบพาร์ติชันได้

คำสั่งเดียวด้านล่างทำตารางพาร์ทิชันเพื่อให้ฉันสามารถทำสิ่งต่อไปที่ฉันต้องการด้วยดิสก์ USB

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

แทนที่ ??? ด้วยตัวระบุที่เหมาะสม (เช่น sdc) ที่สอดคล้องกับดิสก์ USB ที่จะทำการล้าง มันสามารถพบได้โดย -

sudo parted -l

หรือ

sudo fdisk -l

หรือ

ใช้ยูทิลิตี้ดิสก์


นี่คือคำตอบที่ดีที่สุด ดูที่1065719/256054ด้วย
Lonnie Best

2

ใช้fdiskคำสั่งเพื่อลบพาร์ติชันและสร้างอีกครั้ง

เรียกใช้คำสั่ง:

sudo fdisk /dev/sdxY  

(ในกรณีของฉันพาร์ทิชันคือ 'sdb1' - แทนที่ด้วยชื่อที่ถูกต้อง)

คำสั่ง ( mเพื่อขอความช่วยเหลือ): หากdต้องการลบพาร์ติชันให้เลือก 1 หรือ 2

พิมพ์wเพื่อบันทึกและออก

ตอนนี้นำ USB ออกและเชื่อมต่ออีกครั้งเพื่อตรวจสอบการเปลี่ยนแปลง

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.