ขึ้นอยู่กับว่าพาร์ติชันนั้นมีไว้เพื่ออะไรและวัตถุประสงค์ของการทำสำเนาคืออะไร แต่ผมจะบอกว่าโดยทั่วไปเป็นเครื่องมือที่ไม่เหมาะสมสำหรับการสำรองระบบไฟล์dd
นั่นไม่ใช่สิ่งที่ตั้งใจไว้เช่นกัน
มันจะเสียเวลามากในการคัดลอกส่วนที่ว่างเปล่าของพาร์ติชัน
อาจนำไปสู่ความไม่สอดคล้องกันหากระบบไฟล์ติดตั้งอยู่ในปัจจุบันส่วนหนึ่งเป็นเพราะเป็นเอนทิตีระดับ OS และอาจไม่ซิงค์กับอุปกรณ์บล็อกพื้นฐาน การโทรsync
ครั้งแรกจะไม่ช่วยอะไรมากนักเนื่องจากกระบวนการไม่ได้เกิดขึ้นทันที
ใช้cp -a
หรือrsync
แทน แน่นอนว่าคุณต้องสร้างพาร์ติชันปลายทางดังนั้นมันจึงไม่ง่ายอย่างที่จะทำ แต่มันปลอดภัยและยืดหยุ่นกว่า หากคุณต้องการสร้างภาพระบบไฟล์ดูด้านล่าง
dd
หากคุณมีความประสงค์ที่จะคัดลอกระบบแฟ้มรากอย่างไม่ได้ใช้ คุณต้องใช้สิ่งที่ชอบrsync -ax
(หรือcp -ax
ในไดเรกทอรีระดับบนสุดของแต่ละบุคคล) เนื่องจากมีพวงของสิ่งที่จะต้องไม่ถูกในการคัดลอก บน Linux สิ่งนี้รวมถึง:
/dev
/lost+found
/mnt
/proc
/run
/sys
/tmp
สิ่งเหล่านี้บางส่วนเป็นอินเทอร์เฟซของเคอร์เนลไม่ใช่ไดเรกทอรีจริงบนดิสก์ หากคุณคัดลอกคุณกำลังคัดลอกข้อมูลจำนวนมากซึ่งจะไม่ใช้ในการคัดลอก หากคุณลองและเรียกใช้ระบบด้วยจะเป็นการสิ้นเปลืองเนื้อที่เนื่องจากอินเตอร์เฟสจริงจะถูกติดตั้งที่ด้านบน อื่น ๆ มีข้อมูลชั่วคราวที่ใช้งานโดยกระบวนการที่กำลังทำงานอยู่และมีปัญหามากกว่าเนื่องจากระบบจะไม่สามารถคัดแยกขยะได้หากคุณคัดลอก
หากคุณต้องการสร้างไฟล์รูปภาพของระบบไฟล์รูท (หรือระบบไฟล์ใด ๆ ) ให้สร้างไฟล์รูปภาพเปล่า - นี่เป็นการใช้งานที่เหมาะสมสำหรับdd
:
dd if=/dev/zero of=whatever.img bs=1024 count=1000000
นั่นเป็นรูปขนาด 1024 MB (1000000 * 1024) ปรับcount
ถ้าคุณต้องการมันขนาดอื่น ๆ สร้างเช่นext
ระบบไฟล์ในไฟล์ :
mke2fs whatever.img
มันจะเตือนคุณว่านี่ไม่ใช่อุปกรณ์บล็อกจริง ดำเนินดำเนินการต่อ. ตอนนี้เมานต์ไฟล์ภาพ:
mount whatever.img /mnt/img
/mnt/img
จะต้องมีอยู่ แต่สามารถทำอะไรก็ได้ ขณะนี้คุณสามารถrsync
(หรือcp -a
) /mnt/img
ลง เนื้อหาจะยังคงอยู่ภายในwhatever.img
เมื่อคุณเลิกเมานท์
อย่างไรก็ตาม ...
เพื่อความชัดเจนให้ใช้วิธีภาพอิมเมจของระบบไฟล์ที่อธิบายหากคุณต้องการไฟล์ภาพอย่างใดอย่างหนึ่งด้วยเหตุผลใดก็ตาม หากเป้าหมายของคุณคือการคัดลอกพาร์ติชั่นไปยังฮาร์ดไดรฟ์อื่นคุณไม่จำเป็นต้องมีภาพ : สร้างพาร์ติชั่นใหม่ด้วยระบบไฟล์เปล่าบนไดรฟ์นั้นติดตั้งและคัดลอกลงในนั้น คุณสามารถนำเนื้อหาระบบไฟล์ไปไว้ในไดเรกทอรีว่างเปล่าแล้วทำการเก็บถาวร:
tar -czf myarchive.tar.gz [the directory path]
จากนั้นคุณสามารถปรับใช้ในพาร์ติชันที่มีอยู่ (ว่างหรืออย่างอื่น) โดยวางไว้ในระดับบนสุดและใช้:
tar -xzf myarchive.tar.gz
ระวังว่าจะเขียนทับไฟล์ที่มีอยู่หากเส้นทางของพวกเขาตรงกับสิ่งที่เก็บไว้ มิฉะนั้นจะทำให้ลำดับชั้นไดเรกทอรีที่มีอยู่เดิม