นี่คือ repost ที่ได้รับการแก้ไขและขยายออกไปอย่างมากสำหรับคำตอบของคำถามก่อนหน้าของคุณ:
sfill
จากsecure-delete
แพ็คเกจสามารถทำสิ่งที่คุณต้องการ
แตกต่างจาก zerofree (ซึ่งทำงานได้เฉพาะกับระบบไฟล์ ext2, ext3 และ ext4) sfill จะทำงานกับระบบไฟล์ใด ๆ
เช่น
sfill -l -l -z /mnt/X
ดูเหมือนว่าตอนนี้หน้าแรกของ sfill / secure-delete จะหายไป แต่มันถูกจัดทำขึ้นสำหรับเดเบียนและอูบุนตู อาจ distros อื่น ๆ ด้วย ถ้าคุณต้องการซอร์สโค้ดสามารถพบได้ในเดเบียนอาร์ไคฟ์ถ้าคุณไม่พบที่อื่น
หมายเหตุ: sfill ใช้งานได้กับระบบไฟล์ที่ติดตั้งเท่านั้น หากคุณเติมไฟล์อิมเมจจากระบบโฮสต์เป็นศูนย์ไม่ใช่จากภายใน VM คุณจะต้องเมานต์อิมเมจ fs บนโฮสต์ วิธีการที่แน่นอนจะแตกต่างกันไปขึ้นอยู่กับประเภทของไฟล์รูปภาพ (เช่น qcow2 หรือ raw)
การติดตั้งรูปภาพ 'ดิบ' นั้นง่ายและตรงไปตรงมา เพียงใช้kpartx
ไฟล์ภาพเพื่อสร้างอุปกรณ์ลูปแบ็คและ / dev / mapper / รายการสำหรับแต่ละพาร์ติชันนั้นสามารถติดตั้งทีละรายการ
นี่เป็นสคริปต์บางส่วนที่ปรับเปลี่ยนจากส่วนของสคริปต์ที่ฉันใช้เพื่อเชื่อมต่ออิมเมจฮาร์ดดิสก์ดิสทริเน็ตที่สามารถบูตได้ (ใช้สำหรับการอัพเดตไบออสบนเครื่องที่ flashrom ไม่ทำงาน):
image="myrawimagefile.img"
# use kpartx to build /dev/mapper device nodes
KP=$(kpartx -a -v "$image")
# now mount each partition under ./hd/
for p in $(echo "$KP" | awk '/^add map/ {print $3}') ; do
dm="/dev/mapper/$p"
fp=$(echo "$p" | sed -r -e 's/^loop[0-9]+//')
mkdir -p "./hd/$fp"
mount "$dm" "./hd/$fp"
sfill -l -l -v "./hd/$fp"
umount "$dm"
done
# now remove the loopback device and /dev/mapper entries
kpartx -d "$image"
หมายเหตุ: มันจะถือว่าทุกพาร์ติชันในภาพสามารถ mountable ได้ จริงในกรณีการใช้งานของฉัน (ภาพ hd freedos กับหนึ่งพาร์ทิชัน) ไม่เป็นความจริงถ้าหนึ่งในพาร์ติชั่นคือ, พูด, swap space. การตรวจจับพาร์ติชั่นดังกล่าวและการใช้ dd เป็นศูนย์พาร์ติชั่น swap จะถูกใช้เป็นแบบฝึกหัดสำหรับผู้อ่าน :)
เมธอดนี้หรือตัวแปรของมันควรใช้กับไดรฟ์ข้อมูล LVM ด้วย
หากรูปภาพของคุณเป็น qcow คุณสามารถใช้qemu-nbd
เครื่องมือจากqemu-utils
แพ็คเกจซึ่งจะแสดงไฟล์รูปภาพและพาร์ติชันเป็นอุปกรณ์บล็อกเครือข่ายเช่น / dev / nbd0 / dev / ndb0p1 - ซึ่งสามารถใช้ในลักษณะคล้ายกับ / อุปกรณ์ dev / mapper ด้านบน
อาจเป็นเรื่องง่ายและไม่ยุ่งยาก (แต่ใช้เวลานานกว่า) เพื่อใช้qemu-img
ในการแปลงจาก qcow เป็น raw ใช้วิธีสำหรับ raw ด้านบนจากนั้นแปลงรูปภาพดิบที่แก้ไขแล้วกลับไปเป็น qcow2 ที่ถูกบีบอัด ซึ่งอาจส่งผลให้ภาพมีขนาดเล็กกว่าการใช้ qemu-nbd ในขณะที่คุณกำลังบีบอัดรูปภาพ qcow2 ใหม่ขณะที่กำลังสร้าง
sfill
คำแนะนำหรือไม่ ดูเหมือนว่าไม่ต้องใช้ extX