การสำรองข้อมูลระบบ การสร้างอิมเมจฮาร์ดไดรฟ์โดยใช้ยูทิลิตี้ dd ใน Unix ยูทิลิตี้ dd ที่ FBI ใช้เพื่อคัดลอกไฟล์

ระวังเพราะถ้าคุณสะกดชื่อแฟลชไดรฟ์ในคำสั่ง dd ผิด คุณสามารถสร้างความเสียหายให้กับฮาร์ดไดรฟ์ของโฮสต์ได้

เราจะแสดงการกำหนดพาร์ติชันของอุปกรณ์ทั้งหมด

และค้นหาแฟลชไดรฟ์ในหมู่พวกเขา:

Sudo fdisk -u -l /dev/sd?

นอกจากนี้ หากต้องการกำหนดพาร์ติชันบนอุปกรณ์ทั้งหมด คุณสามารถใช้คำสั่ง:

Sudo cat /proc/partitions

ไวยากรณ์คำสั่ง dd

dd if=/AAAA ของ=/BBBB bs=CCCC count=DDDD conv=noerror
  • ถ้า: (ไฟล์อินพุต) ระบุแหล่งที่มา เช่น ไปยังที่ที่เรากำลังคัดลอกมาจาก ระบุไฟล์ซึ่งอาจเป็นไฟล์ปกติหรือไฟล์อุปกรณ์ก็ได้
  • ของ: (ไฟล์เอาต์พุต) ชี้ไปยังไฟล์ปลายทาง ในทำนองเดียวกันเราสามารถเขียนทั้งลงไฟล์ปกติและลงอุปกรณ์ได้โดยตรง
  • บี: จำนวนไบต์ที่จะเขียนในแต่ละครั้ง นั่นคือขนาดของข้อมูลที่จะอ่านและเขียนในแต่ละครั้ง ขอแนะนำให้ตั้งค่า bs= ให้เป็นขนาดของแคชฮาร์ดไดรฟ์ เช่น 8M 16M 32M
  • นับ: กี่ชิ้น บีจะถูกคัดลอก
  • การแปลง:ช่วยให้คุณเชื่อมต่อตัวกรองที่ใช้กับสตรีมข้อมูล กรอง "ไม่มีข้อผิดพลาด"เพียงปิดการใช้งานการหยุดโปรแกรมเมื่อพบข้อผิดพลาดในการอ่าน

ตัวอย่าง

ลบดิสก์ให้เสร็จสิ้น

เพื่อที่จะไม่สามารถกู้คืนสิ่งใดบนสื่อบันทึกได้ คุณสามารถเติมด้วยศูนย์ได้ คำสั่งนี้จะลงท้ายด้วยข้อผิดพลาด "สื่อไม่มีพื้นที่เหลือ" เสมอ

Dd if=/dev/zero ของ=/dev/sdX

การสร้างดิสก์อิมเมจ

dd if=/dev/cdrom ของ=image.iso conv=noerror

คุณยังสามารถเข้าสู่ระบบได้

เมานต์ -o วนซ้ำ /PathToImageFile/image.iso /mnt/FolderMount

หากทำอะไรไม่ได้ผล กระบวนการจะแบ่งออกเป็น 2 ระดับ:

Losetup -e /dev/loop0 /PathToImageFile/image.iso เมานต์ /dev/loop0 /mnt/FolderMount

ปฏิบัติการเอ็มบีอาร์

MBR อยู่ใน 512 ไบต์แรกของฮาร์ดไดรฟ์ และประกอบด้วยตารางพาร์ติชัน บูตโหลดเดอร์ และอีกสองสามรายการเพิ่มเติม ไบต์ บางครั้งคุณต้องสำรองข้อมูล คืนค่า ฯลฯ การสำรองข้อมูลทำได้ดังนี้:

Dd if=/dev/sda of=mbr.img bs=512 count=1

คุณสามารถกู้คืนได้ง่ายขึ้น:

Dd if=mbr.img จาก=/dev/sda

การคัดลอกด้วยการเก็บถาวร

(โดยใช้ gzip) ข้อมูลจากแฟลชไดรฟ์ไปยังฮาร์ดไดรฟ์

Dd if=/dev/sdX conv=sync,noerror bs=8M | gzip -c >/PathToSave/sdX.img.gz

และกลับมา

Gunzip -c /PathToFile/sdX.img.gz | dd of=/dev/sdX conv=sync, ไม่มีข้อผิดพลาด bs=8M

การคัดลอกผ่านเครือข่าย

dd if=/dev/sdX conv=sync,noerror bs=8M | ssh -c ปักเป้า UserName@HostName "dd of=sdX.img.gz bs=8M"

และกลับมา

dd if=sdX.img.gz | ssh -c ปักเป้า UserName@HostName "dd of=/dev/sdX bs=8M"

ดังที่ทราบกันดีว่า “ผู้ใช้คอมพิวเตอร์แบ่งออกเป็นผู้สำรองข้อมูลและผู้ที่จะทำการสำรองข้อมูล”- ในบทความนี้เราจะดูวิธีต่างๆ ในการสำรองข้อมูลทั้งระบบและกู้คืนจากข้อมูลสำรอง

เป็นที่น่าสังเกตทันทีว่าการดำเนินการทั้งหมดไม่ควรดำเนินการแบบ "สด" เช่น ไม่ได้อยู่ในระบบที่ทำงานอยู่ แต่มาจาก liveCD หรือติดตั้งบนพาร์ติชัน/แฟลชไดรฟ์/usb-hdd ที่อยู่ใกล้เคียงของระบบ ในกรณีที่การหยุดทำงานไม่กี่นาทีเป็นสิ่งสำคัญสำหรับระบบ คุณสามารถคัดลอกระบบจากภายในตัวมันเองได้ แต่ในกรณีนี้ จะต้องคำนึงถึงเงื่อนไขเพิ่มเติมบางประการด้วย ซึ่งยังไม่ได้พิจารณาในบทความนี้

