Ubuntu22.04LTS配置rsync服务

Ubuntu22.04LTS配置rsync服务

近期准备同步一些文件,准备选用rsync,这里记录一下配置过程。

rsync是一个开源的快速备份工具,可以镜像保存整个目录树和文件系统。

rsync使用所谓的"rsync算法"来使本地和远程的文件保持同步。这个算法只传送两个文件的不同部分,而不是每次都整份传送,因此速度相当快。

rsync可以工作在unix/linux,windows,mac等等。

rsync可以实现增量备份,即上传文件时,先与本地文件进行比较,只上传本地文件有变化的部分,这样就避免了上传整个文件。

我的服务端端是Ubuntu 22.04LTS,系统默认情况下安装了rsync,如果没安装,可以用下面命令安装:

复制代码
sudo apt-get install rsync

服务器端配置

1.编辑/etc/default/rsync

复制代码
# 打开rsync
sudo vim /etc/default/rsync
# 编辑rsync
RSYNC_ENABLE=true

2.创建/etc/rsyncd.conf,并填写配置信息

复制代码
sudo vim /etc/rsyncd.conf

添加以下编辑配置信息:

复制代码
max connections = 2
log file = /var/log/rsync.log
timeout = 300
Charset = UTF-8

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

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

复制代码
sudo vim /etc/rsyncd.secrets

配置用户名和密码,密码可以任意设置

复制代码
user:password

4.修改rsyncd.secrets文件的权限

复制代码
sudo chmod 600 /etc/rsyncd.secrets

5.启动/重启rsync服务

复制代码
sudo /etc/init.d/rsync restart

客户端配置

由于我客户端系统是windows,所以需要在windows上安装rsync的客户端cwRsync

1.下载并安装cwRsync

下载地址:csdn下载cwRsync

2.下载后直接解压缩到D:\cwRsync目录下,将D:\cwRsync\bin添加到环境变量path中,就能直接使用

测试

在客户端运行下面的命令检查,确认rsync配置成功,user是在服务器中rsyncd.secrets文件中配置的用户名,xx.xx.xx.xx 是服务器的ip地址,也可以填写服务器对应的域名,share是rsyncd.conf中定义的模块

复制代码
rsync user@xx.xx.xx.xx::share

输入密码后,如果输出以下类似内容,说明配置成功

复制代码
drwxr-xr-x        4096 2006/12/13 09:41:59 .
drwxr-xr-x        4096 2006/11/23 18:00:03 folders

同步

1.将本地文件同步至服务器

复制代码
# 将当前目录下public路径下的全部内容,同步至服务器rsyncd.conf中指定的share模块
rsync -av ./public/ user@xx.xx.xx.xx::share

2.将服务器文件同步至本地

复制代码
rsync -cvazu --progress user@xx.xx.xx.xx::share /rsyn

3.中文乱码问题

在使用时,由于共享资源里有中文,客户端用的是windows客户,客户端请求时,添加--iconv=GBK,UTF-8参数解决,表示客户端为GBK字符,服务端UTF-8字符

复制代码
rsync --iconv=GBK,UTF-8 rsync://user@xx.xx.xx.xx/share
相关推荐
Master_H_ice3 小时前
Claude Code安装试用记录(Windows)
windows·claude code
地下核武4 小时前
Ubuntu 24.04 在线安装 Qt 6.10.2 后 Qt Creator 无法启动问题记录与解决
linux·qt·ubuntu
chinesegf4 小时前
ubuntu建虚拟环境制作docker容器
linux·ubuntu·docker
芳草萋萋鹦鹉洲哦6 小时前
【windows】nginx如何注册为开机自启的服务(WinSW实现)
运维·windows·nginx
好名字更能让你们记住我6 小时前
vmware虚拟机安装Windows10镜像【超详细图文版】!!!
windows·系统安装·vmware·虚拟机·图文教程
副露のmagic7 小时前
字符串章节 leetcode 思路&实现
windows·python·leetcode
Java 码农7 小时前
Windows 系统安装 Claude Code 完整教程
windows
海兰8 小时前
【实战】Ubuntu 24.04下本地部署开源项目Higress
linux·人工智能·ubuntu·开源·银行系统
有毒的教程9 小时前
Ubuntu 清理 Docker 镜像 / 容器 / 缓存 完整教程
ubuntu·缓存·docker
无籽西瓜a10 小时前
详解bat脚本:语法、常见用法、注意事项、示例
windows·batch·cmd·自动化工具