问题:
工作背景:
1. 局域网内两台PC机,一台用作rsync服务器,一台用作rsync客户端,两者以C/S方式(即客户连接远程rsync 服务器,用户验证由rsync 服务器负责)而非远程shell方式(即用户验证由远程shell负责,shell一半使用ssh)进行文件同步;
2. rsync服务器端使用xinetd方式运行rsync服务,即使用/etc/xinetd.d/rsync作为配置文件,以service xinetd restart来启动服务;
3. 从客户端同步服务器端的文件时,出现错误如下:
u1204@u1204-zhw:~/wrk/tmp/tmp$ rsync -a root@192.168.1.144::web_backup/ . rsync: failed to connect to 192.168.1.144 (192.168.1.144): Connection refused (111) rsync error: error in socket IO (code 10) at clientserver.c(128) [Receiver=3.1.0pre1]
解决办法:
1. 该问题属于服务器端服务未启动所造成。
检查rsync服务是否已经启动,
u1204@u1204-zhw:/tftpboot$ ps -ef | grep rsync
root 25509 1 0 15:02 ? 00:00:05 gvim /etc/rsyncd.conf
u1204 26629 5681 0 16:01 pts/5 00:00:00 grep --color=auto rsync 可以看到rsync服务并没有启动。
手动启动rsync服务,
u1204@u1204-zhw:/tftpboot$ sudo rsync --daemon
u1204@u1204-zhw:/tftpboot$ ps -ef | grep rsync root 25509 1 0 15:02 ? 00:00:07 gvim /etc/rsyncd.conf root 26800 1 0 16:05 ? 00:00:00 rsync --daemon u1204 26824 5681 0 16:07 pts/5 00:00:00 grep --color=auto rsync可以看到rsync服务已经启动了。
2. 从客户端重新进行文件同步操作。
# /usr/local/rsync -a root@192.168.1.144::web_backup . Password: # ls msg_info.txt hello.txt hello.cpp hello.c hello可以看到服务器端的文件同步到本地目录了。
问题解决。