ระวังเพราะถ้าคุณสะกดชื่อแฟลชไดรฟ์ในคำสั่ง 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 หลังจากเสร็จงาน รูฟัสคุณสามารถบู๊ตได้โดยใช้แฟลชไดรฟ์ที่สามารถบู๊ตได้
การใช้เทคโนโลยีการจำลองเสมือนเพื่อทดสอบแฟลชไดรฟ์ที่สามารถบู๊ตได้ ลิงก์สำหรับดาวน์โหลดโปรแกรมฟรีและสะดวกสบายเพื่อลดความซับซ้อนของกระบวนการสร้าง ดีบัก และทดสอบสื่อสำหรับบูตที่สร้างขึ้น