2010-01-23 3 views
11

पर "nontsec" को अनदेखा करता है मैं विंडोज़ से उबंटू तक कुछ फ़ाइल सिंक करने के लिए cwRsync का उपयोग करता हूं। यह प्रक्रिया Vista पर ठीक काम करने के लिए प्रयुक्त होती है, लेकिन जब से मैं विंडोज 7 में अपग्रेड करता हूं, मुझे अनुमति के मुद्दे मिलते रहते हैं।cwRsync विंडोज 7

कुछ पृष्ठभूमि ... मैं Vista पर ही अनुमति मुद्दों प्राप्त करने के लिए उपयोग किया था, लेकिन वह CYGWIN=nontsec वातावरण चर का उपयोग करके हल किया गया था।

premission समस्या

rsync: failed to modify permissions on xxx: Permission denied (13) 

के बाद से खिड़कियों और यूनिक्स फाइल अनुमति भिन्न होते हैं, खिड़कियों अनुमति के साथ फ़ाइलों sync'ing मतलब नहीं है। क्या rsync करता है UNIX पक्ष पर 0 (d---------) पर अनुमति सेट है। इसे रोकने के लिए, सिगविन में nontsec वेरिएबल है जो इसे विंडोज फ़ाइल अनुमतियों को अनदेखा करने के लिए निर्देश देता है।

समस्या यह है कि, Windows7, nontsec पर कोई प्रभाव नहीं पड़ता है।

उत्तर

6

अपने समाधान फिर से, मैं यह मेरे लिए काम को देखने के लिए एक समायोजन करना था - अपने etc/fstab सामग्री के बजाय, मैं मंच विषय से इस सामग्री का इस्तेमाल किया आप संदर्भ:

none /cygdrive cygdrive binary,posix=0,user,noacl 0 0 

मैं cwRsync इंस्टॉलर 4.0.3 का उपयोग कर। मुझे काफी खुशी है कि यह मेरे लिए काम करता है लेकिन मैं एक कारण नहीं दे सकता कि क्यों fstab वाक्यविन्यास और विकल्पों के साथ पर्याप्त परिचित नहीं है। उम्मीद है कि यह किसी और के लिए कुछ उपयोगी जोड़ता है।

+1

आपका भी सही जवाब हो सकता है। मैं fstab विकल्पों से परिचित नहीं हूं, इसलिए मैंने जो कुछ भी मेरे लिए काम किया है, उसे छोड़ दिया है। मुझे लगता है कि उपयोग करने का महत्वपूर्ण विकल्प 'नोएसीएल' है। शेष आपके विशिष्ट विकल्पों के आधार पर भिन्न हो सकते हैं। – anushr

2

मुझे लगा कि यह विंडोज 7 नहीं था जो इस मुद्दे को उत्पन्न कर रहा था। इसके बजाय, यह cwrsync का नया संस्करण था जो nontsec पर्यावरण var को अनदेखा कर रहा था। CwRsync संस्करणों के लिए 1.7 से अधिक, आपको noacl विकल्प का उपयोग करने की आवश्यकता है। (देखें मंच विषय: No access to subfolders of RSYNC backup folder)

समाधान noacl विकल्प के साथ एक fstab फ़ाइल बनाने शामिल है:

# In this example, my cwRsync dir is located at: "C:/Program Files (x86)/cwRsync" 
# Filename: "C:/Program Files (x86)/cwRsync/etc/fstab" 
C:/Program\040Files\040(x86)/cwRsync/ntfs override,binary,noacl 0 0 
C:/Program\040Files\040(x86)/cwRsync/bin /usr/bin ntfs override,binary,noacl 0 0 

और बस हो गया! आप CYGWIN=nontsec env var को भी हटा सकते हैं क्योंकि इसका अब उपयोग नहीं किया जा रहा है।

2

मुझे अपने सोलारिस आधारित वेबहोस्ट से अपने स्थानीय पीसी पर कॉपी करने में यही समस्या हो रही थी। फ़ाइलों की प्रतिलिपि बनाते समय पीसी अनुमतियां बर्बाद हो गईं। मैं fstab फ़ाइल सेटअप लेकिन कोई नहीं जाओ।

अंत में मुझे एहसास हुआ कि मैं rsync.exe पर एक पूर्ण पथ कॉल कर रहा था जिसका मतलब था कि मेरी वर्तमान निर्देशिका आदि फ़ोल्डर को अभी तक नहीं उठा रहा था। इसे हल करने के लिए, मैंने इन लाइनों को सिर्फ rsync कमांड पर कॉल के ऊपर जोड़ा और यह पूरी तरह से काम किया।

SET CWRSYNCHOME=%PROGRAMFILES%\CWRSYNC 
c: 
cd %CWRSYNCHOME% 

अब मेरी फ़ाइल अनुमतियां बिना किसी समस्या के मूल फ़ोल्डर अनुमतियों को डिफ़ॉल्ट रूप से डिफॉल्ट कर रही हैं।

मैं इसे इस धागे पर टैग करना चाहता था अगर भविष्य में कोई और भी उसी मुद्दे पर आ रहा है।

+0

यह अतिरिक्त जोड़ा मेरे मामले – justanotherdev

2

यह भी cwrsync सवाल जवाब में अब संबोधित किया जाता है: http://www.itefix.no/i2/node/11324

मैं भी सवाल जवाब में ठीक रिपोर्ट कर सकते हैं (और उठाएँ का जवाब देने के) के रूप में अच्छी तरह से मेरे लिए काम किया।

+0

के लिए काम किया है, मैं इसे ठीक करना चाहता हूं, लेकिन यह मेरे लिए मदद नहीं कर रहा है। शायद मेरा fstab सही स्थान या कुछ में नहीं है। –

1

मुझे एक ही समस्या थी, लेकिन मेरे समाधानों में से कोई भी मेरे लिए काम नहीं करता, जब तक मुझे एहसास हुआ कि मेरा गंतव्य फ़ोल्डर rsync फ़ोल्डर के बाहर था। (मैं Windows के लिए लिनक्स से फाइल rsync करना चाहता था।)

यहाँ क्या मेरे लिए काम किया है:

  1. cwRsync फ़ोल्डर के अंदर एक subdir etc बनाएं (अर्थात, जहां rsync.exe बसता था)।

  2. उस फ़ोल्डर के अंदर fstab (कोई प्रत्यय नहीं) नाम की एक फ़ाइल बनाएं।

  3. सम्मिलित एक है कि fstab फ़ाइल में लाइन, यूनिक्स लाइन अंत करने के लिए सुनिश्चित करें!

    none /cygdrive cygdrive binary,posix=0,user,noacl 0 0 
    
  4. सेट पर्यावरण:

    cd <Destination folder> 
    

SET HOME हिस्सा है:

SET CWRSYNCHOME=<cwRsync installation path> 
SET HOME=<Directory to save user configuration files, like ssh known_hosts> 
  • rsync.exe शुरू करने से पहले (यह मेरे मामले में सबसे महत्वपूर्ण कदम था) एसएसएच के लिए महत्वपूर्ण है, यहके साथ .ssh उपफोल्डर बनाएगाफ़ाइल।