ระบบไฟล์แบบวนซ้ำคืออะไร?
Gnu / Linux (และระบบยูนิกซ์ส่วนใหญ่) มีกลไกที่อนุญาตให้ติดตั้งไฟล์ (ฟอร์แมตก่อนหน้านี้) ราวกับว่าเป็นฮาร์ดดิสก์โดยปกติจะไม่มีตารางพาร์ติชัน แผนภาพเส็งเคร็ง (สร้างโดยฉัน) อธิบายวิธีการทำงานของกลไกนี้
การใช้ไฟล์วนซ้ำ
1- ไฟล์ Mount.iso
ไฟล์. iso ซึ่งเป็นมาตรฐานที่ยอดเยี่ยมสำหรับซีดีและดีวีดีไม่มีอะไรมากไปกว่าไฟล์ลูปที่มีระบบไฟล์ได้ ISO.9960 (พบมากในซีดี) หรือ UDF (พบมากที่สุดในดีวีดี) ในการติดตั้งเราจะใช้คำสั่ง mount
mkdir iso # สร้างไดเร็กทอรี chmod -R 666 iso # ให้สิทธิ์ผู้ใช้ทุกคนในการอ่านสิทธิ์การเมานต์ image.iso iso / # เมานต์อิมเมจ iso (ต้องใช้ root)
ข้อ จำกัด ที่คุณมีคือด้วยเหตุผลที่ชัดเจนระบบไฟล์ทั้งสองเป็นแบบอ่านอย่างเดียว
2- สควอชแบบอ่านอย่างเดียว
สมมติว่าเรามีโฟลเดอร์ของรูปภาพและ / หรือวิดีโอที่จัดระเบียบตามปีที่ถ่าย เห็นได้ชัดว่าไม่น่าเป็นไปได้มากที่เราต้องการแก้ไขข้อมูลที่อยู่ในโฟลเดอร์จากปีก่อน ๆ นั่นคือสิ่งที่ Squashfs เข้ามา Squashfs เป็นระบบไฟล์บีบอัดแบบอ่านอย่างเดียวดังนั้นเมื่อสร้างภาพแล้ว เราจะไม่สามารถแก้ไขข้อมูลภายใน
ดังนั้นไม่เพียง เราจะประหยัดพื้นที่จำนวนมหาศาลแต่ยังให้ผลที่น่าสงสัยอีกด้วย การอ่านไฟล์จะเร็วขึ้นโดยต้องอ่านไฟล์ที่มีขนาดเล็กลงเนื่องจากในปัจจุบันการขยายขนาดไฟล์เป็นความพยายามขั้นต่ำสำหรับ CPU ส่วนใหญ่
ออกจากคำนำในการสร้างอิมเมจ squashfs เราต้องใช้คำสั่ง mksquashfs ซึ่งไวยากรณ์นั้นง่าย:
mksquashfs directorio 1 [directorio 2 directorio 3...] imagen.sqsfs -comp [algoritmo de compresión] -b [tamaño del bloque ]
และนี่คือตัวอย่างที่ใช้ได้จริง:
mksquashfs fotos-2009 fotos-2010 fotos-2011 fotos-2012 fotos-2013 fotos_2009-2013.sqsfs -comp xz -bs 1M
อัลกอริทึมที่เลือกคือ xz เนื่องจากเป็นอัลกอริทึมที่ อัตราส่วนการบีบอัดที่สูงขึ้น ข้อเสนอ (ของที่มี) ในขณะที่ขนาดบล็อกที่เลือกคือสูงสุด อะไร ช่วยให้ได้ผลการบีบอัดที่ดีขึ้น (โดยค่าเริ่มต้นคือ 64KiB)
ตอนนี้เราควรจะสามารถติดตั้งได้ด้วยวิธีง่ายๆ
mount fotos_2009-2013.sqsfs fotos_2009-2013/
หลังจากตรวจสอบว่าทุกอย่างถูกต้องแล้วเราสามารถลบไฟล์ต้นฉบับหรือทิ้งไฟล์ไว้เป็นข้อมูลสำรอง
ในกรณีที่เราต้องการติดตั้งเมื่อ OS เริ่มทำงานเราต้องเพิ่มบรรทัดของลักษณะนี้ใน / etc / fstab
/dir/loop.sqsh /dir/mountdir squashfs ro,defaults 0 0
จะเกิดอะไรขึ้นเมื่อเราต้องการเพิ่มหรือลบไฟล์หรือเพียงแค่แยกภาพรวมเหล่านี้ เรามีคำสั่งคำสั่ง Unsquashfs.
unsquashfs [opciones] snapshot.sqfs [Directorios o archivos que extraer]
โดยค่าเริ่มต้นจะใช้ "squashfs-root" เป็นไดเร็กทอรีการแยก สามารถเปลี่ยนแปลงได้ด้วยตัวเลือก -d
- livecd's
- ระบบฝังตัว
- เซิร์ฟเวอร์
- โดยทั่วไประบบอ่านอย่างเดียว
3- «การแลกเปลี่ยนฉุกเฉิน»
ลองนึกดูว่าไม่ว่าด้วยเหตุผลใด (การจำศีลการรวบรวมจำนวนมาก ... ) คุณต้องมีการแลกเปลี่ยนเพิ่มเติม นี่คือที่ที่ไฟล์ลูปเข้ามาเล่นขั้นตอนแรกคือการสร้างไฟล์ว่างที่มีขนาดที่แน่นอนโดยมีขนาดบล็อกที่แน่นอนเราทำสิ่งนี้ด้วยคำสั่ง dd:
dd if=/dev/zero of=loop bs=1M count=512
ในกรณีนี้บล็อกคือหนึ่ง MiB และขนาดไฟล์คือ 512MiB ไม่จำเป็นต้องเป็นแบบนี้
เราสร้างและเปิดใช้งานการแลกเปลี่ยนด้วยคำสั่งนี้
mkswap loop && swapon loop
โปรดทราบว่าประสิทธิภาพของไฟล์ลูปนั้นค่อนข้างต่ำกว่าไฟล์จริงเสมอ
4- ทำในสิ่งที่คุณต้องการ
นี่เป็นเพียงตัวอย่างที่มีลักษณะเฉพาะส่วนใหญ่อย่าลังเลที่จะทดลองกับ chroots ระบบเข้ารหัสลูปซ้อน ... ความเป็นไปได้ของคุณนั้นไร้ขีด จำกัด แต่ระวังคำสั่งที่คุณเรียกใช้ คิดให้ดีก่อนกด Enter.
ลิงค์ที่น่าสนใจ
- วิกิพีเดีย Squashfs
- ผู้ชาย mksquashfs
- ผู้ชายคลายสควอช
- iso 9960 วิกิพีเดีย
- UDF วิกิพีเดีย
- วิกิพีเดีย VFS
- ลูปวิกิพีเดีย
เจ๊โพสต์ดี !! ฉันมีข้อมูลสำรองขนาดมหึมาอยู่ที่นั่นและไม่เคยเกิดขึ้นกับฉันเพื่อบีบอัดข้อมูลเหล่านี้ ฉันจะใช้สิ่งนี้และโดยวิธีการเข้ารหัสภายนอกของฉันเพื่อกรอกข้อมูลจากนั้นฉันก็จำได้ว่าฉันกำลังจะเข้ารหัส🙁
น่าสนใจที่จะลองสิ่งที่ squashfs
บทช่วยสอนที่ดีฉันได้อ่านวิธีสร้างไฟล์ img ด้วย dd และเมานต์แล้ว แต่ไม่ทราบการใช้ Squashfs และการบีบอัด แม้ว่าจะไม่อนุญาตให้แก้ไขเนื้อหา แต่การใช้งานจะมีประโยชน์ในสถานการณ์เช่นผู้ที่คุณแสดงความคิดเห็น ขอบคุณสำหรับการแบ่งปันทักทาย
ดีมากที่รู้ขอบคุณสำหรับเคล็ดลับ
คุณเรียนรู้สิ่งใหม่ ๆ อยู่เสมอ ยอดเยี่ยม!
มันตลกดีฉันรู้ว่าสควอชและมันมีไว้เพื่ออะไร แต่มันไม่เคยเกิดขึ้นกับฉันในการบีบอัดภาพของฉัน ขอบคุณสำหรับทิป.
น่าประทับใจเพื่อลองดูว่ามีอะไรเกิดขึ้นเคล็ดลับที่ดีมาก
ตูยอดเยี่ยม !!! =) …เคล็ดลับดีมาก !!!
สวัสดีโรเดอร์ บทความที่น่าสนใจมากขอบคุณสำหรับการแบ่งปัน
ใน Gentoo คุณต้องเปิดใช้งานการสนับสนุน SquashFS ในเคอร์เนลก่อนที่จะรวบรวมฉันจะทดสอบเพื่อดูว่ามันทำงานอย่างไร ขอบคุณ.
ทดสอบกับ Gentoo รวบรวมเคอร์เนลสำหรับมันและยอดเยี่ยม
เพียงแก้ไขการพิมพ์ผิดเล็ก ๆ น้อย ๆ โรเดอร์
ในตัวอย่าง:
mksquashfs photos-2009 photos-2010 photos-2011 photos-2012 photos-2013 photos_2009-2013.sqsfs -comp xz -bs 1M
สำรอง s ใน "-bs" (ซึ่งกำหนดขนาดบล็อก) ควรมีลักษณะดังนี้:
mksquashfs photos-2009 photos-2010 photos-2011 photos-2012 photos-2013 photos_2009-2013.sqsfs -comp xz -b 1M