Windows + गैर- ASCII फ़ाइल नामों पर rsync


7

क्या इसका एक संस्करण rsyncवर्तमान विंडोज संस्करणों पर चलता है और गैर-एएससीआईआई फ़ाइल नामों को संभाल सकता है? मैंने जो भी संस्करण (cwRsync और rsync.net क्लाइंट सहित) की जाँच की, वह नाम के यूनिकोड वर्णों वाली फ़ाइलों पर बुरी तरह से विफल हैं।

यदि इस तरह का संस्करण rsyncमौजूद नहीं है, तो मैं विंडोज और लिनक्स के बीच फाइलों के बैंडविड्थ-कुशल सिंक्रनाइज़ेशन के लिए किस अन्य उपकरण का उपयोग कर सकता हूं?

मैं अपेक्षाकृत धीमी लिंक पर बड़ी, शायद ही कभी फ़ाइल पेड़ों को बदल रहा हूं। Rsync- शैली सिंक्रनाइज़ेशन और पूर्ण-प्रतिलिपि दृष्टिकोणों के बीच का अंतर महत्वपूर्ण है।


यह परीक्षण नहीं किया गया है, लेकिन cygwin स्थापित करने और उनके rsync का उपयोग करने के बारे में क्या?
गोगेटर्स

@ केविनवीडब्ल्यू: ने इसका परीक्षण किया है, rsyncमैं जिस कीड़े के बारे में शिकायत कर रहा हूं , उसका साइबर संस्करण प्रदर्शित करता है।
9000

क्या आपने पहले ही --iconvविकल्प का उपयोग करने की कोशिश की है?
कलाकार

1
@ कार्टिस्टोक्स: हाँ, --iconvवास्तव में समस्या का समाधान करता है। कृपया अपनी टिप्पणी एक उत्तर में दें ताकि मैं इसे स्वीकार कर सकूं :)
9000

जवाबों:


8

rsync --iconvफ़ाइल नाम वर्ण एन्कोडिंग रूपांतरण के लिए एक विकल्प प्रदान करता है । यह स्रोत और लक्ष्य एन्कोडिंग पर ठीक-ठीक नियंत्रण के लिए तर्कों को स्वीकार करता है।

Rsync मैन पेज से:

[...] you can fully specify what conversion to do by giving a 
local and a remote charset separated by a comma in the 
order --iconv=LOCAL,REMOTE, e.g.  --iconv=utf8,iso88591.

1
मैं अपनी फ़ाइलों का बैकअप लेने के लिए सर्वर के रूप में लिनक्स में rsync डेमॉन का उपयोग कर रहा हूं। क्लाइंट cwRsync फ़ाइलों को भेजने के लिए विंडोज़ में। मैं फ़ाइल नाम एन्कोडिंग समस्या का भी सामना करता हूं। जब मैंने --iconv=gbk,utf8कमांड लाइन आर्ग्स में जोड़ा , तो नीचे त्रुटि हुई। मैं इसे कैसे स्वीकार कर सकता हूं? वृद्धिशील फ़ाइल सूची rsync भेजना: writefd_unbuffered 4 बाइट्स लिखने में विफल रहा [प्रेषक]: सहकर्मी द्वारा कनेक्शन रीसेट (104) rsync: त्रुटि पढ़ें: कनेक्शन रीसेट सहकर्मी (104) rsync त्रुटि: rsync प्रोटोकॉल डेटा स्ट्रीम में त्रुटि (कोड 12) / पर घर / लैपो / पैकेजिंग / rsync-3.0.4-1 / src / rsync-3.0.4 / io.c (791) [प्रेषक = 3.0.4]
IlPADlI

आपको एक अलग प्रश्न के रूप में पोस्ट करना चाहिए
कलाकारो

लेकिन आपकी समस्या यह बताती है कि यहाँ क्या वर्णित है: askubuntu.com/questions/249853/…
कलाकारो

2

यदि आपने DeltaCopy का उपयोग करने का प्रयास किया है, तो http://www.oki-osk.jp/esc/utf8-cygwin/ से UTF-8 सक्षम सायग्विन (= cygwin1.dll) प्राप्त करें और समाधान जापन्स के लिए आवश्यक है। कम से कम 2006 के बाद से पड़ा है।

दो बार 7zip का उपयोग करके dll बाइनरी को अनपैक करें। फिर अपने DeltaCopy प्रोग्राम फ़ोल्डर से मूल cygwin1.dll निकालें और इसके बजाय नया डालें। खबरदार: पुराने और नए बिल्कुल समान दिखावे के हैं। यह स्पष्ट रखें कि कौन सा नया है। क्लाइंट और सर्वर में dll बदलने के बाद, ट्रांसमिशन दो विंडोज मशीनों के बीच ठीक काम करता है। अफसोस की बात है कि क्लाइंट कंसोल जिबरिश प्रदर्शित करता है जब यह कुछ फाइलनाम को मल्टीबैट यूटीएफ -8 चार्ट में दिखाने की कोशिश करता है, लेकिन ट्रांसस्मिन काम करता है।

मैंने कोशिश नहीं की है कि क्या होता है यदि बैकअप सर्वर में लिनक्स या कुछ और UNIX-resemblant (उदाहरण के लिए Nas4Free) और केवल विंडोज मशीन में क्लाइंट तय हो।

स्पष्ट रूप से rsync UTF-8 को संभालता है, लेकिन साइबरविन नहीं करता है। डेल्टाकॉपी की साइबरविन में UTF-8 फ़ाइलनाम पहली बार गलत वर्तनी में हैं और जब किसी फ़ाइल की प्रतिलिपि बनाने की कोशिश की जाती है, तो फ़ाइल गायब हो जाती है।


1
टूटा हुआ लिंक 404
हरनैन ईच
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.