rsync कमांड विलोपन त्रुटि "IO त्रुटि का सामना करना पड़ा - फ़ाइल हटाने की लंघन"


16

मैं अपने ubuntu सर्वर से किसी अन्य ubuntu मशीन के लिए फ़ाइलों का बैकअप लेने के लिए rsync कमांड का उपयोग करता हूं। बैकअप सर्वर एक स्क्रिप्ट को ट्रिगर करता है जो rysnc कमांड का उपयोग करता है। यहां मैं उपयोग करने वाली कमांड है

rsync -rltvh --partial --stats --exclude = .beagle / --exlude =। * --delete-after root @ live_server: / home / home / live_server_bupup/ home >>/tmp/logfile.log 2> और 1

live_server पासवर्ड के बिना ssh-सक्षम है। तो यह काम करता है। अब समस्या साथ है

विकल्प के बाद

सभी फ़ाइल सिंक होने के बाद। अंत में मैं विलोपन प्रक्रिया देख सकता हूं। sklog.logfile त्रुटि पसंद है

IO त्रुटि का सामना करना पड़ा - फ़ाइल हटाने की लंघन

जब मैंने लॉग ढूंढने की कोशिश की तो फाइल सिंक करते समय कुछ त्रुटि हुई

rsync: send_files "/home/xyz/Desktop/PPT_session_1_context.pdf" खोलने में विफल रहा: अनुमति से इनकार (13)

तो मेरी समझ के रूप में rsync सुरक्षा कारण के लिए लक्ष्य से सभी फ़ाइलों को नहीं पढ़ सकता है क्योंकि यह फ़ाइल विलोपन को छोड़ रहा है।

क्या कोई अनुमति बनाने का कोई तरीका है - कुछ अनुमति त्रुटि होने पर भी काम करने के बाद? मैं बल हटाने का उपयोग नहीं करना चाहता क्योंकि यह किसी स्थिति में खतरनाक होगा।


1
Pssst फिर से ... आपको वास्तव में चाहिए।
आर्मेल लारिसर

जवाबों:


13

इस मुद्दे के बारे में अतिरिक्त नोट:

vanished fileहालत को ट्रिगर नहीं करना चाहिए IO error encountered -- skipping file deletion, लेकिन अक्सर ऐसा होता है जब आप लाइव सिस्टम का बैकअप बना रहे होते हैं।

यह rsync बग # 7809 ( https://bugzilla.samba.org/show_bug.cgi?id=7809 ) द्वारा कवर किया गया है और आगामी रिलीज 3.1.0 में हल किया जाना चाहिए।

इस बीच उपयोग करें:

--ignore-errors         delete even if there are I/O errors

19

Rsync मैन पेज से:

--ignore-errors         delete even if there are I/O errors

जो आपकी समस्या का समाधान करेगा।


2

rsyncजिन फ़ाइलों को आप पढ़ नहीं सकते, उन्हें अनदेखा करने के लिए आपको एक बहिष्करण फ़ाइल का उपयोग करना चाहिए । सूची find . -exec test -r '{}'को स्रोत निर्देशिका में उत्पन्न किया जा सकता है और फिर बहिष्करण फ़ाइल प्रारूप में मालिश की जा सकती rsyncहै।


वास्तव में मेरी स्रोत निर्देशिका काफी बड़ी है (10-12GB)। इसलिए हर बार फाइलें ढूंढना (बिना पढ़ी अनुमति) कुशल तरीका नहीं होगा। आप क्या कहते हैं?
XemX

बहिष्करण सूची बनाने के लिए इसे एक बार चलाएं और इसे फिर से न चलाएं जब तक कि नई अपठनीय फ़ाइलों का एक पूरा गुच्छा नहीं जोड़ा जाता है। rsync एक ही ट्री ट्रैवर्सल कर रहा है, इसलिए यह वैसे भी बुरा नहीं होना चाहिए।
काइल जोन्स

हाँ। लेकिन मेरा परिदृश्य ऐसा है। हर दिन स्रोत निर्देशिका ऐसी फ़ाइलों को प्रस्तुत कर सकती है। और मुझे नई फ़ाइलों को बैकअप मशीन में बैकअप करने की आवश्यकता है।
XemX

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