เป็นไปได้หรือไม่ที่จะดิสก์ปัจจุบันที่คุณบูตเครื่อง?


23

ฉันมีสำเนาของ FreeNAS ปิดใช้งานดิสก์ USB ที่ใช้งานอยู่ และฉันต้องการสำรองข้อมูลของมัน

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

หรือฉันจะต้องปิดเครื่องและเรียกใช้ddจากเครื่องอื่นหรือไม่?

คำตอบ:


16

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

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

มีตัวเลือกที่ดีกว่าสำหรับการสำรองข้อมูลระบบที่กำลังทำงานอยู่

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

หากคุณสำรองข้อมูลระบบไฟล์ด้วยดาต้าเบสฐานข้อมูลจะตรวจสอบการสนับสนุนสำหรับการสำรองข้อมูลที่น่าสนใจ


จุดที่ดีในการใช้เครื่องมือระดับสูง - tar, cpioและrsyncการทำงานทั้งหมดภายในระบบแฟ้มดังนั้นนี้อาจจะเหมาะสม ddOTOH ทำงานโดยตรงกับดิสก์บล็อกบายพาส FS
Piskvor

16

มันเป็นไปได้ในทางเทคนิค (เช่นเดียวกับ "การถ่ายภาพตัวคุณเองด้วยเท้า") แต่ไม่สามารถมองเห็นได้สูงโดยเฉพาะอย่างยิ่งหากพาร์ทิชันใด ๆ ของดิสก์สามารถเขียนได้

นึกภาพสถานการณ์นี้:

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

หากคุณสามารถติดตั้งพาร์ติชันใหม่ทั้งหมดในดิสก์ USB เป็นแบบอ่านอย่างเดียวปัญหานี้ไม่ควรเกิดขึ้น (เน้นที่ " ไม่ควร ") สิ่งนี้ต้องมีการเตรียมการติดตั้ง / ออฟไลน์ที่สำคัญและการตั้งค่าเวลาบูตสำหรับ/พาร์ติชันแม้ว่า - ฉันไม่คิดว่าโดยปกติคุณสามารถติดตั้ง/r / o on-the-fly ได้อีกครั้งจะมีหลายสิ่งแขวนอยู่ที่ต้องการ r / w ทางเข้า

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


1
ขอบคุณสำหรับคำตอบที่ดีฉันหวังว่าจะได้วิธีง่ายๆ แต่คุณก็ถูกต้องฉันไม่สามารถจินตนาการถึงสถานการณ์ที่ดีที่เกิดขึ้นจากสิ่งที่คุณชี้ไป
stuartc

1
@ Stuartc: มันจะต้องมีความร่วมมือที่สำคัญจากไดรเวอร์ FS - แจ้งขั้นตอนการคัดลอกของการเปลี่ยนแปลงทุกอย่างที่เกิดขึ้นตั้งแต่การคัดลอกเริ่มต้นและไม่ว่าจะได้รับในสถานะที่สอดคล้องกัน ถ้าเรื่องนี้เป็นปัญหาที่สำคัญลักษณะเป็นระบบไฟล์ที่สนับสนุน snapshotting btrfsเช่น
Piskvor

4

คุณไม่ควรสร้างภาพของพาร์ติชันที่เมาท์ ไม่ว่าคุณจะบูทจากมันหรือไม่ก็ตาม

แต่คุณจะต้องพยายามเลิกเมานท์พาร์ติชันที่คุณบูทมา


4

สำหรับสิ่งนี้ฉันใช้dump(8)กับ FreeBSD เช่นdump -auLf /mnt/some-other-disk/root.dmp /

-Lตัวเลือกที่ช่วยให้การคัดลอกระบบไฟล์ที่มีชีวิตโดยการใช้ภาพ

restore(8)ทิ้งสามารถเรียกคืนได้โดยใช้

มันอาจทำงานกับ UFS เท่านั้น ฉันไม่แน่ใจเกี่ยวกับเรื่องนี้


0

เป็นเรื่องน่าอัศจรรย์ที่มีเคล็ดลับการสำรองข้อมูลจำนวนมากที่ไม่กล่าวถึงสิ่งต่อไปนี้:

ระบบ linux (และระบบปฏิบัติการแบบมัลติเธรดส่วนใหญ่) โดยทั่วไปจะต้องมีความนิ่งในขณะที่คุณกำลังสำรองและกู้คืน

สิ่งนี้ทำได้โดยง่ายที่สุดโดยไม่ใช้ระบบปฏิบัติการในขณะที่คุณพยายามถ่ายภาพ

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


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

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


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

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


0

ฉันทำสิ่งนี้สำเร็จแล้วด้วยสภาพแวดล้อมการทดสอบพร้อมกับ fsck และ rsync ในที่สุดเพื่อปรับปรุงโอกาสในการคัดลอกอุปกรณ์ที่ดี


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