一、rsync通过服务同步
1、要编辑配置文件:/etc/rsyncd.conf 2、启动rsync --daemon (检测是否启动:ps aux |grep rsync) 3、格式:rsync -av test1/192.168.133.11.130::module/dir/
例:从b机用rsync服务同步文件到a机 1、在a机上编辑:/etc/rsyncd.conf文件。加入下面一段rsync.conf的样例,更改储存路径为/tmp/rsync ,
port=873 //指定端口
log file=/var/log/rsync.log //指定日志文件路径
pid file=/var/run/rsyncd.pid //指定pid文件,涉及服务的启动、停止等操作
address=192.168.133.130 //指定启动rsyncd服务的IP。假如你的机器有多个IP,就可以指定由其中一个启动rsyncd服务,如果不指定该参数,默认是在全部IP上启动。
[test] //指定模块名,里面内容自定义
path=/root/rsync //指定数据存放的路径
use chroot=true //表示在传输文件前首先chroot到path参数所指定的目录下。这样做的原因是实现额外的安全防护,但缺点是需要以roots权限,并且不能备份指向外部的符号连接所指向的目录文件。默认情况下chroot值为true,如果你的数据当中有软连接文件,建议设置成false。
max connections=4 指定最大的连接数,默认是0,即没有限制
read only=no 如果为true,则不能上传到该模块指定的路径下。
list=true 表示当用户查询该服务器上的可用模块时,该模块是否被列出,设定为true则列出,false则隐藏。
uid=root 指定传输文件时以哪个用户的身份传输。
gid=root 指定传输文件时以哪个组的身份传输。
auth users=test 指定传输时要使用的用户名。
secrets file=/etc/rsyncd.passwd 指定密码文件,该参数连同上面的参数如果不指定,则不使用密码验证。注意该密码文件的权限一定要是600。格式:用户名:密码
hosts allow=192.168.133.132 表示被允许连接该模块的主机,可以是IP或者网段,如果是多个,中间用空格隔开。
当设置了auth users和secrets file后,客户端连服务端也需要用用户名密码了,若想在命令行中带上密码,可以设定一个密码文件
rsync -avL test@192.168.133.130::test/test1/ /tmp/test8/ --password-file=/etc/pass
其中/etc/pass内容就是一个密码,权限要改为600
2、在a机上创建目录/tmp/rsync 并更改权限为777,方便测试 3、在b机上输入命令行: rsync -avP /tmp/1.txt 192.168.133.130::test/81.txt 如果报错先检查网络的连通性,ping 下对方的ip,然后再用telnet命令检查端口是不是通的 telnet 192.168.1.130 873 ,如果不通,我们就查看iptables规则上禁用了。iptables -nvL 如果上面限制了,我们可以停用服务:systemctl stop fillwalld ,在a\b两台机上同时查看问题。再检查下端口不是通的,如果是通的,我们再运行一次上面的命令。提示我们要输入命令,我们就把配置文件/etc/rsyncd.conf里面的auth,hosts开头的行用#号注释掉。
二、linux系统日志
很多错误都是记录在日志中,不会在屏幕上显示。看日志很重要。 linux系统总日志: /var/log/messages 日志切割机制,当这个日起增长到一定大小的时候,会自动切割。 logrotate 服务,用来切割日志的服务,它的配制文件//etc/logrotate.conf
# see "man logrotate" for details
# rotate log files weekly
weekly //第周切割一次
# keep 4 weeks worth of backlogs
rotate 4 //一共切割成4个文件
# create new (empty) log files after rotating old ones
create //创建一个新的文件
# use date as a suffix of the rotated file
dateext //后缀名
# uncomment this if you want your log files compressed
#compress //是否要压缩
# RPM packages drop log rotation information into this directory
include /etc/logrotate.d
参考 https://my.oschina.net/u/2000675/blog/908189
# no packages own wtmp and btmp -- we'll rotate them here
/var/log/wtmp {
monthly
create 0664 root utmp
minsize 1M
rotate 1
}
/var/log/btmp {
missingok
monthly
create 0600 root utmp
rotate 1
}
# system-specific logs may be also be configured here.
2、命令:dmesg 把系统里面硬件相关的日志列出来,这个日志是保存在内存中的。 可以查看硬件的故障。 -c 清空日志 /var/log/dmesg 系统启动日志
3、last命令,用来查看正确的登陆历史,调用的是/var/log/wtmp,这个日志是二进制文件, 不能cat,只能用命令来查看。
4、lastb命令:查看登陆失败的历史。调用/var/log/btmp
5、安全日志/var/log/secure
三、screnn工具, 虚拟的终端,安装: yum install -y screen
为了不让任务中途中断。 nohup command & 把命令丢到后台,nohup +日志+执行命令+& 直接输入screen回车进入虚拟终端,输入一个不能中断的命令,vmstat 1 把screen丢到后台,screen ,快捷键:ctrl a+d screen -ls 列出任务 回到screen:screen -r +id 结束screen :exit 自定义screnn名字: screen -S "testscreen" 回到screen的时候, 可以加id或者名字