10.28 rsync工具介绍10.28 rsync工具介绍10.32/10.33 rsync通过服务同步 10.34 linux系统日志 10.35 screen工具

 

八周二次课

10.28 rsync工具介绍

10.29/10.30 rsync常用选项

10.31 rsync通过ssh同步

10.28 rsync工具介绍

• rsync:支持增量同步以及远程同步

yum install -y rsync

• rsync格式

rsync [OPTION] … SRC DEST

rsync [OPTION] … SRC [user@]host:DEST

rsync [OPTION] … [user@]host:SRC DEST

rsync [OPTION] … SRC [user@]host::DEST

rsync [OPTION] … [user@]host::SRC DEST

OPTION //命令选项

SRC //源目录

DEST //目标目录

user //用户名

host //主机IP地址

10.29/10.30 rsync常用选项

• rsync常用选项

-a //包含-rtplgoD

-r //同步目录时要加上,类似cp时的-r选项

-v //同步时显示一些信息,让我们知道同步的过程

-l //保留软连接

-L //加上该选项后,同步软链接时会把源文件给同步

-p //保持文件的权限属性

-o //保持文件的属主

-g //保持文件的属组

-D //保持设备文件信息

-t //保持文件的时间属性

--delete //删除DEST中SRC没有的文件

--exclude //过滤指定文件,如--exclude “logs”会把文件名包含logs的文件或者目录过滤掉,不同步

-P //显示同步过程,比如速率,比-v更加详细

-u //加上该选项后,如果DEST中的文件比SRC新,则不同步

-z //传输时压缩(传输前压缩,传输后自动解压)

注:使用L时,会将-l以及-a中的l命令的作用覆盖

rsync -av --exclude "log*" --exclude "*.txt" SRC DEST

--exclude 选项不支持连写,需要过滤多个文件时,每一个文件前都要加--exclude选项

10.31 rsync通过ssh同步

在使用rsync远程同步文件时,需要双方主机均安装rsync插件,否则同步会产生报错。

• 推文件

rsync -av /etc/passwd [email protected]:/tmp/1.txt

• 拉文件(反向同步)

rsync -av 192.168.88.50:lem2/ /tmp/lem/

• 指定目标端口远程同步(默认为22端口)

rsync -av -e "ssh -p 22" lem/ 192.168.88.50:/tmp/lem2/

  

八周三次课

10.32/10.33 rsync通过服务同步

10.34 linux系统日志

10.35 screen工具

扩展

1. Linux日志文件总管logrotate  http://linux.cn/article-4126-1.html

2. xargs用法详解 http://blog.csdn.net/zhangfn2011/article/details/6776925

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=truemax connections=4read only=nolist=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 -lsThere 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 “虚拟终端名称” //名称外双引号可加可不加

猜你喜欢

转载自blog.csdn.net/weixin_42213920/article/details/82220150