2009-03-20 19 views
136

मुझे rsync से भ्रमित त्रुटि मिल रही है और प्रारंभिक चीजें जिन्हें मैं वेब खोजों से ढूंढ रहा हूं (साथ ही सभी सामान्य chmod ' आईएनजी) इसे सुलझाने नहीं हैं:rsync त्रुटि: "/ foo/bar" पर समय निर्धारित करने में विफल: ऑपरेशन की अनुमति नहीं है

rsync: failed to set times on "/foo/bar": Operation not permitted (1) 
rsync error: some files could not be transferred (code 23) 
    at /SourceCache/rsync/rsync-35.2/rsync/main.c(992) [sender=2.6.9] 

ऐसा नहीं है कि त्रुटि के बावजूद काम कर रहा है, लेकिन यह है कि से छुटकारा पाने के लिए अच्छा होगा।

+2

क्या "/ foo/bar" माउंट पॉइंट है? –

+0

नहीं, बस एक सामान्य निर्देशिका जहां तक ​​मैं कह सकता हूं। – dreeves

+0

बस एक ही समस्या का सामना करना पड़ा, हालांकि मेरा त्रुटि कोड 22 था: rsync: समय निर्धारित करने में विफल ... अवैध तर्क (22)। कुछ जांच के बाद यह पता चला कि मेरी फाइलें 1 9 56 में अंतिम बार संशोधित की गई थीं! समाधान: सभी फ़ाइलों को स्पर्श करें, समस्या हल हो गई है। :) "ढूंढें। -प्रिंट 0 | xargs -0 स्पर्श करें" – KIAaze

उत्तर

210

यदि /foo/bar एनएफएस (या संभवतः कुछ FUSE फाइल सिस्टम) पर है, तो यह समस्या हो सकती है।

किसी भी तरह से, -O/--omit-dir-times को अपनी कमांड लाइन में जोड़ने से यह निर्देशिकाओं पर संशोधन समय निर्धारित करने से बचने से बच जाएगा।

+0

इस उत्तर ने मुझे अपने मैक और नेटवर्क स्टोरेज के बीच सिंक करने में मदद की। धन्यवाद। – cocoafan

+4

मजेदार बात यह है कि मैं ext3 को ext3 को समन्वयित कर रहा हूं, दोनों ओएस लिनक्स हैं। मुझे पहले कभी इस स्विच का उपयोग नहीं करना पड़ा था। -ओ चाल चल रही थी, लेकिन मेरी इच्छा है कि मुझे इसका इस्तेमाल नहीं करना पड़े। –

+3

धन्यवाद! यह कुछ वीपीएस होस्ट (उदा। Xlshosting.nl) को आंतरिक रूप से उपयोग करता है, जो rsync के साथ समस्याएं दे सकता है। – Frederik

0

मैंने उस समस्या को देखा है जब मैं एक फाइल सिस्टम पर लिख रहा हूं जो (ठीक से) संभाल नहीं करता है - मुझे लगता है कि एसएमबी शेयर या एफएटी या कुछ।

अपने लक्ष्य फाइल सिस्टम क्या है?

+0

मैं मैक पर हूं, लिनक्स (एक स्लाइसहोस्ट मशीन) के लिए rsyncing। – dreeves

+0

आह, अजीब ... चूंकि आप मैक पर rsync का उपयोग कर रहे हैं, हालांकि, मुझे आपको चेतावनी देना चाहिए: यह सभी ओएस एक्स फ़ाइल विशेषताओं को सही ढंग से संरक्षित नहीं करता है, इसलिए खराब चीजें हो सकती हैं। देखें, उदाहरण के लिए: http://blog.plasticsfuture.org/2006/04/23/mac-backup-software-harmful/ –

+0

हालांकि, आप MacPorts ('sudo port install rsync') से नवीनतम संस्करण का उपयोग कर सकते हैं और यह कम तोड़ देगा। यह जांचने के लिए: 'rsync --version': rsync संस्करण 3.0.5 प्रोटोकॉल संस्करण 30 ... संलग्न, एसीएल, xattrs, iconv, symtimes, फ़ाइल-झंडे ... (एसीएल और xattrs महत्वपूर्ण हैं वाले) –

0

यह हो सकता है कि आप फ़ाइलों में से कुछ करने के लिए विशेषाधिकार नहीं हैं। व्यवस्थापक खाते से, "sudo rsync -av" आज़माएं, वैकल्पिक रूप से रूट खाता सक्षम करें और रूट के रूप में साइन इन करें। इससे आपको अपने सिस्टम को पूरी तरह से नली करने और अपने rsync को बलपूर्वक बल देने की अनुमति देनी चाहिए! ;-) मुझे यकीन नहीं है कि ऊपर उल्लिखित - आगे-गुण-गुण मदद करेंगे, लेकिन मैंने इसे अच्छी तरह से मापने के लिए भी इसमें फेंक दिया।

