10.32/10.33 rsync通过服务同步
• rsync服务方式同步
服务方式的架构为C/S架构,需要开启rsync服务,并且需要监听一个端口(默认为873),监听端口可自定义,开启服务后,客户端即可通过监听端口与服务端进行通信以及传输数据。
• 命令格式
rsync -av 源文件路径 服务端IP::模块名称/目标次级路径/目标文件名 //推文件 客户端--》服务端
rsync -av 服务端IP::模块名称/源次级路径/源文件名 目标文件路径 //拉文件 服务端--》客户端(在客户端操作)
启动服务之前需要先编辑配置文件/etc/rsyncd.conf(默认地址)
• 启动服务
rsync --daemon //配置文件的默认路径未改变
注:当配置文件的地址发生改变时,需要在原有命令后加上--config=指定配置文件的路径,即可启动服务
• 修改配置文件/etc/rsyncd.conf
port=873
log file=/var/log/rsync.log
pid file=/var/run/rsyncd.pid
address=192.168.88.5
[test]
path=/root/rsync
use chroot=true
max connections=4
read only=no
list=true
uid=root
gid=root
auth users=test
secrets file=/etc/rsyncd.passwd
hosts allow=192.168.88.10 1.1.1.1 2.2.2.2 192.168.88.0/24
• port:指定在哪个端口启动rsyncd服务,默认是873端口(如果修改了默认端口,则在同步文件时需要额 外加上--port 目标端口,即可进行同步)。
• log file:指定日志文件。
• pid file:指定pid文件,这个文件的作用涉及服务的启动、停止等进程管理操作。
• address:指定启动rsyncd服务的IP。假如你的机器有多个IP,就可以指定由其中一个启动rsyncd服务, 如果不指定该参数,默认是在全部IP上启动。
• []:指定模块名,里面内容自定义。
• path:指定数据存放的路径。
• use chroot true|false:表示在传输文件前首先chroot到path参数所指定的目录下。这样做的原因是实现 额外的安全防护,但缺点是需要以roots权限,并且不能备份指向外部的符号连接所指向的目录文件。默 认情况下chroot值为true,如果你的数据当中有软连接文件,建议设置成false
• max connections:指定最大的连接数,默认是0,即没有限制。
• read only ture|false:如果为true,则不能上传到该模块指定的路径下。
• list:表示当用户查询该服务器上的可用模块时,该模块是否被列出,设定为true则列出,false则隐藏。
(查询模块:rsync 服务端IP::)
• uid/gid:指定传输文件时以哪个用户/组的身份传输。
• auth users:指定传输时要使用的用户名。
• secrets file:指定密码文件,该参数连同上面的参数如果不指定,则不使用密码验证。注意该密码文件的 权限一定要是600。格式:用户名:密码
当设置了auth users和secrets file后,客户端连服务端也需要用用户名密码了,若想在命令行中带上密码(客户端免除输入密码的过程),可以在客户端也设定一个密码文件,注意该密码文件的权限一定也是600。格式:密码
rsync -av 源文件路径 --password-file=客户端密码文件所在目录 配置文件中指定的用户名@服务端IP::模块名称/目标文件
• hosts allow:表示被允许连接该模块的主机,可以是IP或者网段,如果是多个,中间用空格隔开。
• 同步文件
[root@linux-10 rsync]# rsync -avP /tmp/rsync/lem123456.txt 192.168.88.5::test/lem123.txt
//将文件同步上传至服务器
[root@linux-10 rsync]# rsync -avP 192.168.88.5::test/lem123.txt /tmp/rsync/lem123456.txt
//将文件从服务器同步下载至客户端
启动服务后,客户端(linux-10)可以向服务端(linux-5)同步文件,“::”后接模块名称(配置文件中方括号内的名字),相当于模块的路径(本例中为/root/rsync),后接文件名(如还有次级目录则先写次级目录)
注:同步时可能会出现错误,可从3个方面进行排查
1、客户端与服务端网络是否连通(ping)
2、客户端与服务端端口是否连通(telnet)
3、客户端与服务端是否被防火墙拦截(firewalld)
10.34 linux系统日志
Linux系统中很多的信息以及错误都会记录在日志当中,而不是显示在屏幕上。
• Linux系统日志
/var/log/messages //可直接查看
Linux系统具有日志切割机制,当系统日志增长到一定级别时,logrotate服务会将系统日志自动切割
[root@linux-5 ~]# ls /var/log/messages*
/var/log/messages /var/log/messages-20180422 /var/log/messages-20180505 /var/log/messages-20180507 /var/log/messages-20180515
• 查看Linux系统硬件相关日志
dmesg
• 系统启动日志
/var/log/dmesg //可直接查看
• 查看正确的登录历史
last
last命令,实际上调用的日志文件/var/log/wtmp,这个日志文件是二进制文件,只能用last命令查看,不能直接查看。
• 查看登录失败的登录历史
lastb
lastb命令,实际上调用的日志文件/var/log/btmp,这个日志文件是二进制文件,只能用lastb命令查看,不能直接查看。
如果有人尝试暴力破解,则通过lastb命令会查询到很多日志
• 查看安全日志
/var/log/secure //可直接查看
10.35 screen工具
screen是一个虚拟终端
为了不让一个任务意外中断,有两种办法
1、把命令移动到后台执行
nohup command &
2、通过screen工具(可在退出远程连接前把screen终端移至后台,即可在日后随时用随时调出,便于查看 具体运行情况)
screen
直接输入screen回车就进入了虚拟终端
• screen终端移至后台
Ctrl a + d
[root@linux-5 ~]# screen
[detached from 1617.pts-0.linux-5]
注:1617代表虚拟终端的ID
• 查看虚拟终端列表
[root@linux-5 ~]# screen -ls
There are screens on:
1617.pts-0.linux-5 (Detached)
1602.pts-0.linux-5 (Detached)
1558.pts-0.linux-5 (Detached)
• 退出虚拟终端
在虚拟终端中输入 exit
• 返回虚拟终端
screen -r 指定screen终端ID
• 创建虚拟终端并自定义虚拟终端名称
screen -S “虚拟终端名称” //名称外双引号可加可不加