前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Linux rsync配置指南

Linux rsync配置指南

作者头像
smartsi
发布2019-08-07 14:19:59
4.1K0
发布2019-08-07 14:19:59
举报
文章被收录于专栏:SmartSi

1. 概述

rsync 命令是一个远程数据同步工具,可通过 LAN/WAN 快速同步多台主机间的文件。rsync 使用所谓的 “rsync算法” 来使本地和远程两个主机之间的文件达到同步,这个算法只传送两个文件的不同部分,而不是每次都整份传送,因此速度相当快。rsync 是一个功能非常强大的工具,其命令也有很多功能特色选项。

2. 安装

在 ubuntu 下安装 rsync 通过以步骤可以实现:

代码语言:javascript
复制
sudo apt-get install rsync xinetd

默认情况下 ubuntu 安装了 rsync,因此只需安装 xinetd即可:

代码语言:javascript
复制
sudo apt-get install xinetd

3. 配置

(1) 编辑 /etc/default/rsync 启动 rsync 作为使用 xinetd 的守护进程:

代码语言:javascript
复制
# 打开rsync
sudo vim /etc/default/rsync
# 编辑rsync
RSYNC_ENABLE=inetd

(2) 创建 /etc/xinetd.d/rsync, 通过 xinetd 使 rsync 开始工作

代码语言:javascript
复制
# 创建并打开文件
sudo vim /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
}

(3) 创建 /etc/rsyncd.conf ,并填写配置信息

代码语言:javascript
复制
# 创建并打开文件
sudo vim /etc/rsyncd.conf
# 编辑配置信息
max connections = 2
log file = /var/log/rsync.log
timeout = 300

[share] # 模块名
comment = Public Share
# path为需要同步的文件夹路径
path = /home/share
read only = no
list = yes
uid = root
gid = root
# 必须和 rsyncd.secrets中的用户名对应
auth users = test
secrets file = /etc/rsyncd.secrets

(4) 创建 /etc/rsyncd.secrets,配置用户名和密码.

代码语言:javascript
复制
# 创建并打开文件
sudo vim /etc/rsyncd.secrets
# 配置用户名和密码,密码可以任意设置
test:123

(5) 修改 rsyncd.secrets 文件的权限

代码语言:javascript
复制
sudo chmod 600 /etc/rsyncd.secrets

(6) 启动/重启 xinetd

代码语言:javascript
复制
sudo /etc/init.d/xinetd restart

4. 测试

在客户端运行下面的命令以及输入密码,确认 rsync 是否配置成功:

代码语言:javascript
复制
xiaosi@ying:/etc/apt$ rsync  test@123.206.187.64::share
Password:
drwxr-xr-x          4,096 2018/03/20 18:44:51 .
-rw-r--r--             17 2018/03/20 18:44:51 remote_content.txt

test 是在服务器中 rsyncd.secrets 文件中配置的用户名。 xx.xx.xx.xx 是服务器的ip地址,也可以填写服务器对应的域名。share 是 rsyncd.conf 中定义的模块

5. 问题

在测试的时候出现如下问题:

代码语言:javascript
复制
xiaosi@ying:/etc/apt$ rsync test@xxx:xxx:xxx:xxx::share
rsync: failed to connect to xxx:xxx:xxx:xxx (xxx:xxx:xxx:xxx): Connection refused (111)
rsync error: error in socket IO (code 10) at clientserver.c(128) [Receiver=3.1.1]

首先判断 873 端口是否开放,如果没有开启一下:

代码语言:javascript
复制
telnet 192.168.xxx.xxx 873

或者查看 rsync 服务是否启动:

代码语言:javascript
复制
ubuntu@VM-0-7-ubuntu:~$  ps -ef | grep rsync
root     18848     1  0 17:29 ?        00:00:00 rsync --daemon --config=/etc/rsyncd.conf
ubuntu   18850 12214  0 17:29 pts/0    00:00:00 grep --color=auto rsync

如果没有启动,启动一下 rsync 服务:

代码语言:javascript
复制
sudo rsync --daemon --config=/etc/rsyncd.conf
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018-03-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. 概述
  • 2. 安装
  • 3. 配置
  • 4. 测试
  • 5. 问题
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档