วิธีที่เร็วที่สุดในการล้าง SSD ให้ล้างพาร์ติชั่นทั้งหมดสำหรับการแบ่งพาร์ติชั่นใหม่ใน Linux?


21

ฉันต้องการล้าง SSD ให้สะอาดในทุกพาร์ติชั่นและข้อมูลดังนั้นฉันจึงสามารถแบ่งพาร์ติชันได้อีกครั้ง (นี่ไม่ใช่เพื่อความปลอดภัย)

ฉันดูที่นี่sudo dd if=/dev/zero of=/dev/sdb bs=1Mแต่ถ้ามันเติมพาร์ติชั่นแต่ละตัวด้วยศูนย์ฉันไม่แน่ใจว่าสิ่งนี้จะทำอย่างไร

ฉันวางแผนที่จะเรียกใช้คำสั่งนี้บ่อยครั้งและฉันไม่ต้องการให้การเขียน SSD ของฉันหมดไป มีใครให้คำแนะนำในการแก้ปัญหานี้ได้บ้าง


1
การศึกษานี้: ATA ลบการรักษาความปลอดภัย ฉันไม่มีประสบการณ์กับกระบวนการดังนั้นนี่ไม่ใช่คำตอบเพียงคำใบ้ ใคร ๆ ก็สามารถเขียนคำตอบของคุณเองได้ถ้าคุณรู้ว่านี่เป็นวิธีที่ถูกต้อง
Kamil Maciorowski

18
เพื่อความปลอดภัยหรือเพียงเพราะคุณจำเป็นต้องแบ่งพาร์ติชัน?
grawity

ส่วนใหญ่เพียงเพื่อแบ่ง
IgDV

14
12 เกจปั๊มแอ็คชั่น และคุณรู้ว่ามีคนกำลังจะพูดไม่ช้าก็เร็ว!
ssimm

1
@ssimm - ความชอบของฉันคือบาบีคิวถ่าน
Daniel R Hicks

คำตอบ:


41

บน SSD:blkdiscardคุณสามารถตัดดิสก์ทั้งหมดหรือพาร์ทิชันที่ใช้ มันไม่ปลอดภัยมาก แต่ในทางปฏิบัติทันที (ดิสก์เพียงทำเครื่องหมายเซลล์ทั้งหมดว่าไม่ได้ใช้)

เพื่อความปลอดภัย:ใช้การเข้ารหัสดิสก์เต็มรูปแบบ ไม่ต้องเช็ดดิสก์ทั้งหมดหากมีการเข้ารหัสคุณต้องเช็ดพื้นที่ที่มีคีย์ของคุณ (เช่น 1–2 MiB แรกของทุกพาร์ติชันที่เข้ารหัส)

สำหรับการแบ่งพาร์ติชั่นอีกครั้งอย่าลบข้อมูลทั้งหมด คุณจะต้องทำลายระบบไฟล์โดยใช้wipefsจากนั้นขัด 1 MiB แรกของดิสก์เพื่อกำจัด bootloaders ที่เหลือ หลังจากคุณฟอร์แมตพาร์ติชั่นโดยใช้mkfsระบบปฏิบัติการจะถือว่าว่างเปล่าโดยสิ้นเชิง

(อันที่จริงแล้วบน Linux mkfs.ext4 จะตัดพาร์ติชั่นทั้งหมดโดยอัตโนมัติก่อนทำการฟอร์แมต)


6
สำหรับการแบ่งพาร์ติชันใหม่ทำไมไม่ลบพาร์ติชั่นเก่าและสร้างพาร์ติชั่นใหม่?
el.pescado

5
เพราะถ้าคุณสร้างพาร์ติชั่นใหม่ที่ตำแหน่งเดียวกัน (ตำแหน่งเริ่มต้น) คุณจะพบข้อมูลเดิมในพาร์ติชั่น! (แน่นอนว่ามักจะไม่เป็นปัญหาเพราะการจัดรูปแบบที่มีmkfsจะถังขยะเลยล่ะค่ะ แต่สถานการณ์ที่แปลกต่าง ๆ . ไม่เกิดขึ้น - wipefsมีอยู่เพราะมันเป็นสิ่งที่จำเป็น.)
grawity

