linux rsync安装使用
来源:互联网 发布:淘宝店铺搜索搜不出来 编辑:程序博客网 时间:2024/05/21 08:38
Rsync简介
rsync是类unix系统下的数据镜像备份工具,从软件的命名上就可以看出来了——remote sync。它的特性如下:
可以镜像保存整个目录树和文件系统。
可以很容易做到保持原来文件的权限、时间、软硬链接等等。
无须特殊权限即可安装。
优化的流程,文件传输效率高。
可以使用rcp、ssh等方式来传输文件,当然也可以通过直接的socket连接。
支持匿名传输,以方便进行网站镜象。
软件下载
rysnc的主页地址为:
http://rsync.samba.org/
目前最新版本为3.1.0pre1。可以选择从原始网站下载:
http://rsync.samba.org/ftp/rsync/
#tar -zxvf rsync-3.1.0pre1.tar.gz
#cd rsync-3.1.0pre1
#./configure --prefix=/usr/local/rsync
#make
#make install
二、配置rsync server
1、配置/etc/rsyncd.conf(需要手动创建)
rsyncd.conf的参数写在上边就是全局参数,写在模块里的就是模块参数
#vim /etc/rsyncd.conf
全局参数
uid = root //运行RSYNC守护进程的用户
gid = root //运行RSYNC守护进程的组
use chroot = no //不使用chroot
max connections = 4 // 最大连接数为4
strict modes =yes //是否检查口令文件的权限
port = 873 //默认端口873
pid file = /var/run/rsyncd.pid //pid文件的存放位置
lock file = /var/run/rsync.lock //锁文件的存放位置
log file = /var/log/rsyncd.log //日志记录文件的存放位置
模块参数
[backup] //这里是认证的模块名,在client端需要指定
path = /home/backup/ //需要做镜像的目录,不可缺少!
comment = This is a test //这个模块的注释信息
ignore errors //可以忽略一些无关的IO错误
read only = no // 是否只读
list = no //不允许列文件
auth users = caiyou //认证的用户名,如果没有这行则表明是匿名,此用户与系统用户无关
secrets file = /etc/rsync.secrets //密码和用户名对比表,密码文件自己创建
hosts allow = 192.168.1.1,10.10.10.10 //允许主机
hosts deny = 0.0.0.0/0 //禁止主机
#transfer logging = yes
2、配置rsync密码
/etc/rsync.secrets(名字随便写,只要和上边配置文件里的一致即可),格式(一行一个用户)
格式 账号:密码
#vi /etc/rsync.secrets
例子:
Hening:111111
权限:因为rsync.secrets存储了rsync服务的用户名和密码,所以非常重要。要将rsync.pas设置为root所有, 且权限为600。
#cd /etc
#chown root.root rsync.secrets
#chmod 600 rsync.secrets
3.rsyncd.motd(配置欢迎信息,可有可无)
# vi /etc/rsyncd.motd
rsyncd.motd记录了rsync服务的欢迎信息,你可以在其中输入任何文本信息,如:
Welcome to use the rsync services!
#/usr/bin/rsync --daemon --config=/etc/rsyncd.conf
四、检查是否有873端口
[root@caiyou genghui]# netstat -anltp | grep rsync
tcp 0 0 0.0.0.0:873 0.0.0.0:* LISTEN 15107/rsync
tcp 0 0 :::873 :::* LISTEN 15107/rsync
五.配置rsync client
1、设定密码
#vi /etc/rsync.pas
111111
修改权限
#cd /etc
#chown root.root rsync.pas
#chmod 600 rsync.pas
从server端取文件
rsync -vzrtopg --progress --delete hening@192.168.0.217::backup /home/backup --password-file=/etc/rsync.pas
rsync -vzrtopg --progress --password-file=/root/rsync.pas /home/backup hening@192.168.0.217::backup
请注意如果路径结束后面带有"/",表示备份该目录下的内容,但不会创建该目录,如不带"/"则创建该目录。
rsync用法:
rsync [OPTION]… SRC DEST
rsync [OPTION]… SRC [USER@]HOST:DEST
rsync [OPTION]… [USER@]HOST:SRC DEST
rsync [OPTION]… [USER@]HOST::SRC DEST
rsync [OPTION]… SRC [USER@]HOST::DEST
rsync [OPTION]… rsync://[USER@]HOST[:PORT]/SRC[DEST]
1)vi /usr/local/rsync/time.sh //制作脚本文件
把下边的内容复制进去
#!/bin/bash
/usr/bin/rsync -vzrtopg --progress --delete hening@192.168.0.217::backup /home/backup --password-file=/etc/rsync.pas
2) crontab -e
加入55 * * * * /usr/local/rsync/time.sh //每55分运行一次time.sh脚本文件
六、 iptables
iptables -A INPUT -p tcp -s ! 11.22.33.44 --dport 873 -j DROP
如此, 只有 11.22.33.44 这个 client IP 能进入这台 rsync server.
rsync命令参数
-v表示verbose详细显示
-z表示压缩
-r表示recursive递归
-t表示保持原文件创建时间
-o表示保持原文件属主
-p表示保持原文件的权限
-g表示保持原文件的所属组
-D --devices 保持设备文件信息
-a 归档模式,表示以递归方式传输文件,并保持所有文件属性,等于-rlptgoD
-P表示代替-partial和-progress两者的选项功能
-e, –rsh=COMMAND 指定使用rsh、ssh方式进行数据同步
--partial阻止rsync在传输中断时删除已拷贝的部分(如果在拷贝文件的过程中,传输被中断,rsync的默认操作是撤消前操作,即从目标机上
删除已拷贝的部分文件。)
--progress 是指显示出详细的进度情况
--delete 是指如果服务器端删除了这一文件,那么客户端也相应把文件删除,保持真正的一致。
–delete-excluded 同样删除接收端那些被该选项指定排除的文件(即使这些文件也存在于发送方)
--exclude 不包含/ins目录
--size-only 这个参数用在两个文件夹中的差别仅是源文件夹中有一些新文件,不存在重名且被修改过的文件,因为这种文件有可能会因为内容被修改可大小一样,而被略过。这个参数可以大大地提高同步的效率,因为它不需要检查同名文件的内容是否相同。
--password-file来指定密码文件,内容包含server端指定认证用户的密码。
这样就可以在脚本中使用而无需交互式地输入验证密码了,这里需要注意的是这份密码文件权限属性要设得只有属主可读。
hening@192.168.0.217::backup
hening是指server端指定认证的用户
192.168.0.217是指服务器端的ip
::backup 表示服务器端需要同步的模块名称;
- linux rsync安装使用
- Linux中安装使用rsync
- Linux备份命令rsync 安装和使用
- linux下安装rsync
- Linux下安装rsync
- Linux安装rsync
- linux rsync安装配置
- Linux版rsync安装
- linux os 安装 rsync
- RSYNC安装使用详解
- RSYNC安装使用详解
- RSYNC安装使用详解
- Rsync 安装与使用
- rsync 安装使用详解
- rsync 安装使用详解
- rsync 安装使用详解
- rsync 安装使用详解
- rsync 安装使用详解
- android.intent.action.TIME_TICK在清单文件里注册不起作用
- Android普通方式的DoPost请求提交数据
- hdu 4607 (树形DP)
- uva 327 Evaluating Simple C Expressions(遍历)
- std::map key=std::pair
- linux rsync安装使用
- 《深入理解Android》导读之init
- c++实现一个自杀程序
- oracle 11g不能导出空表的解决方法
- poj 3694 Network LCA最小公共祖先
- hdu 2212
- 遍历Map的四种方法
- POJ-1860-Currency Exchange
- tftp协议相关问题(arm板和虚拟机)