Clonezilla dd
पर्दे के पीछे का उपयोग करता है ।
डिस्क और विभाजन के बारे में
एक पूरी डिस्क एक उपकरण की तरह है /dev/sda
। यह पहली डिस्क, दूसरी डिस्क है /dev/sdb
, तीसरे /dev/sdc
, आदि पुराने एक IDE केबल के माध्यम से जुड़ा डिस्क की तरह नाम हैं hda
, hdb
, ... एक डिस्क की तरह कई विभाजन हो सकता है /dev/sda1
। डिस्क पर दूसरा विभाजन /dev/sda
है /dev/sda2
और इसी तरह। एक छवि (बाइट्स की शाब्दिक प्रतिलिपि) एक विभाजन और डिस्क दोनों से बनाई जा सकती है। ध्यान दें कि डिस्क के पहले 512 बाइट में MBR (मास्टर बूट रिकॉर्ड) होता है।
छवियों को बनाते या पुनर्स्थापित करते समय एक विभाजन को माउंट नहीं किया जाना चाहिए, अन्यथा डेटा रीडिंग तब हो सकती है जब आप इसे पढ़ रहे हैं (एक छवि बना रहे हैं) या अप्रत्याशित व्यवहार और डेटा भ्रष्टाचार यदि आप इसे लिख रहे हैं (एक छवि से पुनर्स्थापित करना)।
नीचे दिए गए उदाहरणों में, /dev/sda1
वह विभाजन है जिसमें से एक छवि बनाई जानी चाहिए।
विभाजन और डिस्क डिवाइस /dev
केवल सुपरयुसर (रूट) और disk
समूह के उपयोगकर्ताओं द्वारा लिखने योग्य हैं । मुझे सब कुछ जड़ के रूप में चलाना पसंद है, इसलिए सुरक्षा के लिए (यदि आपने उदाहरण के लिए एक टाइपो बनाया है), तो मैं समूह को अपने लिए अस्थायी रूप से बदल देता हूं, इसलिए मैं इसे पढ़ और लिख सकता हूं:
sudo chgrp my_user_name /dev/sda1
यदि आप ऊपर दिए गए आदेश को छोड़ते हैं, तो आप नीचे दिए गए dd
आदेशों के साथ उपसर्ग करना चाहते हैं sudo
।
मूल बातें
एक विभाजन से एक छवि बनाने के लिए मूल आदेश है:
dd if=/dev/sda1 of=disk.img
if
"इनपुट फ़ाइल" का of
अर्थ है , "आउटपुट फाइल"। लिनक्स में सब कुछ एक फाइल है, यहां तक कि डिवाइस भी।
ऐसी छवि को पुनर्स्थापित करने के लिए, चलाएं:
dd if=disk.img of=/dev/sda1
आदेश कोई फर्क नहीं पड़ता, आप ऊपर dd of=/dev/sda1 if=disk.img
भी लिख सकते थे ।
संकुचित चित्र
चूंकि विभाजन आम तौर पर बड़े होते हैं, इसलिए छवि को लिखने से पहले डेटा को संपीड़ित करने की सिफारिश की जाती है:
dd if=/dev/sda1 | gzip > disk.img.gz
यह काम करता है क्योंकि अगर of
छोड़ दिया जाता है, तो आउटपुट "मानक आउटपुट" को लिखा जाता है जो कि कंप्रेस्ड प्रोग्राम के लिए पाइप है gzip
। उस का आउटपुट लिखा है disk.img
।
ऐसी संकुचित छवि को पुनर्स्थापित करने के लिए, चलाएं:
gunzip -c disk.img.gz | dd of=/dev/sda1
यहाँ, gunzip
gzip का रिवर्स कमांड है। -c
आउटपुट को मानक आउटपुट पर लिखा जाता है जो dd
कमांड के लिए पाइप है । क्योंकि if
छोड़ा गया है dd
, इनपुट को "मानक इनपुट" से पढ़ा जाता है, जिसका आउटपुट है gunzip
।
इसे पुनर्स्थापित किए बिना एक छवि से पढ़ना
असम्पीडित छवियों को माउंट किया जा सकता है ताकि आप इससे पढ़ सकें। क्या आपको अपनी विभाजन छवियां संपीड़ित करनी चाहिए, पहले उन्हें अनलॉक्ड करें ( disk.img.gz
हटा दिया disk.img
जाएगा , बनाया जाएगा। पर्याप्त स्थान होना सुनिश्चित करें!):
gunzip disk.img.gz
वैकल्पिक रूप से, छवि को स्पर्श किए बिना किसी छवि को अनकम्प्रेस्ड करें:
gunzip -c disk.img.gz > disk.img
अब एक निर्देशिका बनाएं जिस पर डिस्क को माउंट किया जा सकता है और छवि को केवल पढ़ने के लिए माउंट किया जा सकता है ( ro
):
sudo mkdir /mnt/wind
sudo mount -o ro disk.img /mnt/wind
अब आप अपनी फ़ाइलों को देख सकते हैं /mnt/wind
। जब किया जाता है, तो इसे अनमाउंट करें और अप्रचलित माउंट बिंदु को हटा दें:
sudo umount /mnt/wind
sudo rmdir /mnt/wind
कम आकार, अधिक CPU उपयोग, अधिक समय तक बैकअप और पुनर्स्थापना की अवधि
यदि समय कोई समस्या नहीं है और आपके पास अधिक संग्रहण स्थान नहीं है, तो आप bzip2
संपीड़न प्रारूप का उपयोग कर सकते हैं । सीधे शब्दों में बदलने के gzip
द्वारा bzip2
ऊपर में। यह .bz2
bzip2- संपीड़ित फ़ाइलों के लिए एक्सटेंशन का उपयोग करने के लिए सामान्य है , इसलिए ऐसा करें।