4
@IgDV - man wipefsพูดว่าอะไร? (คำแนะนำ: ดูตัวอย่างแรกในส่วนตัวอย่างของหน้า man)
Timo

2
"คุณเพียงแค่ต้องเช็ดพื้นที่ที่มีคีย์ของคุณ" - บน SSD คีย์ก็น่าจะกู้คืนได้เช่นกัน TPM หรือรหัสป้องกันที่รัดกุมอาจเป็นตัวเลือกที่ดีกว่า blkdiscardมันก็ดีเหมือนกันเพราะมันจะสร้างปริศนาออกมาจากดิสก์ที่เหลือแม้ว่าผู้โจมตีจะรู้รหัส (สมมติว่าการแมปเก่าไม่สามารถกู้คืนได้เช่นกัน) "จากนั้นขัดดิสก์ 1 MiB แรกของคุณเพื่อล้างข้อมูล bootloaders ที่เหลือ" - ส่วนเพิ่มเติมจะใช้เป็นล้นเกิน 512B แรกเท่านั้น หากคุณล้าง 512B แรกคุณจะไม่ได้รับอันตรายจากส่วนที่เหลือของ 1M
Maciej Piechotka

1
@MaciejPiechotka: แต่น่าเสียดายที่ bootloaders (ด้วงโดยเฉพาะ) บางคนยังใช้พื้นที่หลังจาก MBR
grawity

14

ตามที่ Kamil Maciorowski กล่าวถึงวิธีที่ดีที่สุดในการลบการเขียนดิสก์ทั้งหมดอย่างน้อยที่สุดคือการใช้คำสั่ง 'การลบที่ปลอดภัย' ของ ATA นี้จะสั่งให้ฮาร์ดแวร์ที่จะทำเต็มรูปแบบเดียวเช็ดมากกว่าการเขียนทับเซลล์ซ้ำ ๆ shredเช่นเดียวกับเครื่องมือเช่น สิ่งนี้สามารถทำได้สำหรับดิสก์ทั้งหมดเท่านั้นหากคุณต้องการลบพาร์ติชันเลือกดูคำตอบ grawity ( blkdiscard)

การใช้คำสั่งที่แน่นอนนั้นขึ้นอยู่กับฮาร์ดแวร์

  • SSD ส่วนใหญ่จะใช้สัญญาณไฟฟ้าจำนวนมากเพื่อล้างชิปทั้งหมดในแบบที่ไม่มีอะไรเลย สิ่งนี้จะเกิดขึ้น (ปกติ) การเขียนสึกหรอ แต่เฉพาะในระดับต่ำสุดที่เป็นไปได้ (~ รอบการเขียนเดียว)

  • SSD ที่เข้ารหัสตัวเอง มักจะเช็ดคีย์การเข้ารหัสภายในชิปคอนโทรลเลอร์ (ทันทีทันใด) ไดรฟ์ที่เข้ารหัสตัวเองเข้ารหัสเสมอแม้อยู่นอกกรอบ (พร้อมคีย์เริ่มต้นจากโรงงาน) ดังนั้นการเช็ดกุญแจจะทำให้สับสนกับชิปแฟลชที่ไม่สามารถถอดรหัสได้แม้ว่าจะไม่มีการตั้งรหัสผู้ใช้ก็ตาม

  • ปั่นสนิมยากดิสก์จะทำฮาร์ดแวร์ที่ใช้เป็นศูนย์การเขียนของทุกภาคส่วนซึ่งเทียบเท่า (และเป็นเวลานาน) dd if=/dev/zeroการทำ

