定时备份windows机器上的文件到linux服务器上的操作梳理(rsync)

简介:

 

由于需要对网络设备做备份,备份文件是放到windows机器上的。现在需要将备份数据同步到linux备份机器上,想到的方案有三种:

1
2
3
1)将windows的备份目录共享出来,然后在linux服务器上进行挂载,最后对挂载目录进行定时同步。这种方式不太安全。
2)使用tftp、 sftp 方式,也不太安全。
3)推荐通过 rsync 方式(cwRsyncServer_4.1.0_Installer),windows机器到windows机器之间的定期同步也使用这种方式。

下面简单介绍下使用rsync方式的同步过程:

一、windows上的操作记录
1)在windows server上安装配置Cwrsyncserver,按照提示一步步安装即可,需要注意下cwrsyncserver有个设置用户与密码的地方,要么就改为自己的用户名与密码。比如用户Administrator,密码:123456,这个用户名与密码是一会启动服务时需要的,也就是你服务器的用户名和密码,如果感觉不安全,可以考虑在WINDOWS中创建一个用户名和密码

2)配置rsyncd.conf 文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
use chroot =  false                  
strict modes =  false                #不验证用户密码,     
hosts allow = 192.168.1.90          #只允许ip为192.168.1.90的客户机来同步数据
max connections = 5                 #指定最大的连接数,默认是0即没有限制
lock  file  = rsyncd.lock
log  file  = rsyncd.log
port = 873                          #默认就是873,也可以指定为其他端口
pid = 0                             #pid和uid为0,表示指定匿名访问
uid = 0                          
    
[backup]                            #模块名字,这个可以自定义
path =  /cygdrive/d/Backup           #选择备份路径,不支持中文
read  only =  yes                     #只读模式
transfer logging =  yes
list = no
auth  users  = Administrator          #指定访问的用户名
secrets  file  /cygdrive/e/Setting/Rsync/rsync_db . ps    #指定访问的用户名密码
   
特别注意:
以上Windows目录的写法,应该按照POSIX风格来写,默认配置文件的写法cygwin貌似不工作,而要写成cygdrive,如上面D: /Backup ,要写成 /cygdrive/d/Backup

新建密码文件:E:\Setting\Rsync\rsync_db.ps

1
2
3
4
Administrator:PASSWD_123@bjk
注意:
此密码文件里的格式是 "用户名:密码" ,这个密码可以随意指定。但最好设置服务器的用户名和密码。如果觉得不安全,就另外创建一个用户名和密码,专门用于 rsync 同步之用。
但是千万要记得这个创建的用户名对E:\Setting\Rsync\rsync_db. ps 这个密码文件要有修改的操作权限。

3)启动cwrsync服务(注意: 如果开启了防火墙,则防火墙规则中要添加Tcp端口873允许通信)
右键 我的电脑->管理->服务与应用程序->服务->RsyncServer->右键 属性->登陆-> 在此帐户输入有效的用户名(域用户、要有权限管理E盘的用户名哦),密码和、再次确认密码;此处使用域管理员帐号与密码(如果用户和密码无权限或错误,将无法启动RsyncServer服务)。启动RsyncServer服务,并修改属性为自动,以便后续开机就启动此服务。

服务启动成功后,就可以配置linux客户端了。

二、linux客户端(192.168.1.90)上的操作记录
1)先查看下能否连通windows机器(192.168.1.101)的873端口(rsync端口)。如下表示连接正常!

1
2
3
4
[root@backup ~] # telnet 192.168.1.101 873
Trying 192.168.1.101...
Connected to 192.168.1.101.
Escape character is  '^]' .

2)进入Linux服务器,新建一个backup_passwd的文件,内容为在上面windows中RsyncServer中设定的密码内容:

1
2
3
4
[root@backup ~] # cd /root
[root@backup ~] # vim backup_passwd          #再将密码写入些文件中
PASSWD_123@bjk
[root@backup ~] # chmod 600 backup_passwd    #改下权限,只有root用户能看。

3)linux服务器上要安装rsync环境。这里将windows备份数据同步到linux的/Win_Back目录下(为了安全考虑,可以不添加下面命令中的--delete参数)

1
[root@backup ~] # rsync -av --progress --delete --port=873 --password-file=/root/backup_passwd Administrator@192.168.1.101::backup /Win_Back/

