เป็นไปได้ไหมที่จะทำสำเนาร้อนของระบบ?


10

ฉันต้องการสำรองข้อมูลระบบโดยไม่ต้องปิด โคลนระบบควรสามารถทำงานในเครื่องอื่นได้

ฉันพยายามที่จะ "dd" พาร์ติชันระบบทั้งหมดในดิสก์อื่นหลังจากนั้นฉันก็มั่นใจว่าไม่มีการเปิดตัวงานบริหาร ฉันคิดว่าฉันต้องบอกให้ด้วงเพื่อบู๊ตบนดิสก์นั้นดังนั้นฉันจึงใช้คำสั่ง:

grub-install  /dev/sdc1 

แต่ฉันได้รับข้อผิดพลาดนี้:

The file /boot/grub/stage1 not read correctly.

ฉันรู้ว่าฉันทำไม่สะอาดดังนั้นคุณมีทางออกที่ดีในการบรรลุเป้าหมายหรือแนวคิดในการแก้ปัญหาด้วงหรือไม่


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

คำตอบ:


8

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

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

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


ฉันไม่ได้ใช้ LVM แต่ทำได้ฉันกำลังมองหาโซลูชันที่คงทน มันก็เพียงพอแล้วที่จะคัดลอกแผนผังระบบทั้งหมด (ไม่รวม proc) แล้วทำการดัดแปลงด้วง?
Gaël Barbin

@Gael มันก็เพียงพอที่จะคัดลอกไฟล์ทั้งหมดและติดตั้งด้วงใหม่ใช่ คุณอาจต้องอัปเดต UUID ใน / etc / fstab โปรดทราบว่าหากคุณใช้tarคุณต้องการยกเว้นไม่เพียง แต่ / proc แต่ยัง / dev, / sys และ / ทำงานด้วยหรือใช้--one-file-systemสวิตช์เพื่อหยุดไม่ให้ไหลลงสู่ระบบไฟล์อื่น ๆ
psusi

ขอบคุณฉันจะลองกับน้ำมันดิน วิธีนี้อาจช่วยให้สามารถควบคุมการสำรองข้อมูลได้อย่างสมบูรณ์
Gaël Barbin

3

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

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

มีเครื่องมือmondoที่ช่วยให้คุณสร้างแผ่น CD การกู้คืนที่บูตได้ด้วยการติดตั้งระบบปฏิบัติการของคุณ


ฉันใช้ dd เพราะฉันบอกกับฉันว่าเครื่องมือคัดลอกไฟล์อื่นจะคัดลอกไฟล์เท่านั้นไม่ใช่ mbr และตารางพาร์ติชัน ฉันโยน mondo อย่างรวดเร็วและมันก็เป็นทางออกที่ง่ายที่สุด ขอบคุณ
Gaël Barbin

@Gael หากคุณโคลน SD1 เพียงอย่างเดียวคุณจะไม่ได้รับ MBR มีเครื่องมือจำนวนหนึ่งที่จะอัปเดต MBR หากจำเป็น ปกติแล้วมันจะมีรหัสเพื่อค้นหาเรคคอร์ดสำหรับบู๊ต
BillThor

1

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

อย่างไรก็ตามคุณสามารถลองตัวเลือกต่อไปนี้:

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

ฉันกำลังมองหาโซลูชันที่อนุญาตให้สำรองข้อมูลระบบโดยไม่ต้องปิด ดังนั้นไม่ว่าจะใช้วิธีใดระบบจะต้องเรียกใช้งาน หากมันเพียงพอที่จะคัดลอกเพียงระบบไฟล์เพื่อคัดลอกระบบ rsync จะทำงานสิ่งที่ทำให้ rsnapshot อะไร
Gaël Barbin

rsnapshot ให้การสำรองข้อมูลหลายรายการแบบเพิ่มหน่วยความจำได้มากเท่าที่คุณต้องการ (รายชั่วโมงรายวันรายสัปดาห์รายเดือน) และการสำรองข้อมูลมีอยู่ในโครงสร้างไดเรกทอรีแบบเต็มแม้จะเป็นการเพิ่มขึ้นก็ตาม
Vilmantas Baranauskas
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.