กระบวนการได้รับการบันทึกไว้ค่อนข้างดีที่นี่: https://www.thomas-krenn.com/en/wiki/SSD_Secure_Erase (ฉันใช้กระบวนการนี้ซ้ำ ๆ กับ SSD ของตัวเองเมื่อทำการติดตั้ง OS'es ซ้ำ)

แก้ไข: หากคุณสนใจความหมายของความปลอดภัย: ตรวจสอบคำถามของความปลอดภัยนี้


การลบที่ปลอดภัยรองรับดิสก์ ATA ส่วนใหญ่หรือไม่ ฉันอยู่ภายใต้ความรู้สึกว่าการสนับสนุนนั้นไม่ธรรมดา
Ruslan

1
ฉันไม่พบดิสก์ (สมัยใหม่, SATA) ที่ยังไม่รองรับ แต่ฉันยอมรับว่าประสบการณ์ของฉันถูก จำกัด เฉพาะฮาร์ดไดรฟ์ที่ฉันเป็นเจ้าของเป็นการส่วนตัว นอกจากนี้ยังดูเหมือนว่าจะมีความแตกต่างระหว่าง "การรักษาความปลอดภัยลบ" และ "การปรับปรุงการรักษาความปลอดภัยลบ" กับหลังหนึ่งได้รับการสนับสนุนน้อย
Jules Kerssemakers

3
@ Ruslan ฉันไม่เคยเห็น (หรือได้ยิน) ดิสก์ข้อมูลจำเพาะ SATA-2 ที่ไม่สนับสนุน ดิสก์ SATA ที่ผลิตในช่วง 10 ปีที่ผ่านมาควรมี
Tonny

สิ่งนี้หมายความว่าในการเข้ารหัส SSD ด้วยตนเองคำสั่ง TRIM เป็นแบบไม่ใช้งานหรือไม่ (ไม่อย่างนั้นมันจะไม่เข้ารหัสเสมอใช่มั้ย)
Mehrdad

1
@Mehrdad: ใช่การใช้ TRIM บน SSD ที่เข้ารหัสรั่วไหลข้อมูลเกี่ยวกับบล็อกที่ว่าง การยอมรับนั้นขึ้นอยู่กับความต้องการด้านความปลอดภัยของคุณหรือไม่ ดูเช่นaskubuntu.com/questions/399211/…สำหรับการสนทนา
sleske

4

โปรดจำไว้ว่าคุณได้ขอวิธีแก้ไขปัญหาเกี่ยวกับวิธีล้างดิสก์อย่างรวดเร็วแทนที่ / dev / sdx ด้วยดิสก์ของคุณส่วนใหญ่จะเป็นเหมือนกัน / dev / sda

นี่จะล้างตารางพาร์ติชัน

dd if=/dev/zero of=/dev/sdx bs=1024 count=50

การทำเช่นนี้จะเป็นการล้างดิสก์ทั้งหมดจะใช้เวลาสักครู่

cat /dev/zero > /dev/sdx

4
catอย่าใช้ ใช้ddเพื่อปรับปรุงประสิทธิภาพ
Micheal Johnson

6
@Micheal คุณพูดแบบนั้น แต่โดยปกติแล้วddจะใช้บัฟเฟอร์ขนาด 512 ไบต์ซึ่งจะทำลายประสิทธิภาพการทำงาน ... Coreutils ( cpและอาจสันนิษฐานได้cat) มีขนาดบัฟเฟอร์ที่สมเหตุสมผลกว่า ไม่มีอะไรddที่ทำให้มันเร็วขึ้นโดยธรรมชาติ
grawity

3
@grawity คุณสามารถเปลี่ยนขนาดบัฟเฟอร์ddได้ ครั้งสุดท้ายที่ฉันพยายามที่จะใช้catในการเขียนภาพไปยังดิสก์มันเป็นอย่างมีนัยสำคัญช้ากว่าการใช้ddกับขนาดของบัฟเฟอร์ที่เหมาะสม
Micheal Johnson
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.