2012-10-24 35 views
14

मैं सभी गंतव्य उपकरणों जहां rsync उपयोग करते हुए मेरे डेटा ट्रांसफर पूर्ण (शुरू या यहाँ तक कि) नहीं हो सकता है के रूप में उन उपकरणों इंटरनेट से कनेक्ट नहीं कर रहे हैं या देर के आंकड़ा अंतरण डिस्कनेक्ट हो गई की आईपी प्राप्त करना चाहते हैं ...rsync लॉग फ़ाइल को पूर्ण और अपूर्ण डेटा स्थानान्तरण के लिए कहां रखता है?


मेरे वास्तविक समस्या परिदृश्य है:

rsync आयकर डेस्कटॉप/sony.pdf घर @ एबीसीडी: ssh:

की मेजबानी के लिए कोई मार्ग नहीं है और मैं की सूची चाहते हैं: ABCD बंदरगाह 22 की मेजबानी करने के लिए कनेक्ट इस तरह के सभी IP जहां आंकड़ा अंतरण complted नहीं किया जा सका ...

'एबीसीडी' की तरह सभी IP की सूची

उत्तर

2

मैं पर्ल में काम करते हैं (कमांड लाइन में):

:

# perl -ne ' 
    ($conn{$2}->{"ip"},$conn{$2}->{"started"})=($3,$1) if 
     /^(.{15}).*rsyncd\[(\d+)\]:\sconnect.*\((\d+\.\d+\.\d+\.\d+)\)/; 
    $conn{$2}->{"closed"}=$1 if /(.{15}).*rsyncd\[(\d+)\]:\ssent\s.*\stotal/; 
    END { 
     print "Good:\n"; 
     map{ 
      printf "%s %-16s %s\n", 
       $conn{$_}->{"started"},$conn{$_}->{"ip"},$conn{$_}->{"closed"} if 
        $conn{$_}->{"closed"}; 
      } sort { $conn{$a}->{"started"} cmp $conn{$b}->{"started"} 
      } keys %conn; 
     print "Unterminated:\n"; 
     map{ 
      printf "%s %s\n",$conn{$_}->{"started"},$conn{$_}->{"ip"}; 
      } sort { $conn{$a}->{"started"} cmp $conn{$b}->{"started"} 
      } grep { ! defined $conn{$_}->{"closed"} 
      } keys %conn; 
    }' < /var/log/daemon.log 

इस तरह आउटपुट उत्पादन कर सकता है 210

Good: 
Apr 28 08:12:01 127.0.0.1  Apr 28 08:15:35 
Apr 28 08:27:01 192.168.1.36  Apr 28 08:28:04 
Apr 28 08:42:01 127.0.0.1  Apr 28 08:42:13 
Apr 28 08:57:01 192.168.1.36  Apr 28 08:57:16 
Apr 28 09:12:01 127.0.0.1  Apr 28 09:12:28 
Apr 28 09:27:01 192.168.1.36  Apr 28 09:27:13 
Apr 28 09:42:01 127.0.0.1  Apr 28 09:42:09 
Apr 28 09:57:02 192.168.1.36  Apr 28 09:57:16 
Apr 28 10:12:01 127.0.0.1  Apr 28 10:12:32 
Apr 28 10:27:01 192.168.1.36  Apr 28 10:27:12 
Apr 28 10:42:01 127.0.0.1  Apr 28 10:42:14 
Apr 28 10:57:01 192.168.1.36  Apr 28 10:57:13 
Apr 28 11:27:01 192.168.1.36  Apr 28 11:28:01 
Apr 28 11:42:01 127.0.0.1  Apr 28 11:44:32 
Apr 28 11:57:02 192.168.1.36  Apr 28 11:58:43 
Apr 28 12:12:01 127.0.0.1  Apr 28 12:12:27 
Apr 28 12:27:01 192.168.1.36  Apr 28 12:28:48 
Apr 28 12:42:01 127.0.0.1  Apr 28 12:42:13 
Apr 28 12:57:01 192.168.1.36  Apr 28 12:57:56 
Unterminated: 
Apr 28 11:12:01 127.0.0.1 
+0

का उपयोग करना याद रखें आपके उत्तर के लिए धन्यवाद। लेकिन मेरे पास deamon.log के अंदर/var/log के अंदर कोई फ़ाइल नहीं है !! – user1709815

26

आप कह सकते हैं जहां लॉग फ़ाइल (प्रति आदमी पेज प्रलेखन) है:

 
--log-file=FILE   override the "log file" setting 
+4

+1 मेरे उत्तर से बेहतर। –

+0

आपने किस लिनक्स वितरण का परीक्षण किया है? मुझे मिलता है -> rsync: --log-file =/root/.rsyncd.log: अज्ञात विकल्प – Proverbio

+1

सुविधा rsync संस्करण 2.6.9 (6 नवंबर 2006) में जोड़ा गया था। आप यहां परिवर्तन लॉग देख सकते हैं: http://rsync.samba.org/ftp/rsync/src/rsync-2.6.9-NEWS क्योंकि परिवर्तन इतना पुराना है, मुझे लगता है कि अधिकांश वितरण जो अद्यतित है यह सुविधा होगी। मैंने मैनड्रिवा एंटरप्राइज़ सर्वर का उपयोग किया जो कि उनके मुफ़्त संस्करण की 200 9 रिलीज पर आधारित है। – kbulgrien

1

सिस्टम लॉग में rsync के सबूत के लिए खोजें। उदाहरण के लिए:

 
sudo grep -ir rsync /var/log 

उस मामले के लिए, आप grep/हालांकि यह अधिक हो सकता है।

3

लोगो इंफोस सामान्य रूप से syslog डिमन, के माध्यम से भेजा जाता है जब rsync डिमन मोड में चलाया जाता है। या गंतव्य होस्ट में लॉग

rsync --log-file=$HOME/.rsyncd.log -t Desktop/sony.pdf [email protected]: 

की बचत करने में लॉग को बचाने के लिए के लिए

rsync --rsync-path='/usr/bin/rsync --log-file=$HOME/.rsyncd.log' -t Desktop/sony.pdf [email protected]: 

:

आप someting लॉग इन करने जब SSH पर rsync का उपयोग चाहते हैं, आप आदेश पंक्ति में विकल्प डाल करने के लिए है स्रोत होस्ट