阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

rsync的安装配置

75次阅读
没有评论

共计 3243 个字符,预计需要花费 9 分钟才能阅读完成。

本文由 LinuxProbe.Com 团队成员 烨子 整理发布,原文来自:Linux 进阶屋。

简介

rsync(remote sync)是类 unix 系统下的数据镜像备份工具。它的特性如下:

  1. 可以镜像保存整个目录树和文件系统。
  2. 可以很容易做到保持原来文件的权限、时间、软硬链接等等。
  3. 无须特殊权限即可安装。
  4. 快速:第一次同步时 rsync 会复制全部内容,但在下一次只传输修改过的文件。rsync 在传输数据的过程中可以实行压缩及解压缩操作,因此可以使用更少的带宽。
  5. 安全:可以使用 scp、ssh 等方式来传输文件,当然也可以通过直接的 socket 连接。
  6. 支持匿名传输,以方便进行网站镜象。
安装

在 RedHat 中,rsync 是默认安装的。可通过命令行检查是否安装

[root@linuxprobe ~]# rpm -q rsync
rsync-3.0.4-2.47.28
配置 rsync server

1.  修改 rsync 的配置文件,将 disable 从 ”yes” 改成 ”no”

[root@linuxprobe ~]# vi /etc/xinetd.d/rsync
service rsync
{
        disable = no
        socket_type     = stream
        wait            = no
        user            = root
        server          = /usr/bin/rsync
        server_args     = --daemon
        log_on_failure  += USERID
}

设置开机启动 RSYNC

[root@linuxprobe ~]# chkconfig rsync on

2.  配置 /etc/rsyncd.conf(需要手动生成)

全局参数

uid = root           // 运行 RSYNC 守护进程的用户
gid = root                // 运行 RSYNC 守护进程的组
use chroot = no           // 不使用 chroot
max connections = 4       // 最大连接数为 4 
strict modes =yes         // 是否检查口令文件的权限
port = 873                // 默认端口 873

模块参数

[backup]       // 这里是认证的模块名,在 client 端需要指定
path = /home/backup/     // 需要做镜像的目录, 不可缺少!
comment = This is a test      // 这个模块的注释信息
ignore errors        // 可以忽略一些无关的 IO 错误
read only = yes       // 只读
list = no        // 不允许列文件
auth users = linuxprobe        // 认证的用户名,如果没有这行则表明是匿名,此用户与系统无关
secrets file = /etc/rsync.pas        // 密码和用户名对比表,密码文件自己生成
hosts allow = 192.168.1.1,10.10.10.10        // 允许主机
hosts deny = 0.0.0.0/0       // 禁止主机
#transfer logging = yes
注释:下面这些文件是安装完 RSYNC 服务后自动生成的文件
pid file = /var/run/rsyncd.pid     //pid 文件的存放位置
lock file = /var/run/rsync.lock    // 锁文件的存放位置
log file = /var/log/rsyncd.log     // 日志记录文件的存放位置

3.  配置 rsync 密码

(1) 创建密码文件(文件即上述配置文件中的 secrets file = /etc/rsync.pas)

[root@linuxprobe ~]# vim /etc/rsync.pas
linuxprobe:password  // 账号:密码,一行一个用户

(2) 修改密码文件的权限为 600

[root@linuxprobe ~]# chown root.root /etc/rsync.pas 
[root@linuxprobe ~]# chmod 600 /etc/rsync.pas

4.  设置欢迎信息 /etc/rsyncd.motd(可有可无)
rsyncd.motd 记录了 rsync 服务的欢迎信息,你可以在其中输入任何文本信息,如:

[root@linuxprobe ~]# vim /etc/rsyncd.motd
Welcome to use the rsync services!

5.  生效配置

[root@linuxprobe ~]# service xinetd restart
启动 rsync server

1. RSYNC 服务端启动的两种方法
(1) 启动 rsync 服务端(独立启动)

[root@linuxprobe ~]#/usr/bin/rsync –daemon

(2) 启动 rsync 服务端(有 xinetd 超级进程启动)

[root@linuxprobe ~]# /etc/rc.d/init.d/xinetd reload

2. 加入 rc.local

在各种操作系统中,rc 文件存放位置不尽相同,可以修改使系统启动时把 rsync –daemon 加载进去。

[root@linuxprobe ~]# vim /etc/rc.local
加入一行 /usr/bin/rsync --daemon

3. 检查 rsync 是否启动

若输出显示 state 为 LISTEN,表示为等待接受链接的状态,说明 rsync 已经启动。

[root@linuxprobe ~]# netstat -a | grep rsync
   tcp        0      0 0.0.0.0:873                 0.0.0.0:*                   LISTEN
配置 rsync client

1. 设定密码

[root@linuxprobe ~]# vim /etc/rsync.pas password

修改权限

[root@linuxprobe ~]# chown root.root /etc/rsync.pas
[root@linuxprobe ~]# chmod 600 /etc/rsync.pas

2. client 连接 SERVER

从 SERVER 端取文件

/usr/bin/rsync -vzrtopg --progress --delete linuxprobe@192.168.0.217::backup /home/backup --password-file=/etc/rsync.pas

向 SERVER 端上传文件

/usr/bin/rsync -vzrtopg --progress --password-file=/root/rsync.pas  /home/backup linuxprobe@192.168.0.217::backup

这个命令将把本地机器 /home/backup 目录下的所有文件(含子目录)全部备份到 RSYNC SERVER(172.20.0.6)的 backup 模块的设定的备份目录下。
请注意如果路径结束后面带有 ”/”, 表示备份该目录下的东东,但不会创建该目录,如不带 ”/” 则创建该目录。

RSYNC 用法:

rsync [OPTION]... [USER@]HOST::SRC  [DEST]              #从 RSYNC SERVER 备份文件到本地机器
rsync [OPTION]... SRC [SRC]...      [USER@]HOST::DEST   #从本地机器备份文件到 RSYNC SERVER

3. 自动运行

1) 制作脚本文件

[root@linuxprobe ~]# vim /usr/local/rsync/time.sh
[root@linuxprobe ~]# !/bin/bash
/usr/bin/rsync -vzrtopg --progress --delete linuxprobe@192.168.0.217::backup /home/backup --password-file=/etc/rsync.pas

2) 编辑 crontab

[root@linuxprobe ~]# crontab -e
55 * * * * /usr/local/rsync/time.sh // 每 55 分运行一次 time.sh 脚本文件
防火墙设置

如果服务器上装有防火墙,需在服务器中设置 iptables 将 837 端口开放。

[root@linuxprobe ~]# iptables -A INPUT -p tcp --dport 873 -j ACCEPT

阿里云 2 核 2G 服务器 3M 带宽 61 元 1 年,有高配

腾讯云新客低至 82 元 / 年,老客户 99 元 / 年

代金券:在阿里云专用满减优惠券

 

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2024-07-25发表,共计3243字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中