特性:
能更新整个目录
有选择性的保持符号链链、硬链接、文件属于、权限、设备以及时间等;
对于安装来说,无任何特殊权限要求;
对于多个文件来说,内部流水线减少文件等待的延时;
能用rsh、ssh 或直接端口做为传输入端口;
支持匿名rsync 同步文件,是理想的镜像工具;
架设rsync服务器:
1.安装:
#yum方式安装
#源码方式,注意安装gcc
tar xvf rsync-xxx.tar.gz
cd rsync-xxx
./configure --prefix=/usr/local
make make install
rsync的主要有以下三个配置文件(需要手工创建):
/etc/rsyncd.conf(主配置文件)
/etc/rsyncd.secrets(密码文件)
格式:user1:passwd1
出于安全目的,文件的属性必需是只有属主可读。
chown root.root rsyncd.secrets #修改属主
chmod 600 rsyncd.secrets
/etc/rsyncd.motd
定义rysnc服务器信息的,也就是用户登录信息,可以为空
类似ftp的欢迎页面
示例:Welcome to use the mike.org.cn rsync services!
rsyncd.conf配置文件示例:
#Distributed under the terms of the GNU General Public License v2
#Minimal configuration file for rsync daemon
#See rsync(1) and rsyncd.conf(5) man pages for help
# This line is required by the /etc/init.d/rsyncd script
#告诉进程写到 /var/run/rsyncd.pid 文件中
pid file = /var/run/rsyncd.pid
#指定运行端口,默认是873
port = 873
#指定服务器IP地址
address = 192.168.1.171
#服务器端传输文件时,要发哪个用户和用户组来执行,默认是nobody。 如果用nobody 用户和用户组,可能遇到权限问题
#uid = nobody
#gid = nobody
uid = root
gid = root
#一个安全选项 详情自己去查查
use chroot = yes
#read only 是只读选择,也就是说,不让客户端上传文件到服务器上。还有一个 write only选项
read only = yes
#在您可以指定单个IP,也可以指定整个网段,能提高安全性。格式是ip 与ip 之间、ip和网段之间、网段和网段之间要用空格隔开
#limit access to private LANs
hosts allow=192.168.1.0/255.255.255.0 10.0.1.0/255.255.255.0
hosts deny=*
max connections = 5
motd file = /etc/rsyncd.motd
#This will give you a separate log file
#log file = /var/log/rsync.log
#This will log every file transferred - up to 85,000+ per user, per sync
#transfer logging = yes
log format = %t %a %m %f %b
syslog facility = local3
timeout = 300
#指定文件目录所在位置
[home]
path = /home
list=yes #是否可以列出目录
ignore errors # #忽略IO错误
#auth users必须是在服务器上存在的真实的系统用户,如果你想用多个用户以,号隔开,比如auth users = easylife,root
auth users = root
secrets file = /etc/rsyncd.secrets
comment = This is RHEL 4 data
#exclude是排除的意思,也就是说,要把/home目录下的easylife和samba排除在外; easylife/和samba/目录之间有空格分开
exclude = easylife/ samba/
模块定义什么呢?
主要是定义服务器哪个目录要被同步。每个模块都要以[name]形式。这个名字就是在rsync 客户端看到的名字,其实有点象Samba服务器提供的共享名。而服务器真正同步的 数据是通过path 指定的。我们可以根据自己的需要,来指定多个模块。每个模块要指定认证用户,密码文件、但排除并不是必须的
启动rsync服务器:
/usr/bin/rsync --daemon --config=/etc/rsyncd/rsyncd.conf
--config用于指定rsyncd.conf的位置,如果在/etc下可以不写/usr/bin/rsync --daemon --config=/etc/rsyncd/rsyncd.conf
rsync有六种不同的工作模式:
1. 拷贝本地文件;当SRC和DES路径信息都不包含有单个冒号":"分隔符时就启动这种工作模式。
2.使用一个远程shell程序(如rsh、ssh)来实现将本地机器的内容拷贝到远程机器。当DST路径地址包含单个冒号":"分隔符时启动该模式。
3.使用一个远程shell程序(如rsh、ssh)来实现将远程机器的内容拷贝到本地机器。当SRC地址路径包含单个冒号":"分隔符时启动该模式。
4. 从远程rsync服务器中拷贝文件到本地机。当SRC路径信息包含"::"分隔符时启动该模式。
5. 从本地机器拷贝文件到远程rsync服务器中。当DST路径信息包含"::"分隔符时启动该模式。
6. 列远程机的文件列表。这类似于rsync传输,不过只要在命令中省略掉本地机信息即可。
-a 以archive模式 *** 作、复制目录、符号连接 相当于-rlptgoD
rsync中的参数
-r 是递归
-l 是链接文件,意思是拷贝链接文件;-p 表示保持文件原有权限;-t 保持文件原有时间;-g 保持文件原有用户组;-o 保持文件原有属主;-D 相当于块设备文件;
-z 传输时压缩;
-P 传输进度;
-v 传输时的进度等信息,和-P有点关系,自己试试。可以看文档;
-e ssh的参数建立起加密的连接。
-u只进行更新,防止本地新文件被重写,注意两者机器的时钟的同时
--progress是指显示出详细的进度情况
--delete是指如果服务器端删除了这一文件,那么客户端也相应把文件删除,保持真正的一致
--password-file=/password/path/file来指定密码文件,这样就可以在脚本中使用而无需交互式地输入验证密码了,这里需要注意的是这份密码文件权限属性要设得只有属主可读。
当管理集群服务器时,各个主机之间的时间统一是很有必要的,某些中间件也强依赖于系统的时间,因此研究了NTP服务的搭建。
一般机器都是未安装NTP的,所以直接用下面的命令安装
如果机器无法联网需要离线配置yum源参见 [https://www.jianshu.com/p/857e5e6b5db9](https://www.jianshu.com/p/857e5e6b5db9)
编辑文件 /etc/ntp.conf 将下面的内容直接覆盖原内容 记得修改为自己的ip段 ,或者将源文件备份新建文件
修改后重启ntp服务 systemctl restart ntpd.service
直接编辑自动生成的配置文件 vim /ect/ntp.conf ,直接将服务端地址更改为授时机器的ip即可
修改后重启ntp服务 systemctl restart ntpd.service
使用 ntpstat 命令来检查同步是否成功,成功提示如下:
同步有一定延迟需要等几分钟,我的方法是重启后如果多次检查仍未同步时间,就再次重启ntp客户端,然后执行检查,一般几十秒内就同步成功了
server 10.26.12.2 iburst minpoll 4 maxpoll 6
控制ntp的polling时间间隔,minpoll最小值(下限为4),maxpoll最大值(上线为17),两个值表示为2n次方,即最小是为16s,最大值为36小时。
watch ntpq -np 查看ntp的运行状态
centos7.6 实现ntp时间同步服务
ntp的基础知识
ntp的中级知识
【NTP】关于ntp配置详解
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)