Linux学习笔记(系统日常管理-4)
scp:同步数据,可以增量拷贝(相同的就不覆盖)
scp -r a/ [root@]ip:/b:把a的目录下的文件拷贝到b目录下
scp -r /root/ 10.10.10.26:/homt/champly/a/:如果出现这个
则在对方机器上安装scp:yum install-y openssh-clients:
然后再试一次命令:
结果:
远程服务器:
本地服务器:
rsync:同步数据
rsync /目录1 /目录2:同步本地目录
-a:归档模式,表示以递归方式传输文件,并保持所有属性,等同于-rlptgoD, -a选项后面可以跟一个 --no-OPTION 这个表示关闭-rlptgoD中的某一个例如-a--no-l 等同于-rptgoD(必须要带的,里面带有l,o,p,D,g)
-r:对子目录以递归模式处理,主要是针对目录来说的,如果单独传一个文件不需要加-r,但是传输的是目录必须加-r选项
-v:可视,打印一些信息出来,比如速率,文件数量等
-l:保留软链接(只是拷贝链接文件)
-L:向对待常规文件一样处理软链接,如果是SRC中有软链接文件,则加上该选项后将会把软链接指向的目标文件拷贝到DST(拷贝真实的文件)
-p:保持文件权限
-P:显示速度
--bwlimit=数字:限制传送速度
-o:保持文件属主信息
-g:保持文件属组信息
-D:保持设备文件信息
-t:保持文件时间信息
-z:压缩之后再传,节省宽带
-u:防覆盖(如果备份文件修改了,则跳过),在目标文件比源文件新的情况下不更新
--delete:删除那些源文件中没有备份文件中有的文件
--exclude=PATTERN:指定排除不需要传输的文件,等号后面跟文件名,可以是万用字符模式(如*.txt)
eg:rsync -avL --exclude=“1.txt” --exclude=“2.txt” /root/champly/ /home/champly
支持通配符
rsync /目录1 username@ip:/目录2:把本地目录同步到远程
rsync username@ip:/目录1 /目录2:把远程目录同步到本地
如果ssh端口号变成了2200:
rsync -avPL -e “ssh -p 2200” ip:/目录 /目录
如果不用密码登录,可以使用密钥
strace:可以追踪进程(yum install )
rsync应用实例 - 后台服务方式:
配置文件 /etc/rsyncd.conf,内容如下:
#port=873 #监听端口默认为873,也可以是别的端口
log file=/var/log/rsync.log #指定日志
pid file=/var/run/rsyncd.pid #指定pid
#address=192.168.0.10 #可以定义绑定的ip
以上部分为全局配置部分,以下为模块内的设置
[test] #为模块名,自定义
path=/root/rsync # 指定该模块对应在哪个目录下
use chroot=true #是否限定在该目录下,默认为true,当有软连接时,需要改为fasle
max connections=4 # 指定最大可以连接的客户端数
read only=no #是否为只读
list=true #是否可以列出模块名,为了安全起见,一般是取消的
uid=root #以哪个用户的身份来传输
gid=root #以哪个组的身份来传输
auth users=test #指定验证用户名,可以不设置
secrets file=/etc/rsyncd.passwd #指定密码文件,如果设定验证用户,这一项必须设置
hosts allow=192.168.0.101 #设置可以允许访问的主机,可以是网段
如果不加后面两行,就不用输入密码
密码文件/etc/rsyncd.passwd的内容格式为:username:password,权限为600
启动服务的命令是:rsync –daemon
默认去使用/etc/rsyncd.conf这个配置文件,也可以指定配置文件 rsync --daemon --config=/etc/rsyncd2.conf
可使用的选项有: rsync –daemon --help
rsync ip::test:/目录1 /目录2:使用test模块同步数据
rsync -av --password-file=filename /目录 /目录:这可以指定密码文件,可以不用输入
2015年4月22日
by:champly
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。