4)创建备份脚本

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
[root@backup ~] # mkdir /root/backup
[root@backup ~] # vim /root/backup/win_bak.sh
#!/bin/bash
#create by fengzehua
PASSWORD= /root/backup_passwd
SOURCE= '192.168.1.101::backup'
USER=Administrator
DEST= /Win_Back/
echo  "start backup file server"
/usr/bin/rsync  -av --progress --delete --port=873 --password- file =$PASSWORD $USER@$SOURCE $DEST
if  [ $? - eq  0 ]
     then  
     echo  "file server backup successfully!"
else
     echo  "file server backup failure, try again:"
     /usr/bin/rsync  -av --progress --delete --port=873 --password- file =$PASSWORD $USER@$SOURCE $DEST
fi

5)定时备份任务,每小时执行一次同步操作

1
2
[root@backup ~] # crontab -e
0 * * * *   /bin/bash  -x  /root/backup/win_bak .sh >  /dev/null  2>&1
***************当你发现自己的才华撑不起野心时,就请安静下来学习吧***************
分类:  Rsync

本文转自散尽浮华博客园博客,原文链接:http://www.cnblogs.com/kevingrace/p/5972563.html,如需转载请自行联系原作者
相关文章
|
1月前
|
Java
java小工具util系列5:java文件相关操作工具,包括读取服务器路径下文件,删除文件及子文件,删除文件夹等方法
java小工具util系列5:java文件相关操作工具,包括读取服务器路径下文件,删除文件及子文件,删除文件夹等方法
74 9
|
18天前
|
安全 Ubuntu Linux
Metasploit Pro 4.22.6-2024111901 (Linux, Windows) - 专业渗透测试框架
Metasploit Pro 4.22.6-2024111901 (Linux, Windows) - 专业渗透测试框架
38 9
Metasploit Pro 4.22.6-2024111901 (Linux, Windows) - 专业渗透测试框架
|
1天前
|
Ubuntu 网络协议 Linux
快速部署WSL(Windows Subsystem for Linux)
WSL提供了一种轻量级的方法,使开发者能够在Windows上无缝运行Linux环境。通过本文介绍的步骤,可以快速安装、配置和使用WSL,以满足开发和测试的需求。
20 8
|
18天前
|
自然语言处理 安全 Java
Nexpose 7.0.1 for Linux & Windows - 漏洞扫描
Nexpose 7.0.1 for Linux & Windows - 漏洞扫描
38 6
|
21天前
|
关系型数据库 MySQL Linux
MySQL数据库下载安装教程(Windows&Linux)
本文档详细介绍了MySQL的安装步骤,包括安装前的准备工作、下载安装包、Windows和Linux系统下的具体安装流程,以及如何配置MySQL服务、设置环境变量、启动服务和连接数据库等关键操作。
|
1月前
|
NoSQL Linux PHP
如何在不同操作系统上安装 Redis 服务器,包括 Linux 和 Windows 的具体步骤
本文介绍了如何在不同操作系统上安装 Redis 服务器,包括 Linux 和 Windows 的具体步骤。接着,对比了两种常用的 PHP Redis 客户端扩展:PhpRedis 和 Predis,详细说明了它们的安装方法及优缺点。最后,提供了使用 PhpRedis 和 Predis 在 PHP 中连接 Redis 服务器及进行字符串、列表、集合和哈希等数据类型的基本操作示例。
64 4
|
1月前
|
关系型数据库 MySQL Linux
Linux环境下MySQL数据库自动定时备份实践
数据库备份是确保数据安全的重要措施。在Linux环境下,实现MySQL数据库的自动定时备份可以通过多种方式完成。本文将介绍如何使用`cron`定时任务和`mysqldump`工具来实现MySQL数据库的每日自动备份。
108 3
|
1月前
|
监控 关系型数据库 MySQL
Linux环境下MySQL数据库自动定时备份策略
在Linux环境下,MySQL数据库的自动定时备份是确保数据安全和可靠性的重要措施。通过设置定时任务,我们可以每天自动执行数据库备份,从而减少人为错误和提高数据恢复的效率。本文将详细介绍如何在Linux下实现MySQL数据库的自动定时备份。
47 3
|
弹性计算 Linux
[转]ECS之初体验(Linux)
服务商: 阿里云 操作系统:Linux 64位 Ubantu 20.04 64位
122 0
|
2天前
|
人工智能 JSON Linux
利用阿里云GPU加速服务器实现pdf转换为markdown格式
随着AI模型的发展,GPU需求日益增长,尤其是个人学习和研究。直接购置硬件成本高且更新快,建议选择阿里云等提供的GPU加速型服务器。
利用阿里云GPU加速服务器实现pdf转换为markdown格式