นอกจากนี้ในข้อความ สำหรับการดำเนินการที่ทำในฐานะ superuser จะใช้คำสั่ง sudo ซึ่งเป็นมาตรฐานสำหรับ Ubuntu ในระบบอื่น เป็นไปได้ที่จะได้รับสิทธิ์ผู้ใช้ขั้นสูงผ่าน su ระบบ liveCD บางระบบจะทำงานในโหมดผู้ใช้ระดับสูงตามค่าเริ่มต้น

ทาร์

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

การสร้างที่เก็บถาวร

ขั้นแรก สร้างจุดเชื่อมต่อสำหรับพาร์ติชันรากและสำหรับพาร์ติชันที่คุณจะสร้างการสำรองข้อมูล เช่นนี้

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

Sudo mount /dev/sdXY /mnt/root -o ro sudo mount /dev/sdXY /mnt/สำรอง

(แทนที่จะใช้ "sdXY" ให้ใช้ค่าของคุณสำหรับพาร์ติชันที่ต้องการ คุณสามารถกำหนดได้โดยใช้ sudo fdisk -l หรือ sudo blkid)

หากคุณใช้พาร์ติชั่นแยกสำหรับ /boot, /usr, /home ฯลฯ และต้องการรวมเนื้อหาไว้ในการสำรองข้อมูล ให้ต่อเชื่อมพาร์ติชั่นเหล่านั้นในโฟลเดอร์ที่เหมาะสม

Sudo เมานต์ /dev/sdXY /mnt/root/usr -o ro sudo mount /dev/sdXY /mnt/root/home -o ro

หากจำเป็น ให้สร้างโฟลเดอร์บนพาร์ติชั่นสำรองที่คุณต้องการวางไฟล์เก็บถาวร เป็นต้น

Sudo mkdir -p /mnt/backup/ubuntu/root

ตอนนี้คุณสามารถเริ่มสร้างไฟล์เก็บถาวรได้แล้ว หากต้องการสร้างไฟล์บีบอัด gzip ให้เรียกใช้

Sudo tar -cvzpf -C /mnt/root /mnt/backup/ubuntu-sda1.tar.gz

(สวิตช์ -p ช่วยให้สามารถบันทึกเจ้าของและการอนุญาตสำหรับไฟล์ได้)

สำหรับการใช้การบีบอัด bzip2

Sudo tar -cvjpf /mnt/backup/ubuntu-sda1.tar.bz2 /mnt/root

สำหรับการบีบอัด lzma

Sudo tar --lzma -cvpf /mnt/backup/ubuntu-sda1.tar.lzma /mnt/root

ในทำนองเดียวกันสำหรับการบีบอัด lzo - switch --lzop แทน --lzma

อัลกอริธึมการบีบอัดที่แตกต่างกันจะสร้างขนาดไฟล์เก็บถาวรที่แตกต่างกันและยังมีประสิทธิภาพที่แตกต่างกันอีกด้วย

เมื่อกระบวนการเสร็จสมบูรณ์ ให้ถอนติดตั้งพาร์ติชันที่เมาท์ทั้งหมด

Sudo umount /mnt/root(/boot,/var,/home,) /mnt/backup

กำลังกู้คืนจากไฟล์เก็บถาวร

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

Sudo mkdir /mnt/(รูท, สำรองข้อมูล)

ติดตั้งพาร์ติชันด้วยไฟล์สำรองข้อมูล

Sudo mount /dev/sdXY /mnt/backup -o ro

ฟอร์แมตพาร์ติชันรูทเป็นระบบไฟล์เดียวกัน (หรืออื่น) หากคุณใช้พาร์ติชั่นแยกสำหรับ /usr, /boot ฯลฯ และเก็บถาวรพาร์ติชั่นเหล่านั้น ให้ฟอร์แมตพาร์ติชั่นเหล่านั้นด้วย

(หากคุณกำลังกู้คืนระบบไปยังฮาร์ดไดรฟ์ใหม่ ให้แบ่งพาร์ติชั่นโดยใช้ fdisk/gparted และฟอร์แมตพาร์ติชั่น)

ระบบไฟล์บางระบบรองรับการตั้งค่า UUID เมื่อทำการฟอร์แมต ทำให้สามารถสร้างระบบไฟล์ที่มี UUID เหมือนกับระบบเก่าได้ ซึ่งจะหลีกเลี่ยงความจำเป็นในการแก้ไข fstab

สำหรับ ext2/3/4 UUID จะถูกตั้งค่าโดยใช้สวิตช์ -U และคุณสามารถทำให้งานง่ายยิ่งขึ้นด้วยคำสั่งเช่น

Sudo mkfs.ext4 -L "ฉลาก" -U "$(sudo blkid -o value -s UUID /dev/sda1)" /dev/sda1

หากคุณใช้การเก็บถาวรเมื่อสร้างไฟล์รูปภาพ ให้แตกไฟล์ออกก่อนโดยใช้ตัวเก็บถาวรเดียวกัน เป็นต้น

Bzip2 -dv /media/backup/sda5.dd.bz

ตอนนี้คุณสามารถเมานท์รูปภาพได้แล้ว

Sudo mount /media/backup/sda5.dd -o วนซ้ำ /mnt

(ด้วยตัวเลือกลูป โปรแกรมเมานท์จะ "รับ" ไฟล์รูปภาพไปยังอุปกรณ์ลูปอิสระโดยอัตโนมัติ จากนั้นจึงเมานต์ระบบไฟล์)

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

ซูโด้เมานท์ /mnt

dd - คัดลอกฮาร์ดไดรฟ์ทั้งหมด

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

การสร้างภาพ

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

ก่อนเริ่มดำเนินการ ตรวจสอบให้แน่ใจว่าไม่มีพาร์ติชั่นใดบนฮาร์ดไดรฟ์นี้ติดตั้งอยู่ ซึ่งสามารถทำได้โดยการรันคำสั่ง mount โดยไม่มีพารามิเตอร์

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

ติดตั้งพาร์ติชันสำรอง

Sudo เมานต์ /dev/sdXY /mnt

ตอนนี้คุณสามารถเริ่มต้นได้

Sudo dd if=/dev/sdX bs=1M conv=noerror,sync | lzma -cv > /mnt/hdd.dd.lzma

