rsync वास्तव में फ़ाइलों की प्रतिलिपि नहीं बना रहा है


11

मैं अपने सर्वर से स्थानीय बॉक्स में फ़ाइलों की एक बड़ी निर्देशिका को सिंक्रनाइज़ करने का प्रयास कर रहा हूं। (दोनों उबंटू चल रहे हैं।) मेरे पास एक कमांड है जो दिखता है कि यह काम करता है, लेकिन कुछ फाइलें कॉपी नहीं की जाती हैं:

phrogz@planar:~$ cat ./sync-phrogz-public 
rsync -rztpl --stats --rsh=/usr/bin/ssh 69.46.18.236:/var/www/phrogz.net/public /var/www/phrogz.net/public

phrogz@planar:~$ ./sync-phrogz-public 
Number of files: 10320
Number of files transferred: 0
Total file size: 4221864770 bytes
Total transferred file size: 0 bytes
Literal data: 0 bytes
Matched data: 0 bytes
File list size: 197778
File list generation time: 0.001 seconds
File list transfer time: 0.000 seconds
Total bytes sent: 388
Total bytes received: 199213

sent 388 bytes  received 199213 bytes  79840.40 bytes/sec
total size is 4221864770  speedup is 21151.52

phrogz@planar:~$ la /var/www/phrogz.net/public/svg/convert*
-rw-r----- 1 phrogz www-admin 6404 2011-02-26 21:49 /var/www/phrogz.net/public/svg/convert_path_to_polygon.xhtml

phrogz@planar:~$ ssh 69.46.18.236 'ls -Fla /var/www/phrogz.net/public/svg/convert*'
-rw-r--r-- 1 phrogz phrogz 1951 2011-12-04 09:07 /var/www/phrogz.net/public/svg/convert_matrix.html
-rw-r--r-- 1 phrogz phrogz 6404 2011-02-26 21:49 /var/www/phrogz.net/public/svg/convert_path_to_polygon.xhtml

जैसा कि आप देख सकते हैं, फ़ाइल convert_matrix.htmlकॉपी नहीं हुई।

  1. यदि वास्तव में फाइलों की नकल नहीं हो रही है, तो कमांड क्या कर रहा है?
  2. मैं वास्तव में फ़ाइलों को कॉपी करने के लिए इसे कैसे प्राप्त कर सकता हूं?

3
यह संयोग से एक स्थानीय फ़ोल्डर है /var/www/phrogz.net/public/public?
enzotib

वाह, हाँ, वहाँ है! एक उत्तर के रूप में पोस्ट करें, और मुझे बताएं कि publicसबफ़ोल्डर के रूप में नहीं बनाने के लिए कमांड को कैसे बदलना है , और आपने खुद को 25 प्रतिनिधि मिला :)
Phrogz

1
अपनी स्क्रिप्ट से अंतिम "सार्वजनिक" निकालें, इसलिए यह बन जाता है: rsync -rztpl --stats --rsh=/usr/bin/ssh 69.46.18.236:/var/www/phrogz.net/public /var/www/phrogz.net- इसे करना चाहिए।
सीज़ियम

जवाबों:


18

आप अपनी आज्ञा को सरल बना सकते हैं

rsync -az --stats 69.46.18.236:/var/www/phrogz.net/public /var/www/phrogz.net/

या वैकल्पिक रूप से

rsync -az --stats 69.46.18.236:/var/www/phrogz.net/public/ /var/www/phrogz.net/public

जैसा कि आप देखते हैं, rsyncएक स्रोत के साथ या एक अनुगामी के बिना अलग-अलग व्याख्या करता है /

इसके अलावा, -aबराबर करने के लिए है -rtplogD, (अपने आदेश पंक्ति के संबंध में, -aयह भी कहते हैं -o, मालिक की रक्षा, -g, समूह बनाए रखने और -D, उपकरणों और विशेष फ़ाइलों की रक्षा)।

अंत में, --rshविकल्प बेमानी है जब स्रोत या गंतव्य host:/pathएक एकल के साथ फार्म में है :

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