क्या वास्तविक समय में दो लिनक्स निर्देशिकाओं को सिंक करना संभव है?


25

मैं आंतरिक हार्ड ड्राइव की निर्देशिका को बाहरी हार्ड ड्राइव में सिंक करना चाहूंगा।

जब मैं अपनी आंतरिक हार्ड ड्राइव पर किसी फ़ाइल को लिखता हूं या संशोधित करता हूं, तो स्वचालित रूप से उसी फाइल को बाहरी हार्ड ड्राइव पर कॉपी किया जाएगा ... और बाय बाय बैकअप;)

यह एक बाहरी हार्ड ड्राइव के साथ एक RAID जैसा कुछ होगा।

क्या यह संभव है?


22
मुझे डर है कि "अलविदा बैकअप" सोच लगभग कभी भी उचित नहीं है, या सही है।
बेन पलब्रो

गंभीरता से। बेन ने क्या कहा। यह बैकअप का विकल्प नहीं है।
डंकन एक्स सिम्पसन

जवाबों:


8

जहाँ तक मुझे पता है कि वास्तविक समय में केवल DRBD है । लेकिन मुझे नहीं लगता कि यह आपकी स्थिति पर लागू होता है, क्योंकि जब आप किसी फ़ाइल को हटाते हैं तो आप उसे बाहरी डिस्क पर भी हटा देंगे। अधिक आसानी से आप rsync और एक क्रोन स्क्रिप्ट का उपयोग कर सकते हैं जो हर कुछ मिनट में चलती है।


आपके उत्तर के लिए धन्यवाद। लेकिन अगर "क्रोन" rsync को हर ..5 मिनट पर चलाना है, तो क्या यह प्रदर्शन से समझौता करता है? क्या यह बहुत भारी नहीं है (अगर कुछ बदला है तो यह हर फाइल की जांच करेगा?)
जागी

इसलिए उन्होंने स्नैपशॉट क्षमताओं के साथ फ़ाइल सिस्टम का आविष्कार किया;)
PiL

1
DRBD को कॉन्फ़िगर करने के लिए थोड़ा जटिल हो सकता है, अगर आपको इसे कॉन्फ़िगर करने में मदद की आवश्यकता है तो मैंने एक अच्छा लेख लिखा: geek-kb.com/install-and-configure-drbd-centos-6
Itai Ganot

30

lsyncd सही समाधान लगता है। यह inotify (कर्नेल बिल्टइन फ़ंक्शन विच को एक डायरेक्टरी ट्री में फाइल में बदलाव के लिए देखता है) और rsync (क्रॉस प्लेटफ़ॉर्म फ़ाइल-सिंकिंग-टूल) को जोड़ती है ।

lsyncd -rsyncssh /home remotehost.org backup-home/

गीथूब से उद्धरण:

Lsyncd एक स्थानीय निर्देशिका ट्री ईवेंट मॉनिटर इंटरफ़ेस (inotify या fsevents) देखता है। यह कुछ सेकंड के लिए घटनाओं को एकत्र और संयोजित करता है और फिर परिवर्तनों को सिंक्रनाइज़ करने के लिए एक (या अधिक) प्रक्रिया (तों) को जन्म देता है। डिफ़ॉल्ट रूप से यह rsync है। Lsyncd इस प्रकार एक लाइट-वेट लाइव मिरर सॉल्यूशन है जो कि तुलनात्मक रूप से आसान है जिसे नए फाइल सिस्टम या ब्लॉकदेवियों की आवश्यकता नहीं है और स्थानीय फाइल सिस्टम प्रदर्शन में बाधा उत्पन्न नहीं करता है।


1
con है, यह द्विदिश नहीं है
tymik

8

आप बस अपने आंतरिक और बाहरी हार्ड ड्राइव पर एक सॉफ्टवेयर RAID1 बना सकते हैं। अगर यह एक अंतर्निहित हार्ड ड्राइव या बाहरी रूप से संलग्न मास स्टोरेज है, तो सिस्टम के लिए इससे कोई फर्क नहीं पड़ता।

लेकिन RAID कोई बैकअप नहीं है! यदि आप गलती से अपनी हार्ड ड्राइव पर किसी फ़ाइल को हटा देते हैं तो क्या होता है? यह आपके बाहरी "बैकअप" ड्राइव पर भी डिलीट हो जाता है।

बैकअप में आमतौर पर एक से अधिक पीढ़ी की फाइलें शामिल होती हैं ताकि आप गलती से हटाई गई फ़ाइलों को पुनः प्राप्त कर सकें।


4
स्पष्ट "RAID बैकअप नहीं है" के लिए एक बड़ा +1।
निकरिम

इसके अलावा आंतरिक और बाहरी हार्ड ड्राइव के सदस्यों के साथ एक सॉफ्टवेयर छापा शायद बहुत धीमी गति से अविश्वसनीय और अविश्वसनीय रूप से तोड़ने के लिए नामित होने जा रहा है।
डेविड

2

incron (जैसा कि इस वर्ष की शुरुआत में इस साइट पर मुझे सुझाव दिया गया है)।

यह अभी भी एक उचित बैकअप प्रक्रिया के लिए कोई विकल्प नहीं है।


3
शायद बेहतर होगा कि इसे पत्थर में उकेरा जाए।
डी '

1
@ कृपया इस टिप्पणी की व्याख्या करें। क्या इंक्रॉन एक अच्छा समाधान नहीं है?
imolit


0

इसे प्राप्त करने के लिए git-annex का भी उपयोग किया जा सकता है।

git-annex git के साथ फाइलों को प्रबंधित करने की अनुमति देता है, बिना फ़ाइल सामग्री को git में जाँचे। हालांकि यह विरोधाभासी लग सकता है, यह तब उपयोगी होता है जब git से बड़ी फ़ाइलों से निपटना वर्तमान में आसानी से संभाल सकता है, चाहे स्मृति, समय या डिस्क स्थान में सीमाओं के कारण हो।

गिट-एनेक्स के साथ तेजी से उपयोगकर्ताओं को लाने के लिए एक पूर्वाभ्यास है


जब भी यह सैद्धांतिक रूप से प्रश्न का उत्तर दे सकता है, [यह उत्तर देने के लिए आवश्यक भागों को शामिल करने और संदर्भ के लिए लिंक प्रदान करने के लिए बेहतर होगा]।
इटई गनोट
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.