(ในที่นี้ “sdX” คือดิสก์ ไม่ใช่พาร์ติชั่น! สำหรับการคัดลอกโดยไม่บีบอัด คำสั่งจะคล้ายกับคำสั่งด้านบนสำหรับการสำรองพาร์ติชั่น)

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

ซูโด้เมานท์ /mnt

การกู้คืนจากภาพ

ความสนใจ! วิธีการนี้เกี่ยวข้องกับการย้อนกลับไปยังสถานะโดยสมบูรณ์ ณ เวลาที่สร้างไฟล์เก็บถาวรโดยแทนที่ข้อมูลทั้งหมด!

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

ตรวจสอบให้แน่ใจว่าไม่มีการใช้พาร์ติชั่นของดิสก์ที่กำลังกู้คืนอยู่ ติดตั้งพาร์ติชันสำรอง

Sudo เมานต์ /dev/sdXY /mnt

คุณสามารถเริ่มขั้นตอนได้

Bzip2 -dc /mnt/hdd.dd.bz | sudo dd of=/dev/sdX bs=1M conv=sync,noerror

หรือสำหรับภาพที่ไม่มีการบีบอัด

Sudo dd if=/mnt/hdd.dd.bz of=/dev/sdX bs=1M conv=sync,ไม่มีข้อผิดพลาด

เมื่อเสร็จแล้ว ให้ติดตั้งพาร์ติชั่นสำรอง

ซูโด้เมานท์ /mnt

หากคุณต้องการแยกอิมเมจไปยังฮาร์ดไดรฟ์อื่น อย่างน้อยจะต้องมีขนาดใหญ่เท่ากับฮาร์ดไดรฟ์ดั้งเดิม หากดิสก์ใหม่มีขนาดใหญ่ขึ้น คุณสามารถขยายพาร์ติชันหรือสร้างพาร์ติชันใหม่บนพื้นที่ว่างโดยใช้ parted/fdisk/gparted/etc

อย่าใช้ทั้งฮาร์ดไดรฟ์ (“ซ้ำ” และ “ดั้งเดิม”) ในเวลาเดียวกัน!เมื่อเชื่อมต่อไดรฟ์ทั้งสองแล้ว ระบบจะมีพาร์ติชันสองพาร์ติชันสำหรับ UUID แต่ละตัว ซึ่งจะทำให้เกิดปัญหาในการทำงานหรือไม่สามารถบูตได้

การติดตั้งภาพ

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

หากภาพถูกบีบอัด ให้แกะออก ตอนนี้ "รับ" รูปภาพไปยังอุปกรณ์วนซ้ำ

Sudo losstup -fv /media/backup/sda.dd

(ด้วยสวิตช์ -f โปรแกรมจะค้นหาอุปกรณ์ลูปอิสระโดยอัตโนมัติ มิฉะนั้นคุณจะต้องระบุให้ชัดเจน)

losstup จะแสดงชื่ออุปกรณ์ที่ใช้ - หากคุณไม่ได้ทำงานกับไฟล์รูปภาพอื่นๆ (iso, คอนเทนเนอร์ที่เข้ารหัส ฯลฯ) ส่วนใหญ่จะอยู่ที่ /dev/loop0

ตอนนี้เรามีอุปกรณ์ที่เป็นฮาร์ดไดรฟ์สำหรับระบบ แต่เราไม่สามารถเข้าถึงพาร์ติชันได้ โปรแกรม kpartx จะช่วยให้คุณเข้าถึงพาร์ติชันได้ (คุณอาจต้องติดตั้งแพ็คเกจชื่อเดียวกัน)

Sudo kpartx -av /dev/loop0

(คีย์ -a - เพิ่มพาร์ติชันสำหรับอุปกรณ์ที่กำหนด -v - เอาต์พุตข้อมูล)

โปรแกรมจะแสดงชื่ออุปกรณ์ที่สร้างขึ้นสำหรับพาร์ติชันดิสก์: loop0p1 สำหรับพาร์ติชันแรก, loop0p2 สำหรับพาร์ติชันที่สองซึ่งคล้ายกับพาร์ติชันของดิสก์ปกติ ไฟล์อุปกรณ์จะอยู่ในโฟลเดอร์ /dev/mapper

ตอนนี้คุณสามารถทำงานกับพาร์ติชั่นและ FS ได้แล้ว ตัวอย่างเช่น ติดตั้ง sda5 เดิมแล้วเขียนไฟล์ลงไป

Sudo เมานต์ /dev/mapper/loop0p5 /mnt

เมื่อเสร็จแล้ว ให้ถอนติดตั้งพาร์ติชัน

ซูโด้เมานท์ /mnt

ลบอุปกรณ์พาร์ติชันโดยใช้ kpartx

Sudo kpartx -dv /dev/loop0

และปล่อยอุปกรณ์ลูป

Sudo แพ้ -v -d /dev/loop0

ทั้งหมด! การเปลี่ยนแปลงจะถูกบันทึก และภาพของคุณจะกลายเป็นไฟล์ปกติอีกครั้ง

ซีพี

ที่นี่เราจะดูการสำรองข้อมูลโดยใช้ยูทิลิตี้ cp เช่น โดยใช้การคัดลอกแบบง่ายๆ ที่จริงแล้วนี่ไม่ใช่วิธีที่ดีที่สุดและเหมาะสำหรับการคัดลอกระบบไปยังฮาร์ดไดรฟ์ / พาร์ติชัน / คอมพิวเตอร์อื่นมากกว่าการสร้างสำเนาสำรอง

ในทางกลับกัน วิธีนี้มีข้อดีหลายประการ:

    ความเก่งกาจ - คุณจะพบ cp ในระบบ Linux ใด ๆ

    ความต้องการทรัพยากรต่ำ (เนื่องจากขาดการบีบอัดและความเรียบง่ายของกลไก)

    ง่ายต่อการทำงานเพิ่มเติมกับสำเนาสำรอง (เพิ่ม/เปลี่ยนแปลง/ลบไฟล์ การแยกข้อมูลที่จำเป็น ฯลฯ)

การทำสำเนา

สร้างจุดเมานท์สำหรับรูทและพาร์ติชั่นสำรอง

Sudo mkdir /mnt/(รูท, สำรองข้อมูล)

ติดตั้งพาร์ติชันทั้งสอง

