您的位置:首页 > 运维架构 > Linux

第十六天:Before -- CMD(rsync)

2015-09-27 20:36 549 查看
小Q:很多很多时候,我们总会逼着自己向前走,不是因为前方的风景多么迷人,而是身后的现实太残酷了。
今天下午差点困死,眼睛一直在迷迷糊糊,不过还是死撑着把日常管理部分做了个小结尾;还好今天早上做得不错,学习了登录相关的一些小技巧;下午一遍遍的听也算是把同步备份数据的 rsync 工具做了个不深入的了解。
简介:
Rsync(remote synchronize)是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件;
其实 rcp 命令也可以完成数据同步备份的功能;
但是Rsync使用所谓的“Rsync算法”来使本地和远程两个主机之间的文件达到同步,这个算法只传送两个文件的不同部分,而不是每次都整份传送,因此速度相当快。
两 大 用 法 :

remote shell (sshd)服务

启 用 服 务 :servise shdd start
远程>本地(拉):rsync -av 192.168.1.10:/tmp/111 /tmp/bendi

本地>远程(推):rsync -av /tmp/bendi 192.168.10.11:/tmp/yuancheng
rsync deamon 后台服务 (用于监听端口,守护进程)

启 用 服 务 :编辑/etc/xinetd.d/rsync文件,将其中的disable=yes改为disable=no
并重启xinetd服务,其实这个我不确定,在网上摘抄的;

远程>本地(拉):rsync -av 192.168.10.12::teng/123/ /tmp/local/
本地>远程(推):rsync -av /tmp/local/ 192.168.10.12::teng/far/

基 本 选 项 :

-a = -rlgptoD
-r 可以同步目录下的目录 -t 同步时间
-go 同时同步所属主所属组 -D 和设备相关
-l 同步软连接,但是要存在指向的文件 -v 可视化

-P 比v显示的东西多,在同步大文件的时候可以查看进度

-L 同步软链接,目的地没有指向文件时,便新建一份指向文件

-z 压缩,用于远程同步时,节省带宽
--delete 同步时删除目录下多余的文件
-u = --updata 避免覆盖目标机上的文件
--exclude=‘名’ 过虑某些文件
同步时:目录后最好加上 / ,否则只会同步目录,而不会同步目录下的东西

ssh服务简单用法:
举 例 :rsync -avPz -e "ssh -p 80" 192.168.2.1:/tmp/111/ /tmp/local/
将192.168.2.1服务器的/tmp/111/目录下文件通过80端口,以压缩
同步时间显示详细信息 的同步到本地的/tmp/local下
-e "ssh -p 80" = "--rsh = ssh -p 80" 指定端口

rsync deamon 后台服务:
我理解哈:这种方法很复杂,不过安全性很高,因为他验证的东西太多啦。

配我们最好按置文件要自己建,默的方法配置,建立 /etc/rsynv.conf 文件
它可以被自动加载;自定义文件名的话,需手动加载,我还不会????
格式:
rsync -avPz --port 8730 @teng192.168.1.10::teng/tmp/1.txt /tmp/
--port 8730 指定端口 @teng 对方配置的用户名 teng 模块
配置文件:

port=8730                                         指定可以访问的端口
log file=/var/log/rsync.log                       指定日志文件位置
pid file=/var/run/rsync.pid                       指定进程文件位置
address=                                          指定访问的IP,不写默认允许所有人可访问
【teng】                                          模块名,随意
path=/tmp/rsync                                   与下有关,指定可以同步数据的目录
use chroot=yes                                    yes只能同步上边的目录,no得话限制无效
max connections=4                                 限制的最大连接数
read only=yes                                     yes是只读,只允许拉,yes才可以推送
list=yes                                    rsync --port 8730 IP 可以看到模块名,no则屏蔽
uid=root
gid=root                                          指定来访用户的身份
auth users=teng                                   就是上面的@teng,限制同步的名字
secrets file=/etc/rc.passwd                       设置密码,来访的用户要输入密码
host allow=IP IP2 IP3                             指定哪个IP可以来访问同步文件
【模块二】
path=/tmp/rsync
以下的东西不写,代表不需要验证所有人可以同步文件
启动配置文件: rsync --deamon
查看现有进程: ps aux | grep rsync
密 码 文 件 :
根据配置中密码文件路径,新建文件
格 式 : 用户名:密码
远程用户每次要同步数据的话,都要输入密码,对于我们是远程用户来说,太麻烦了,我们也可以建立一个密码文件,免去输入的繁琐;
但我们在同步数据时要加一串选项,见下:
--passwd -file = /etc/rsync_passwd
建的密码文件要同上一致,而密码格式也要同上上;(每个文件只能有一个密码)

防 火 墙 命 令 :
检测远程端口是否开启: telnet IP port
查看开启的端口: netstat -anp/-untpl
关闭端口 : iptables -I INPUT -p tcp --dport 22 -j DROP
扩展: http://blog.chinaunix.net/uid-10362953-id-2961174.html

昨天+今天的问题:


























内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Linux cmd rsync