यदि दोनों कंप्यूटर एक ही (सुरक्षित) LAN पर हैं, तो मैं एक अलग दृष्टिकोण का उपयोग करने की सलाह देता हूं netcat
। यह आमतौर पर बहुत तेज़ है क्योंकि यह डेटा को एन्क्रिप्ट नहीं करता है।
root@good_host$ cd good_partition; netcat -l -p 1234 | tar xvpmf -
root@bad_host$ tar -cv -f- --exclude=/proc --exclude=/sys / | netcat good_host.ip 1234
जो अच्छी मशीन पर एक श्रवण पोर्ट 1234 खोलता है netcat -l -p 1234
और आने वाले डेटा tar
को निकालने के लिए (माइम और अनुमतियों को संरक्षित करके) पाइप करता है । खराब होस्ट डेटा को इस पोर्ट पर भेज देता है, उपयोग करके tar
और netcat
। मैं कुछ शामिल --exclude
, पैरामीटर के रूप में /proc
और /sys
आभासी फ़ाइल सिस्टम होते हैं और इसलिए नए मेजबान पर बेकार। (विशेषकर आपके RAM में ( /proc/kcore
) डेटा का प्रतिनिधित्व करने वाली फ़ाइल अनावश्यक मात्रा में डेटा जोड़ेगी)।
हालाँकि, आपको dd
फेलिंग ड्राइव के विभाजन का एक डंप बनाने पर भी विचार करना चाहिए :
user@good_host$ cd good_partition; netcat -l -p 1234 > dump_of_bad_partition_1.dd
root@bad_host$ dd if=/dev/sda1 | netcat good_host.ip 1234
जहाँ आपको /dev/sda1
सही उपकरण को अपनाना था । असफल ड्राइव पर अन्य विभाजनों के साथ भी ऐसा करें।
उस डंप के साथ आप सुनिश्चित हैं, कि आपने किसी भी महत्वपूर्ण मेटाडेटा (जैसे एसीएल) को याद नहीं किया है जो tar
कब्जा नहीं करेगा।
ssh user@failingsys "tar cfz - /" > oldsys.tar.gz