68

मुद्दा शायद/foo/बार एक दूरस्थ डार्विन (ओएस एक्स) सिस्टम पर प्रक्रिया लेखन के स्वामित्व में नहीं किया जा रहा की वजह से है। मुद्दे पर एक समाधान दूरस्थ साइट पर पर्याप्त मालिक स्थापित करने के लिए है।

के बाद से इस सवाल का जवाब चुना गया है, और इसलिए उम्मीद है कि किसी को उपयोगी साबित हुआ है, मैं इसे विस्तार कर रहा हूँ यह स्पष्ट करने के।

कारण है कि ऐसा होता है कि rsync शायद जब फाइलों को कॉपी एक मनमाना संशोधन समय (mtime) स्थापित करने के लिए कोशिश कर रही है।

ऐसा करने के लिए इस डार्विन के सिस्टम utime() फ़ंक्शन के लिए आवश्यक है कि लेखन प्रक्रिया प्रभावी यूआईडी या तो यूआईडी या सुपर उपयोगकर्ता के समान फ़ाइल के समान है, opengroup utime's page देखें। संदर्भ के रूप में rsync मेलिंग सूची पर this discussion देखें।

+5

लिनक्स पर भी (मेरे मामले में डेबियन निचोड़) ... यदि मैं लक्ष्य निर्देशिका का स्वामी नहीं हूं, तो rsync "सेट समय में विफल" त्रुटि संदेश देता है। (निर्देशिका पर लेखन अनुमति पर्याप्त नहीं है।) – ddekany

+1

मैं एक ही मुद्दे में फंस गया। यूआईडी = उपयोगकर्ता के साथ एनटीएफएस माउंट तक। – gavenkoa

+1

यह त्रुटि मेरे लिए चली गई जब मैंने उस निर्देशिका के स्वामी को बदल दिया जो मैं उसी उपयोगकर्ता को rsync कमांड का उपयोग कर (रिमोट सर्वर पर) को प्रभावित करने की कोशिश कर रहा था, जो मेरी स्थानीय बैश स्क्रिप्ट पर rsync के माध्यम से लॉग इन करने का प्रयास कर रहा था। दूसरे शब्दों में: मैं इस आदेश के साथ रिमोट सर्वर पर '/ remote/path/to/foo/bar' को लिखने की कोशिश कर रहा था:' rsync -avzP --exclude '.DS_Store'/local/path/to/foo/बार/[email protected]:/रिमोट/पथ/से/foo/bar 'और वही त्रुटि संदेश प्राप्त हुए जो कि' user1' '/ remoe/path/to/foo/bar' के स्वामी के रूप में बने यह: '$ chown -R उपयोगकर्ता 1/रिमोट/पथ/से/foo/bar' – racl101

2

मेरे मामले में समस्या यह है कि "रिसीवर माउंटप्वाइंट" गलत तरीके से रखा गया था। यह केवल पढ़ने के लिए मोड में था (कुछ extrange कारण के लिए)। ऐसा लगता है कि rsync फ़ाइलों की प्रतिलिपि बना रहा था, लेकिन यह नहीं था। मैंने अपनी fstab फ़ाइल की जांच की और डिफ़ॉल्ट रूप से माउंट विकल्प बदल दिए, फ़ाइल सिस्टम को फिर से माउंट करें और फिर rsync निष्पादित करें। तब सब ठीक है।

0

यह xfs (rw,relatime,seclabel,attr2,inode64,noquota) के विभाजन पर मेरे साथ हुआ, जहां एक समूह में किसी अन्य उपयोगकर्ता के स्वामित्व वाली निर्देशिकाएं हम दोनों सदस्य थे। समूह सदस्यता पहले से ही लॉगिन से पहले स्थापित की गई थी, और पूरी निर्देशिका संरचना समूह-लेखन योग्य थी। मैंने इसकी पुष्टि करने के लिए मैन्युअल रूप से sudo chown -R otheruser.group directory और sudo chmod -R g+rw directory चलाया था।

मुझे अभी भी पता नहीं है कि यह मूल रूप से क्यों काम नहीं करता है, लेकिन sudo chown -R myuser.group directory के साथ स्वामित्व लेना इसे ठीक करता है। शायद SELinux- संबंधित?

0

यह त्रुटि पॉप-अप भी हो सकती है यदि आप उन फ़ाइलों के लिए rsync प्रक्रिया चलाते हैं जिन्हें हाल ही में स्रोत या गंतव्य में संशोधित नहीं किया गया है ... क्योंकि यह हाल ही में संशोधित फ़ाइलों के लिए समय निर्धारित नहीं कर सकता है।

 संबंधित मुद्दे

  • कोई संबंधित समस्या नहीं^_^