Rsync实现服务器文件定时同步备份
来源:互联网 发布:洞洞板画图软件 编辑:程序博客网 时间:2024/05/16 13:56
1.1. Rsync
1.1.1. Linux服务端
Ø 下载并安装
cd /home/software
wget https://download.samba.org/pub/rsync/src/rsync-3.1.2.tar.gz
tar -zxvf rsync-3.1.2.tar.gz
cd rsync-3.1.2
./configure --prefix=/usr/local/rsync
make
make install
Ø 配置rsync-server(rsyncd.conf、rsyncd.motd、rsyncd.pid)
# 配置rsyncd.conf服务启动配置
touch /usr/local/rsync/rsyncd.conf
vim /usr/local/rsyncd.conf
### 全局参数 ###
port=873
motd file=/usr/local/rsync/rsyncd.motd
log file=/usr/log/rsyncd.log
pid file=/var/run/rsyncd.pid
### 模块参数 ###
[hometest]
path=/home/test
use chroot=true
uid=0
gid=0
read only=false
exclude=/readme.txt /runtime
auth users=markdeng
secrets file = /usr/local/rsync/rsyncd.secrets
# 配置rsyncd.secrets服务端用户、密码(用户为系统已有用户)
touch /usr/local/rsync/rsyncd.secrets # 此文件权限必须设置:600
vim /usr/local/rsync/rsyncd.secrets
user:password
chmod 600 /usr/local/rsync/rsyncd.secrets
# 配置连接服务时展示的信息
touch /usr/local/rsync/rsyncd.motd
vim /usr/local/rsync/rsyncd.motd
welcome use rsync service
#启动服务端
/usr/bin/rsyncd --daemon --config=/usr/local/rsync/rsyncd.conf
#查看进程
ps –ef | grep rsync
1.1.2. Windows客户端
Ø 下载安装:
下载并安装4.0.5版本windows客户端。
Ø 同步语法:
1. rsync [OPTION]... SRC [SRC]...[USER@]HOST:DEST
2. rsync [OPTION]...[USER@]HOST:SRC DEST
3. rsync [OPTION]... SRC [SRC]...DEST
4. rsync [OPTION]...[USER@]HOST::SRC [DEST]
5. rsync [OPTION]... SRC [SRC]...[USER@]HOST::DEST
6. rsync [OPTION]...rsync://[USER@]HOST[:PORT]/SRC [DEST]
Ø 六种工作模式:
1. 拷贝本地文件;当SRC和DES路径信息都不包含有单个冒号":"分隔符时就启动这种工作模式。
2. 使用一个远程shell程序(如rsh、ssh)来实现将本地机器的内容拷贝到远程机器。当DST路径地址包含单个冒号":"分隔符时启动该模式。
3. 使用一个远程shell程序(如rsh、ssh)来实现将远程机器的内容拷贝到本地机器。当SRC地址路径包含单个冒号":"分隔符时启动该模式。
4. 从远程rsync服务器中拷贝文件到本地机。当SRC路径信息包含"::"分隔符时启动该模式。
5. 从本地机器拷贝文件到远程rsync服务器中。当DST路径信息包含"::"分隔符时启动该模式。
6. 列远程机的文件列表。这类似于rsync传输,不过只要在命令中省略掉本地机信息即可。
Ø rsync中的参数:
u -r 是递归
u -l 是链接文件,意思是拷贝链接文件;
u -p 表示保持文件原有权限;
u -t 保持文件原有时间;
u -g 保持文件原有用户组;
u -o 保持文件原有属主;
u -D 相当于块设备文件;
u -z 传输时压缩;
u -P 传输进度;
u -v 传输时的进度等信息,和-P有点关系,自己试试。可以看文档;
u -e ssh的参数建立起加密的连接。
u -u只进行更新,防止本地新文件被重写,注意两者机器的时钟的同时
u --progress是指显示出详细的进度情况
u --delete是指如果服务器端删除了这一文件,那么客户端也相应把文件删除,保持真正的一致
u --password-file=/password/path/file来指定密码文件,这样就可以在脚本中使用而无需交互式地输入验证密码了,这里需要注意的是这份密码文件权限属性要设得只有属主可读。
1.1.3. Windows客户端同步服务端备份文件
Ø 环境条件:
服务端备份文件夹:/appdata/bak/
服务端模块名称: hometest
服务端使用的用户:root:123456
客户端存储路径:d:\Backup_Server\rsync
Ø 操作指令:
#创建root用户的密码文件
echo password > d: \Backup_Server\rsync.pwd
#修改密码文件权限为600(部分环境需要)
“C:\Program Files (x86)\cwRsync\bin\chmod” 600 d:\Backup_Server\rsync.pwd
#同步指令
"C:\Program Files (x86)\cwRsync\bin\rsync" --port=873-vzrtopg --progress --delete root@101.200.156.74::hometest/cygdrive/d/Backup_Server/rsync--password-file=/cygdrive/d/Backup_Server/rsync.pwd
#若出现以下错误,则再新建一个文本文档另外存储密码,在同步指令上输入该文件作为密码
echo password > d: \Backup_Server\root.pwd.txt
"C:\Program Files (x86)\cwRsync\bin\rsync" --port=873-vzrtopg --progress --delete root@101.200.156.74::hometest/cygdrive/d/Backup_Server/rsync --password-file=/cygdrive/d/Backup_Server/rsync.pwd< d: \Backup_Server\root.pwd.txt
Ø 设置定时器:
通过windows计划任务设置周期定时执行。上面的同步指令脚本
- Rsync实现服务器文件定时同步备份
- Rsync 实现文件定时同步
- rsync 实现文件备份同步
- RSync实现文件备份同步
- RSync实现文件备份同步
- RSync实现文件备份同步
- RSync实现文件备份同步
- RSync实现文件备份同步
- RSync实现文件备份同步
- RSync实现文件备份同步
- RSync实现文件备份同步
- RSync实现文件备份同步
- RSync实现文件备份同步
- RSync实现文件备份同步
- RSync实现文件备份同步
- RSync实现文件备份同步
- rsync实现文件备份同步
- RSync实现文件备份同步
- 在 WinForm 中使用进度条展示长时间任务的执行进度
- 二级联动
- 安卓M版本如何在setting中的休眠模式下添加永不休眠功能?
- xstream实现java对象和XML的互相转换
- SQL Server JDBC驱动中sqljdbc和sqljdbc4区别
- Rsync实现服务器文件定时同步备份
- Android开发省时神器--JRebel
- 人类为何要探索太空
- 音频处理
- java学习笔记六——数组
- 六款堪称神器的网站
- std::wstring 与std::string 转换
- 欢迎使用CSDN-markdown编辑器
- explicit关键字