एक लिनक्स सिस्टम का एक स्नैपशॉट बनाना


11

मैं निम्नलिखित करना चाहता हूं - मेरे लिनक्स ओएस की वर्तमान स्थिति (सेंटोस 6.5) सहेजें। कुछ परिवर्तन करें (अधिक विशेष रूप से एक गलती को इंजेक्ट करें और यह जांचने के लिए कुछ सेवा का परीक्षण करें कि यह उस विशेष प्रकार की गलती होने पर कैसे व्यवहार करता है।) फिर सिस्टम को वापस सहेजे गए स्थिति में पुनर्स्थापित करें। मैं यह पता लगाने में सक्षम नहीं हूं कि एक लिनक्स सिस्टम पर यह कैसे करना है। मेरे पास एक ext4 फाइल सिस्टम के साथ सेंटोस 6.5 के साथ एक मशीन है। इसके अलावा यह एक भौतिक सर्वर है और वर्चुअल मशीन नहीं है।

कोई विचार या सुझाव?


भौतिक सर्वर, या वर्चुअल मशीन?
स्टीव

1
मैं VirtualBox की तरह वर्चुअलाइजेशन सॉफ्टवेयर पर अपने ओएस को चलाने की सलाह देता हूं। यह अच्छी तरह से स्नैपशॉट का समर्थन करता है।
ययागशी २ ya

यह एक भौतिक सर्वर है। मुझे कई मशीनों (भौतिक सर्वर) पर ऐसा करने की आवश्यकता है और वर्चुअलाइजेशन सॉफ्टवेयर पर अपने ओएस को चलाने के लिए कॉन्फ़िगरेशन को बदल नहीं सकता।
बिरुता

इसे आमतौर पर सिस्टम स्नैपशॉट का समर्थन करने के लिए वर्चुअलाइजेशन जैसी एक अतिरिक्त मेटा लेयर की आवश्यकता होती है। यह बहुत मुश्किल होगा कि भौतिक सर्वर स्वयं ऐसा व्यवहार करें जैसे कि वे फर्मवेयर और बूटलोडर स्तर से इसके नियंत्रण में थे।
ययागशी २ ya

जवाबों:


8

मैं इसे सरल रखूंगा और इसे क्लोन करूंगा। USB से लाइव सिस्टम बूट करें (USB अंगूठे ड्राइव से सबसे आसान उबंटू है, मुझे पता है), फिर अपनी हार्ड डिस्क को एक अलग पार्टीशन (या बाहरी हार्ड ड्राइव आदि) में डंप करें, जैसे।

dd if=/dev/sda1 bs=64M of=/mnt/my_mounted_backup_drive/backup-sda1

जहां आपको /dev/sda1अपने रूट ( /) विभाजन के साथ बदलने की आवश्यकता है । अन्य विभाजन के साथ (के लिए एक की तरह ही है /boot, /boot/efi, /home) जहां लागू।

यदि आपको अंतरिक्ष को बचाने की आवश्यकता है, तो आप कर सकते हैं

dd if=/dev/sda1 bs=64M | gzip --fast | dd bs=32M of=/mnt/my_mounted_backup_drive/backup-sda1.gz

या, और अधिक जटिल, बहुत धीमी लेकिन कुछ और बाइट्स की बचत,

mkdir -p /mnt/linux
mount -o ro /dev/sda1 /mnt/linux
cd /mnt/linux
tar cvJf /mnt/my_mounted_backup_drive/linux-backup.tar.xz .??* *

आप इसके बाद दूसरे तरीके को पुनर्स्थापित कर सकते हैं, जैसे

mkdir -p /mnt/linux
mount /dev/sda1 /mnt/linux
cd /mnt/linux
tar xvJf /mnt/my_mounted_backup_drive/linux-backup.tar.xz

या

dd /mnt/my_mounted_backup_drive/backup-sda1.gz bs=32M | gzip --decompress | dd bs=64M of=/dev/sda1

(सावधान जहां आप अपना डेटा लिख ​​रहे हैं, यह सब कुछ हटा देता है /dev/sda1, इसलिए इसे पहली बार सही करें :-)


पुनश्च: यदि आप कुछ करने की उम्मीद करते हैं कि विभाजन तालिका में वास्तव में गलत बैकअप है, जैसे dd if=/dev/sda bs=64M count=2 of=/mnt/my_mounted_backup_drive/backup-sda। जब आपको पुनर्स्थापित करने की आवश्यकता होती है, तो आपको बहुत सारे ब्लॉकों को डिस्क पर वापस लिखने के लिए सावधान रहना होगा - यह नहीं कह सकते कि आपके विभाजन लेआउट को देखे बिना कितने। उस ब्लॉक को (जिसमें शामिल नहीं है) तक पुनर्स्थापित करें जहां आपका पहला विभाजन gdiskया के अनुसार शुरू होता है fdisk
नेड64

5

आप संपूर्ण सिस्टम का बैकअप लेने के लिए rsync का उपयोग कर सकते हैं।

rsync -aAXv --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found"} /* /path/to/backup/folder

इसके बारे में आर्क लिनक्स विकी पर एक बहुत बढ़िया लेख है


मेरे लिए सबसे अच्छा विकल्प होना काफी कम है। यदि आपके पास नहीं है, तो rsyncआप ddमेरी USB ड्राइव का बैकअप लेने के लिए उपयोग कर सकते हैं ।
m3nda

3

स्थानीय मशीन का अनिवार्य रूप से बैकअप करने के लिए rsync या rsnapshot का उपयोग करने के बारे में कैसे? एक बार जब आप परीक्षण कर लेते हैं, तो बस बैकअप को पुनर्स्थापित करें।

http://rsnapshot.org/

http://www.mikerubel.org/computers/rsync_snapshots/

इसी तरह, आप LVM का उपयोग कर सकते हैं:

http://www.tldp.org/HOWTO/LVM-HOWTO/snapshots_backup.html


1

आप FSArchiver का उपयोग कर सकते हैं , जो फ़ाइल सिस्टम की सामग्री को एक संपीड़ित फ़ाइल में बचाएगा और डेटा निकालने पर फाइल सिस्टम को पुनर्स्थापित करेगा।

यहाँ प्रलेखन से एक उदाहरण है :

fsarchiver savefs /mnt/backup/gentoo-rootfs.fsa /dev/sda1

आप बहु-थ्रेडेड संपीड़न का उपयोग भी कर सकते हैं, और पुनर्स्थापित करना सीधा है:

fsarchiver restfs /mnt/backup/gentoo-rootfs.fsa id=0,dest=/dev/sda1

-1

पिछली स्थिति में वापस जाने के लिए, आप वर्तमान फ़ाइल सिस्टम को एक नई निर्देशिका में माउंट कर सकते हैं। यह निम्नलिखित कमांड द्वारा निर्दिष्ट नई रूट डायरेक्टरी में फाइल सिस्टम को मापता है:

mount DIR DIR

इस स्थिति को पुनर्स्थापित करने के लिए, माउंट कमांड में निर्दिष्ट निर्देशिका से फ़ाइल सिस्टम की जड़ को बदलें।

umount DIR

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.