# tar zxvf rsync-3.0.4.tar.gz -C /opt/
# cd /opt/rsync-3.0.4/
# ./configure
# make
# make install
启动服务
# /usr/local/bin/rsync --daemon
自动启动设定
# echo "/usr/local/bin/rsync --daemon" >> /etc/rc.local
服务停止
# kill `cat /var/run/rsyncd.pid`
服务器端配置文件/etc/rsyncd.conf
# vi /etc/rsyncd.conf
uid = nobody
gid = nobody
use chroot = no
max connections = 2
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock
log file = /var/log/rsyncd.log
[data]
path = /var/data //同步备份文件目录
ignore errors
read only = true
list = false
hosts allow = client_ip //客户端IP地址
hosts deny = 0.0.0.0/32
auth users =username
secrets file =/etc/backserver.pas
密码文件设定
# echo "username:password" >> /etc/backserver.pas
# chmod 400 /etc/backserver.pas
安装rsync客户端
# tar zxvf rsync-3.0.4.tar.gz -C /opt/
# cd /opt/rsync-3.0.4/
# ./configure
# make
# make install
密码文件设定
# echo "password" >> /etc/backserver.pas
# chmod 400 /etc/backserver.pas
备份计划设定
# crontab -e
* 1 * * * /usr/local/bin/rsync -vzrtopg --delete --progress username@serverip::data /opt/rsync_bk/ --password-file=/etc/backserver.pas
前面五个*号含义如下:
分钟(0-59)小時(0-23) 日期(1-31) 月份(1-12) 星期(0-6)//0是星期天
客户端命令:
# /usr/local/bin/rsync -vzrtopg --delete --progress backup@serverip::d
ata /opt/rsync_bk/ --password-file=/etc/backserver.pas
查看密码文件:
# cat /etc/backserver.pas
123 //客户端的密码文件里只保存了密码
配置自动SSH登录
使用公/私钥的思路是,在您的工作站上,创建一个密钥对,一个公钥和一个私钥。接下来,将公钥拷贝到服务器的~/.ssh/authorized_keys文件中(~指的是当前用户的主目录)。下次,当您在工作站上启动一个SSH命令时,它会首先自动尝试通过您的公或私钥对进行连接。工作站使用私钥生成一个加密包,如果服务器可以进行解密,工作站就可以100%的确认您的身份,而您就可以不输入密码而得到认证。要创建此配置,应该执行以下过程:
在工作站上,使用ssh-keygen –t dsa命令,并只按Enter,以接受所有的默认回答。这样,系统会产生一个名为~/.ssh/id_dsa的文件,该文件为您的私钥,以及一个~/.ssh/id_dsa.pub文件,作为您的公钥。
现在,使用ssh-copy-id命令将公钥拷贝到您服务器的主目录中。下面的命令会帮助您实现这个目的:
ssh-copy-id -i ~/.ssh/id_dsa.pub 192.168.1.98
通过使用这个命令,在服务器上创建了一个.ssh/authorized_keys文件,并允许您通过公/私钥对进行登陆。
在执行这些步骤之后,您现在可以通过下列的命令登陆到远程服务器:
ssh 192.168.1.98
可以看到,现在您能不输入密码就进行登陆了。