rsync को rsync- पथ की आवश्यकता होती है जब दूरस्थ rsync पथ में होता है


11

मैं काफी उलझन में हूं कि rsync की आवश्यकता क्यों है --rsync-path ध्वज तब भी जब दूरस्थ rsync पथ में है।

विचार करें:

$ rsync -avze 'ssh -p 22' --delete public/ pmatos@domain.com:~/public_html
bash: /usr/local/bin/rsync: No such file or directory
rsync: connection unexpectedly closed (0 bytes received so far) [sender]
rsync error: remote command not found (code 127) at io.c(601) [sender=3.0.7]

फिर मैंने जोड़ने की कोशिश की --rsync-path

$ rsync -avze 'ssh -p 22' --rsync-path=/usr/bin/rsync  --delete public/ pmatos@domain.com:~/public_html
sending incremental file list
...

तो, पहला rsync सफल नहीं था क्योंकि यह / usr / लोकल / बिन में rsync की खोज कर रहा था, लेकिन जैसे ही मैं-sync-path का उपयोग करके rsync के लिए स्पष्ट पथ पास करता हूं, तब यह काम करता है।

ऐसा क्यों है? (यह कमांड लाइन ऑक्टोप्रेस में रेक द्वारा जारी एक है)


क्या आपके पास गंतव्य स्थान पर कोई मजबूर कमांड है? .Bashrc या .profile में कुछ भी जो स्थानीय वातावरण चर सेट कर सकता है?
स्मॉलक्लैंगर

$ cat ~/.bashrc | grep PATHकुछ नहीं देता।
पाउलो माटोस

यदि आप बस अपने आप में ssh और चलाते हैं which rsyncतो आपको क्या मिलता है?
स्मॉलक्लैंगर

2
$ ssh pmatos@domain.com which rsyncरिटर्न/usr/bin/rsync
पाउलो माटोस

अजीब। तिनके पर बंद, अब: क्या शायद आपका स्थानीय rsync aliasएड rsync --rsync-path(या कुछ अन्य स्थानीय आवरण) है?
स्मॉलक्लैंगर

जवाबों:


2

मेरी स्मृति अब इस पर काफी फजी है लेकिन इसका कारण यह था कि मैंने कुछ समय पर rsync पर GNU स्टोव का उपयोग किया था और कुछ सीलिंक्स बनाईं जो उलझन में हैं rsync। यह बहुत बाल खींचने के बाद हल किया गया था। मैं अब बालों पर बहुत हल्का हूं लेकिन दूसरी तरफ मेरे पास काम है rsync। अगर तुम मुझसे पूछते हो तो यह जीत होनी चाहिए।

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