Sudo mount /dev/sdXY -o ro /mnt/root sudo mount /dev/sdXY /mnt/สำรอง

ติดตั้งพาร์ติชันสำหรับ /usr, /boot ฯลฯ ถ้ามี

Sudo เมานต์ /dev/sdXY -o ro /mnt/root/home

สร้างโฟลเดอร์สำหรับการสำรองข้อมูลของคุณบนพาร์ติชันการสำรองข้อมูล

Sudo mkdir /mnt/backup/ubuntu.php

เราสามารถเริ่มต้นได้

Sudo cp -av /mnt/root/* /mnt/backup/ubuntu

(สวิตช์ -a ช่วยให้สามารถคัดลอกลิงก์ "ตามสภาพ" บันทึกคุณลักษณะของไฟล์ที่เป็นไปได้ทั้งหมดและโหมดเรียกซ้ำ สวิตช์ -v - แสดงข้อมูลเกี่ยวกับสิ่งที่เกิดขึ้น)

เมื่อกระบวนการเสร็จสมบูรณ์ ให้ถอนติดตั้งพาร์ติชันทั้งหมด

ในอนาคต คุณสามารถเก็บข้อมูลของคุณด้วยวิธีที่สะดวก

กำลังกู้คืนจากสำเนา

ความสนใจ! วิธีการนี้เกี่ยวข้องกับการย้อนกลับไปยังสถานะโดยสมบูรณ์ ณ เวลาที่สร้างไฟล์เก็บถาวรโดยแทนที่ข้อมูลทั้งหมด!

สร้างจุดเชื่อมต่อสำหรับพาร์ติชัน

Sudo mkdir /mnt/(รูท, สำรองข้อมูล)

ติดตั้งพาร์ติชันสำรอง

Sudo เมานต์ /dev/sdXY -o ro /mnt/backup

ฟอร์แมตพาร์ติชันรูทและพาร์ติชัน /usr, /boot ฯลฯ ถ้ามี (สำหรับการฟอร์แมตพาร์ติชันในขณะที่รักษา UUID ไว้ โปรดดูส่วนเกี่ยวกับ)

Sudo mkfs.reiserfs -l "root" /dev/sdXY sudo mkfs.ext2 -L "บูต" /dev/sdXY sudo mkfs.ext4 -L "home" /dev/sdXY

ติดตั้งระบบไฟล์ที่สร้างขึ้นใหม่

กระบวนการคัดลอกจะคล้ายกันแต่ไปในทิศทางตรงกันข้ามเท่านั้น

Sudo cp /mnt/backup/ubuntu/* -av /mnt/root

เมื่อการคัดลอกเสร็จสมบูรณ์ ให้แก้ไข fstab เพื่อแก้ไข UUID ของพาร์ติชัน

ถอนติดตั้งพาร์ติชัน

Sudo umount /mnt/backup /mnt/root/(usr,home,)

สควอช

sudo mkfs.reiserfs -l "root" /dev/sdXY sudo mkfs.ext2 -L "บูต" /dev/sdXY sudo mkfs.ext4 -L "home" /dev/sdXY

ติดตั้งระบบไฟล์ที่สร้างขึ้นใหม่

Sudo เมานต์ /dev/sdXY /mnt/root sudo เม้าท์ /dev/sdXY /mnt/root/usr sudo เมานต์ /dev/sdXY /mnt/root/var

เราพร้อมแล้วที่จะเริ่ม! หากต้องการแตกไฟล์รูปภาพ ให้ใช้ยูทิลิตี unsquashfs

Sudo unsquashfs -d /mnt/root -f /mnt/backup/ubuntu-root.sqfs

(สวิตช์ -d ระบุเส้นทางสำหรับการแตกไฟล์ โดยสวิตช์ -f โปรแกรมจะใช้โฟลเดอร์ที่มีอยู่แทนที่จะพยายามสร้างโฟลเดอร์ใหม่)

เช่นเดียวกับเมื่อสร้างภาพ คุณจะเห็นแถบความคืบหน้าและข้อมูลที่เป็นประโยชน์อื่น ๆ อีกมากมาย

เมื่อเสร็จแล้ว ให้แก้ไข fstab โดยแทนที่ UUID ของพาร์ติชันด้วยอันใหม่ (หากคุณฟอร์แมตพาร์ติชันด้วย UUID เดียวกัน ให้ข้ามขั้นตอนนี้)

Sudo นาโน /mnt/root/etc/fstab

บันทึกไฟล์และถอนติดตั้งพาร์ติชันทั้งหมด

Sudo umount /mnt/backup /mnt/root(/usr,/var,)

การติดตั้งภาพ

squashfs ถูกเมานต์เหมือนกับอิมเมจอื่น - ผ่านอุปกรณ์วนซ้ำ การสนับสนุนเคอร์เนลสำหรับ squashfs นั้นรวมอยู่ในการแจกแจงมากมายรวมถึง Ubuntu ดังนั้นคุณสามารถใช้คำสั่ง mount กับตัวเลือกลูป

Sudo mount /media/backup/ubuntu-root.sqfs -o ro,loop /mnt

(ไม่จำเป็นต้องใช้ตัวเลือก ro เนื่องจากการเขียนอะไรเลยจะไม่ทำงานอยู่ดี)

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

เมื่อเสร็จแล้ว ให้เมานต์อิมเมจเป็นระบบไฟล์ปกติ

ซูโด้เมานท์ /mnt

rsync

เช่นเดียวกับ cp rsync ทำงานกับไฟล์แทนที่จะบล็อกอุปกรณ์ สิ่งที่เกี่ยวกับ rsync คือมันไม่คัดลอกไฟล์ที่ปลายทางอยู่แล้ว ตามค่าเริ่มต้น ระบบจะตรวจสอบขนาดและเวลาในการแก้ไขไฟล์ แต่คุณยังสามารถตรวจสอบแฮชได้อีกด้วย (โดยปกติจะทำเมื่อจำเป็นต้องมีการรักษาความปลอดภัยที่เพิ่มขึ้น)

ใช้งานง่าย

ไวยากรณ์ rsync คล้ายกับ cp:

Rsync -a /mnt/root /mnt/backup

พารามิเตอร์ -a มักจะเพียงพอ โดยให้สิ่งที่จำเป็นมากที่สุด: การคัดลอกไดเร็กทอรีแบบเรียกซ้ำ การบันทึกข้อมูลเกี่ยวกับเจ้าของและกลุ่ม ฯลฯ หากต้องการแสดงข้อมูลโดยละเอียดเกี่ยวกับการคัดลอก ให้ใช้สวิตช์ -v ระวังด้วย คุณอาจพลาดข้อความแสดงข้อผิดพลาดในสตรีมข้อมูล สวิตช์ -x ช่วยให้มั่นใจได้ว่า rsync ไม่เกินระบบไฟล์ที่ระบุ

เอกสาร rsync อธิบายตัวเลือกมากมาย ตัวอย่างเช่น มีไฟล์ที่อนุญาตให้คุณคัดลอกผ่าน SSH หรือลบไฟล์ออกจากปลายทางหากไฟล์นั้นถูกลบในไดเร็กทอรีต้นทาง

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

การบันทึกสำเนาก่อนหน้า

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

สิ่งที่สำคัญที่สุดคือในระบบไฟล์สมัยใหม่ (รวมถึง Ext4) การกำหนดแอดเดรสไฟล์จะดำเนินการในสองขั้นตอน: ชื่อไฟล์ระบุหมายเลขไฟล์ที่ไม่ซ้ำกัน (ตัวอธิบายดัชนีหรือ i-node) และข้อมูลนั้นเชื่อมโยงกับหมายเลขนี้ จริงๆ แล้วชื่อไฟล์ใดๆ ก็เป็นฮาร์ดลิงก์ไปยังหมายเลขนี้ ด้วยเหตุนี้ ไฟล์ (ชุดข้อมูล) สามารถมีได้หลายชื่อและอยู่ในไดเร็กทอรีที่แตกต่างกัน และช่วยลดความซ้ำซ้อนในกรณีที่จำเป็นต้องทำซ้ำไฟล์ (ท้ายที่สุดแล้ว ฮาร์ดลิงก์จะใช้หน่วยความจำเพียงเล็กน้อย) ข้อมูลจะไม่ถูกลบจนกว่าจะมีการร้องขอให้ลบฮาร์ดลิงก์สุดท้าย

ข้อจำกัดที่สำคัญคือฮาร์ดลิงก์สามารถทำได้ภายในระบบไฟล์เดียวกันเท่านั้น

การซิงโครไนซ์เนื้อหาไดเร็กทอรีสำหรับการสำรองข้อมูลปัจจุบันกับไดเร็กทอรีต้นทาง:

Rsync \ --เก็บถาวร \ --delete --delete-excluded \ # การลบไฟล์ที่ไม่มีอยู่ในต้นทางและแยกไฟล์ออกจากการสำรองข้อมูล--ความคืบหน้า\ #แสดงข้อมูลความคืบหน้าการโอน"/home/user/Files/" \ # แหล่งที่มาของไดเรกทอรี"/สำรอง/ล่าสุด/" \ # ไดเร็กทอรีสำหรับการสำรองข้อมูลปัจจุบัน--ไม่รวม = "/สาธารณะ/" # ยกเว้นไดเรกทอรีที่ไม่จำเป็น

ในไดเร็กทอรี "/backup/latest/" สำเนาของไฟล์และไดเร็กทอรีที่จำเป็นทั้งหมดจากแหล่งที่มาจะถูกสร้างขึ้น และทุกสิ่งที่ไม่จำเป็นจะถูกลบออก

การสร้างการสำรองข้อมูลปัจจุบันอื่นโดยไม่มีการสำรองข้อมูล:

cp\--เก็บถาวร\ # บันทึกข้อมูลเพิ่มเติมทั้งหมดเกี่ยวกับไฟล์--ลิงค์\ # ใช้ฮาร์ดลิงก์สำหรับไฟล์ - กำจัดความซ้ำซ้อน"/สำรอง/ล่าสุด/" \ #source คือข้อมูลสำรองปัจจุบันที่ได้รับข้างต้น "/สำรอง/$(วันที่ +%Y-%m-%d_%H-%M-%S) /" # ปลายทาง - ไดเร็กทอรีพร้อมวันที่ในชื่อเพื่อความสะดวก (ดูวันที่คน)

ครั้งถัดไปที่คุณสร้างข้อมูลสำรอง rsync จะลบไฟล์ในไดเร็กทอรี /backup/latest/ ที่ถูกลบ/แยกออก/เปลี่ยนแปลงในไดเร็กทอรีต้นทาง (ไฟล์ที่เปลี่ยนแปลงจะถูกลบออกก่อน จากนั้นจึงเขียนเวอร์ชันใหม่) อย่างไรก็ตาม เฉพาะชื่อไฟล์ (ฮาร์ดลิงก์เดียวกัน) เท่านั้นที่จะถูกลบ ไฟล์ (ข้อมูล) จะถูกบันทึก เนื่องจากฮาร์ดลิงก์ถูกสร้างขึ้นในไดเร็กทอรีใกล้เคียงด้วยคำสั่ง "cp"

เครื่องมืออื่นๆ

มีแอปพลิเคชั่นมากมายสำหรับสร้างการสำรองข้อมูลใน Linux คุณสามารถค้นหา "backup" ใน Ubuntu App Center เพื่อค้นหาโปรแกรมสำรองข้อมูลที่มีอยู่ใน Ubuntu

สำหรับสภาพแวดล้อมขององค์กรและสำหรับงานสำรองข้อมูลที่ค่อนข้างใหญ่และสำคัญ เราสามารถแนะนำให้ทำความเข้าใจหนึ่งในระบบสำรองข้อมูลที่ได้รับความนิยมและทรงพลังที่สุดสำหรับ Linux ที่เรียกว่า Bacula

อย่างไรก็ตาม คุณยังสามารถค้นหาคู่มือภาษารัสเซียได้บนอินเทอร์เน็ต

แยกเวทย์มนตร์

Parted Magic เป็นอีกหนึ่งเกมที่ยอดเยี่ยม แต่ จ่ายชุดการแจกจ่ายที่ประกอบด้วยชุดเครื่องมือทั้งหมดสำหรับการสำรองและกู้คืนข้อมูล การทำงานกับดิสก์และพาร์ติชัน รวมถึงการกู้คืนข้อมูลที่สูญหาย รองรับระบบไฟล์จำนวนมาก LVM2 และ RAID (ทั้งฮาร์ดแวร์และซอฟต์แวร์) และมีเครื่องมือเช่น fsarchiver, GParted, Clonezilla ที่กล่าวมาข้างต้น และทุกสิ่งที่จำเป็นสำหรับวิธีการที่อธิบายไว้ในบทความนี้ นอกจากนี้ การเผยแพร่ยังรวมถึงเว็บเบราว์เซอร์และซอฟต์แวร์เพิ่มเติมอื่นๆ อีกด้วย การเผยแพร่ได้รับการแปลเป็นหลายภาษา รวมถึงภาษารัสเซีย และมีส่วนต่อประสานกราฟิกที่ครบครัน

ลแยกส่วน

LParted เป็น LiveCD ที่มีคุณสมบัติครบถ้วนซึ่งออกแบบมาเพื่อการทำงานกับพาร์ติชันฮาร์ดไดรฟ์ (HDD) เป็นหลัก การลบหรือกู้คืนข้อมูลอย่างถาวร และการทดสอบฮาร์ดแวร์ LiveCD บน Lubuntu Linux LParted เป็นอะนาล็อกการทำงานของ Parted Magic

ฉันต้องการเพิ่มที่นี่เกี่ยวกับ SystemRescueCD และอื่นๆ

ข้อมูลเพิ่มเติมเล็กน้อยเกี่ยวกับการบันทึกข้อมูล

    สำหรับข้อมูลสำคัญ คุณสามารถสร้างพาร์ติชันมิเรอร์บนดิสก์สองตัวได้ ในการดำเนินการนี้คุณไม่จำเป็นต้องมีตัวควบคุม RAID และดิสก์ที่มีขนาดเท่ากันเลย - ตัวอย่างเช่นคุณสามารถประกอบมิเรอร์จากไดรฟ์เก่า 80 GB และพาร์ติชัน 80 GB บนไดรฟ์ใหม่ได้ การทำมิเรอร์สามารถทำได้โดยใช้ LVM หรือซอฟต์แวร์ RAID อย่างไรก็ตาม วิธีการนี้ไม่มีประโยชน์ในกรณีที่แรงดันไฟฟ้า ~220V กระทบกับบัส +5V หรืออุกกาบาตตกใส่ยูนิตระบบคอมพิวเตอร์

    ผู้เชี่ยวชาญด้านไอทีที่มีเซิร์ฟเวอร์ของตัวเองที่บ้านสามารถขยายแนวคิดในการมิเรอร์และใช้ DRBD ได้ RAID-1 เดียวกัน แต่ฮาร์ดไดรฟ์อยู่ในคอมพิวเตอร์คนละเครื่องซึ่งเพิ่มความน่าเชื่อถือ

    โซลูชันที่ทันสมัยและสะดวกสบายคือการสำรองข้อมูลไปยังระบบคลาวด์ เช่น การใช้ Ubuntu One, Dropbox, http://www.adrive.com/ และอื่นๆ

    การมิเรอร์หรือการจำลองแบบบน Ubuntu One จะไม่ช่วยคุณจากการกด Delete โดยไม่ตั้งใจ ดังนั้นไม่ว่าในกรณีใด ให้ทำการสำรองข้อมูลแบบ "คลาสสิก" และวันหนึ่ง การทำงานหนักและความพยายามทั้งหมดของคุณจะได้รับการตอบแทน

สมมติว่าคุณได้ดาวน์โหลดไฟล์ ISO พร้อมอิมเมจการแจกจ่ายและเตรียมแฟลชไดรฟ์

คำสั่งเทอร์มินัลสำหรับเขียนอิมเมจ ISO ของการแจกแจงมีลักษณะดังนี้:

sudo dd if=path to.iso ของ=/dev/sdb

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



และหากแฟลชไดรฟ์ของคุณถูกกำหนดเป็นอย่างอื่น ให้เปลี่ยนในคำสั่ง

หากต้องการป้อนเส้นทางของไฟล์ลงในคำสั่งอย่างถูกต้อง ให้เปิดโฟลเดอร์ที่มีไฟล์ เปิดเทอร์มินัลใกล้เคียงแล้วลากไฟล์ลงไป:


เทอร์มินัลจะแสดงเส้นทางไปยังไฟล์และไฟล์ .iso เอง คัดลอกโดยไม่มีเครื่องหมายคำพูดและวางลงในคำสั่ง จากนั้นกดแป้นพิมพ์ลัดในเทอร์มินัล Ctrl+Cเพื่อรีเซ็ตและแสดงบรรทัดพร้อมท์ใหม่

วิธีที่ง่ายที่สุดในการสร้างคำสั่งคือในโปรแกรมแก้ไขข้อความ
ฉันได้รับคำสั่งต่อไปนี้:


ตอนนี้เสียบแฟลชไดรฟ์ USB เข้ากับพอร์ตคอมพิวเตอร์คัดลอกคำสั่งผลลัพธ์จากโปรแกรมแก้ไขข้อความป้อนลงในเทอร์มินัลแล้วดำเนินการ (กด Enter):


เคอร์เซอร์เทอร์มินัลจะกะพริบและดูเหมือนว่าไม่มีอะไรเกิดขึ้น แต่อันที่จริงมีการบันทึกอยู่ รอให้อิมเมจเบิร์นเสร็จ และเมื่อเสร็จแล้ว คุณจะเห็นสิ่งนี้ในเทอร์มินัล:


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

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

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

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

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

คำสั่ง dd

ไวยากรณ์ของยูทิลิตี้นี้ค่อนข้างแปลก แต่ในขณะเดียวกันก็ง่ายมากเมื่อคุณจำได้และคุ้นเคยกับมันแล้ว:

$dd ถ้า= copy_sourceของ= ปลายทางพารามิเตอร์

เมื่อใช้พารามิเตอร์ if คุณจะต้องระบุแหล่งที่มาที่จะคัดลอกบล็อก ซึ่งอาจเป็นอุปกรณ์ เช่น /dev/sda หรือไฟล์ - disk.img ถัดไป เมื่อใช้พารามิเตอร์ of คุณจะต้องระบุอุปกรณ์หรือไฟล์ปลายทาง พารามิเตอร์อื่นๆ มีไวยากรณ์เหมือนกับ if และ of

ตอนนี้เรามาดูตัวเลือกเพิ่มเติม:

  • บี- ระบุจำนวนไบต์ที่จะอ่านและเขียนในแต่ละครั้ง
  • ซีบีเอส- ต้องเขียนครั้งละกี่ไบต์
  • นับ- คัดลอกจำนวนบล็อกที่ระบุ ขนาดของหนึ่งบล็อกจะถูกระบุในพารามิเตอร์ bs
  • การแปลง- ใช้ตัวกรองกับสตรีมข้อมูล
  • ไอบีเอส- อ่านจำนวนไบต์ที่ระบุในแต่ละครั้ง
  • obs- เขียนจำนวนไบต์ที่ระบุในแต่ละครั้ง
  • แสวงหา- ข้ามจำนวนไบต์ที่ระบุที่จุดเริ่มต้นของอุปกรณ์อ่าน
  • ข้าม- ข้ามจำนวนไบต์ที่ระบุที่จุดเริ่มต้นของอุปกรณ์ส่งออก
  • สถานะ- ระบุว่าข้อสรุปควรมีรายละเอียดเพียงใด
  • iflag, oflag- อนุญาตให้คุณตั้งค่าสถานะการทำงานเพิ่มเติมสำหรับอุปกรณ์อินพุตและเอาท์พุต ซึ่งได้แก่ nocache, nofollow

นี่คือตัวเลือกพื้นฐานทั้งหมดที่คุณอาจต้องการ ตอนนี้เรามาดูการฝึกฝนอย่างใกล้ชิดมากขึ้นแล้วดูตัวอย่างวิธีใช้ยูทิลิตี้ dd linux

วิธีใช้ dd?

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

sudo dd if=/dev/sr0 จาก=~/CD.iso bs=2048 conv=noerror

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

dd if=/dev/sda จาก=~/disk.img

ไฟล์ชื่อ disk1.img จะถูกสร้างขึ้นในโฮมโฟลเดอร์ของคุณ ซึ่งในอนาคตจะสามารถนำมาใช้และกู้คืนไปยังระบบที่เสียหายได้ หากต้องการเขียนภาพลงในฮาร์ดไดรฟ์หรือพาร์ติชัน เพียงสลับที่อยู่อุปกรณ์:

dd if=~/disk.img จาก=/dev/sda

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

  • กับ- ตัวละครหนึ่งตัว;
  • - 512 ไบต์;
  • กิโลไบต์- 1,000 ไบต์;
  • เค- 1,024 ไบต์;
  • บธม.- 1,000 กิโลไบต์
  • - 1,024 กิโลไบต์
  • จี.บี.- 1,000 เมกะไบต์
  • - 1,024 เมกะไบต์

คำสั่ง dd linux ใช้ระบบดังกล่าวซึ่งซับซ้อน แต่ไม่มีทางหลีกเลี่ยงได้ มันจะต้องเข้าใจและจดจำ ตัวอย่างเช่น 2b คือ 1 กิโลไบต์ และ 1k คือ 1 กิโลไบต์ด้วย 1M คือ 1 เมกะไบต์ ตามค่าเริ่มต้น ยูทิลิตีจะใช้ขนาดบล็อก 512 ไบต์ ตัวอย่างเช่น หากต้องการเพิ่มความเร็วในการคัดลอกดิสก์ คุณสามารถใช้บล็อกขนาด 5 เมกะไบต์ได้ เมื่อต้องการทำเช่นนี้ ใช้คำสั่งต่อไปนี้:

dd if=/dev/sda ของ=~/disk.img bs=5M

พารามิเตอร์ถัดไปจะถูกนับ คุณสามารถระบุจำนวนบล็อกที่ต้องการคัดลอกได้ ตัวอย่างเช่น เราสามารถสร้างไฟล์ขนาด 512 เมกะไบต์ได้โดยเติมเลขศูนย์จาก /dev/zero หรือตัวเลขสุ่มจาก /dev/random:

sudo dd if=/dev/zero of=file.img bs=1M นับ=512

โปรดทราบว่าพารามิเตอร์นี้ไม่ได้ระบุขนาดเป็นเมกะไบต์ แต่ระบุเฉพาะจำนวนบล็อกเท่านั้น ดังนั้น หากคุณระบุขนาดบล็อกเป็น 1b คุณจำเป็นต้องใช้เพียงสองบล็อกเพื่อสร้างไฟล์ขนาด 1KB ตัวเลือกนี้ยังสามารถใช้เพื่อสำรองข้อมูลตารางพาร์ติชัน MBR ในการดำเนินการนี้ ให้คัดลอก 512 ไบต์แรกของฮาร์ดไดรฟ์ไปยังไฟล์:

sudo dd if=/dev/sda of=mbr.img bs=1b นับ=1

หากต้องการกู้คืนให้ใช้คำสั่งปกติเพื่อปรับใช้อิมเมจบนดิสก์

หากดิสก์อิมเมจมีขนาดใหญ่เกินไป คุณสามารถเปลี่ยนเส้นทางเอาต์พุตทั้งหมดไปยังสตรีมเอาต์พุตที่ไม่ได้มาตรฐานของยูทิลิตี้ gzip ได้:

dd ถ้า =/dev/sda2 | bzip2 disk.img.bz2

คุณยังสามารถใช้ยูทิลิตี้ dd linux เพื่อคัดลอกไฟล์ได้ แม้ว่าจะไม่ใช่จุดประสงค์ก็ตาม:

dd if=/home/sergiy/test.txt จาก=/home/sergiy/test1.txt

ดังที่คุณทราบ คำสั่ง linux dd เขียนข้อมูลลงดิสก์โดยตรงในรูปแบบไบนารี่ ซึ่งหมายความว่ามีการเขียนค่าศูนย์และค่าหนึ่ง ซึ่งจะแทนที่สิ่งที่วางไว้ก่อนหน้านี้บนอุปกรณ์บันทึก ดังนั้น หากต้องการลบดิสก์ คุณสามารถเติมเลขศูนย์จาก /dev/zero ลงในดิสก์ได้

sudo dd if=/dev/zero ของ=/dev/sdb

การใช้ dd ด้วยวิธีนี้จะทำให้ดิสก์ทั้งหมดถูกลบจนหมด

ข้อสรุป

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

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

คุณสามารถดาวน์โหลดโปรแกรมได้จากเว็บไซต์ของผู้พัฒนา หน้านี้ประกอบด้วยลิงก์สำหรับดาวน์โหลดเวอร์ชันมาตรฐาน รูฟัสและแบบพกพา รูฟัสแบบพกพาซึ่งไม่แตกต่างกันอะไรเลยยกเว้นชื่อของไฟล์ปฏิบัติการและตำแหน่งที่เก็บการตั้งค่า การตั้งค่าโปรแกรมประกอบด้วยภาษาที่ใช้และการตั้งค่าสำหรับตรวจสอบการอัพเดต เวอร์ชันมาตรฐานจะเก็บการตั้งค่าเหล่านี้ไว้ในรีจิสทรี ในขณะที่เวอร์ชันพกพาจะเก็บการตั้งค่าเหล่านี้ไว้ในไฟล์ rufus.iniไดเร็กทอรีโปรแกรม รูฟัสไม่จำเป็นต้องติดตั้งบนระบบ - เพียงดาวน์โหลดไฟล์ปฏิบัติการแล้วเปิดใช้งาน อินเทอร์เฟซของโปรแกรมนั้นง่ายมาก:

โดยรวมโปรแกรม รูฟัสไม่ใช่สิ่งที่พิเศษในด้านเครื่องมือสำหรับสร้างสื่อที่สามารถบู๊ตได้และข้อดีหลักของมันคือใช้งานง่าย ในการสร้างแฟลชไดรฟ์ที่สามารถบู๊ตได้ด้วยความช่วยเหลือก็เพียงพอที่จะมีอิมเมจดั้งเดิมของระบบที่สามารถบู๊ตได้และสามารถคลิกที่ปุ่ม "เริ่ม" ตามค่าเริ่มต้นพารามิเตอร์และการตั้งค่าที่เลือกทั้งหมดได้รับการออกแบบเพื่อใช้โปรแกรมในการทำงานกับการกำหนดค่าคอมพิวเตอร์มาตรฐาน

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

เมื่อสร้างแฟลชไดรฟ์ Windows ที่สามารถบู๊ตได้ คุณเพียงแค่ต้องเลือกอุปกรณ์ที่จะเขียนและไฟล์อิมเมจ ISO ที่สามารถบู๊ตได้ โปรแกรมจะตั้งค่าพารามิเตอร์อื่นๆ เอง

หากคุณไม่มีไฟล์อิมเมจ ISO คุณสามารถสร้างไฟล์จากซีดีจริง (หรือจากชุดไฟล์การแจกจ่าย) โดยใช้โปรแกรมเบิร์นซีดี/ดีวีดี เช่น Nero, Alcohol หรือ CDBurnerXP หรือ ImgBurn ที่เป็นที่รู้จักกันดี

ขั้นตอนการสร้างแฟลชไดรฟ์ USB ที่สามารถบู๊ตได้ด้วย Windows มีดังต่อไปนี้:

  • เลือกแฟลชไดรฟ์ที่จะเขียนภาพ แตกต่างจากโปรแกรมอื่นๆ ที่คล้ายกัน Rufus จะแสดงป้ายชื่อไดรฟ์ อักษรระบุไดรฟ์ และขนาด ดังนั้นหากคุณมีไดรฟ์แบบถอดได้หลายตัวในระบบ คุณสามารถเลือกไดรฟ์ที่จะเขียนได้อย่างง่ายดาย

  • เลือกรูปแบบพาร์ติชันและประเภทอินเทอร์เฟซระบบ Rufus ช่วยให้คุณสร้างแฟลชไดรฟ์สำหรับการบูตในอินเทอร์เฟซ BIOS ปกติและสำหรับการบูตในสภาพแวดล้อม UEFI สร้างบันทึกการบูตสำหรับไดรฟ์ข้อมูล MBR และไดรฟ์ข้อมูล GPT โหมดเริ่มต้นคือ "MBR สำหรับคอมพิวเตอร์ที่มี BIOS หรือ UEFI" ซึ่งเป็นโหมดที่พบบ่อยที่สุดสำหรับแฟลชไดรฟ์ที่สามารถบู๊ตได้ในปัจจุบัน

  • เลือกระบบไฟล์ที่จะใช้กับแฟลชไดรฟ์ที่สามารถบู๊ตได้ที่จะสร้าง ตามค่าเริ่มต้น แฟลชไดรฟ์ Windows ที่สามารถบู๊ตได้จะใช้ระบบไฟล์ FAT32แต่ถ้าจำเป็นก็เลือกได้ เอ็นทีเอฟเอสหากคุณต้องการใช้ไฟล์ที่มีขนาดใหญ่กว่า 4 GB

  • กำหนดขนาดคลัสเตอร์ ขนาดคลัสเตอร์จะถูกเลือกโดยโปรแกรมตามข้อมูลรูปภาพและประเภทระบบไฟล์ แต่หากจำเป็นก็สามารถเปลี่ยนแปลงได้

  • ระบุป้ายกำกับโวลุ่มที่จะระบุสำหรับแฟลชไดรฟ์ที่สร้างขึ้น

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

    หลังจากกดปุ่มแล้ว เริ่มโปรแกรมจะฟอร์แมตแฟลชไดรฟ์, ตั้งค่าเครื่องหมายของพาร์ติชันที่ใช้งานอยู่, บันทึกมาสเตอร์บูตเรคคอร์ดและบันทึกการบูตพาร์ติชันรวมถึงข้อมูลสื่อที่สามารถบู๊ตได้จากอิมเมจ ISO หลังจากเสร็จงาน รูฟัสคุณสามารถบู๊ตได้โดยใช้แฟลชไดรฟ์ที่สามารถบู๊ตได้

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