एक सर्वर व्यवस्थापक के लिए रुनक सबसे उपयोगी उपयोगिताओं में से एक है, लेकिन यह सिंक करता हैसब कुछ डिफ़ॉल्ट रूप से, जो आपका एप्लिकेशन बहुत अस्थायी फ़ाइलों को बनाता है, जो परेशान हो सकता है। Rsync का उपयोग करते समय फ़ाइलों को बाहर करने का तरीका यहां बताया गया है।
एक फ़ाइल में एक सूची से अलग
यह फ़ाइलों और फ़ोल्डरों को छोड़ने के लिए आदर्श तरीका है, क्योंकि आप हमेशा सूची संपादित कर सकते हैं और यदि आवश्यक हो तो चीजों को ट्विक कर सकते हैं। वाक्यविन्यास यहां है:
rsync - -exclude-from=/path/to/exclusion-file /path/to/source /path/to/dest
Rsync के साथ मुश्किल बात यह है कि जब आप चीजों को बाहर करने की कोशिश कर रहे होते हैं तो आपको एक सापेक्ष पथ का उपयोग करने की आवश्यकता होती है, क्योंकि जब यह बहिष्करण से मिलान करने का प्रयास करता है तो यह मैच के पथ के पहले भाग का उपयोग नहीं करेगा … यह अजीब है।
कहें, उदाहरण के लिए, आप बैकअप / डेटा / वेब / और इसे किसी अन्य सर्वर पर भेजने की कोशिश कर रहे हैं, इसलिए आप इसे बनाने के लिए rsync -a / data / web / user @ server: / बैकअप / डेटा / वेब / जैसे कमांड का उपयोग करते हैं। होता है … लेकिन आप वास्तव में / डेटा / वेब / कैश / फ़ोल्डर को सिंक करना छोड़ना चाहते हैं। जब rsync प्रत्येक आइटम के लिए आपकी बहिष्करण सूची की जांच करने के लिए जाता है, तो यह आपके मूल rsync कमांड / डेटा / वेब / फ़ोल्डर में आधारित होने के बाद / डेटा / वेब / कैश / चेक नहीं करेगा। यह सिर्फ सूची के खिलाफ "कैश /" की जांच करेगा। तो आपको सूची में "कैश" डालना होगा, पूर्ण पथ नहीं। उदाहरण:
rsync -a --exclude-from=/data/exclusions /data/web/ /backups/
अब इस आदेश का उपयोग कर rsync से / डेटा / वेब / कैश और / डेटा / वेब / temp को बाहर करने के लिए, हम पथ के / डेटा / वेब / भाग को हटा देंगे और / डेटा / बहिष्करण फ़ाइल में बस यह होगा:
cache* temp*
आप ध्यान दें कि मैंने * पथ में जोड़ा है, यह सुनिश्चित करने के लिए कि यह शुरुआत में "कैश" से शुरू होने वाली किसी भी चीज़ से मेल खाता हो। यदि आप चाहते थे तो आप अधिक उपयोगी कारणों के लिए इस स्टार पैटर्न का उपयोग कर सकते हैं - कहें कि आप सभी.txt फ़ाइलों को समन्वयित करने से बाहर करना चाहते हैं। आप यह सुनिश्चित करने के लिए स्टार के साथ पैटर्न शुरू करेंगे कि हमेशा मेल खाता है, और इसे जोड़ें:
*.txt
यह सुनिश्चित करेगा कि उन प्रकार की फाइलें सिंक के दौरान छोड़ी जाएंगी। यह उससे परे बहुत आसान है।
एक आइटम को छोड़कर
यह तकनीक बहुत कम उपयोगी है, लेकिन यदि आपको आवश्यकता हो तो आप इसे फ्लाई पर इस्तेमाल कर सकते हैं। यदि आप rsync का उपयोग करने के लिए एक स्क्रिप्ट सेट अप कर रहे हैं, जो आप आमतौर पर हैं, तो आपको भविष्य में रखरखाव को आसान बनाने के लिए फ़ाइल सूची से बाहर निकलने के लिए अतिरिक्त मिनट लेना चाहिए। वाक्यविन्यास बहुत समान है:
rsync --exclude=relative/path/to/exclusion /source /dest
उपरोक्त के रूप में एक ही सापेक्ष पथ लागू होना चाहिए।