专栏首页散尽浮华定时备份windows机器上的文件到linux服务器上的操作梳理(rsync)

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

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

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 文件

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

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端口)。如下表示连接正常!

[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中设定的密码内容:

[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参数)

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

4)创建备份脚本

[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)定时备份任务,每小时执行一次同步操作

[root@backup ~]# crontab -e
0 * * * *  /bin/bash -x /root/backup/win_bak.sh > /dev/null 2>&1

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 数组-在Shell脚本中的基本使用介绍

    Shell脚本在运维工作中是极其重要的,而数组在shell脚本里的运用无论是在循环或运算方面都是非常实用的一个环节。 下面是对shell脚本中数组方面一些操作在...

    洗尽了浮华
  • Linux操作系统启动流程梳理

    接触linux系统运维已经好几年了,常常被问到linux系统启动流程问题,刚好今天有空来梳理下这个过程: 一般来说,所有的操作系统的启动流程基本就是: ? 总的...

    洗尽了浮华
  • linux下用户操作记录审计环境的部署记录

    通常,我们运维管理人员需要知道一台服务器上有哪些用户登录过,在服务器上执行了哪些命令,干了哪些事情,这就要求记录服务器上所用登录用户的操作信息,这对于安全维护来...

    洗尽了浮华
  • 黑客的七夕礼物:大量IoT设备Telnet密码列表遭泄露

    ? 一份包含几千条telnet密码的列表自7月11日起被贴到了Pastebin上,这些密码可以被黑客用来扩大僵尸网络。 来自New Sky Security的...

    FB客服
  • @Propertysource 、@ImportResource和@bean 区别

    @CongigurationProperties与@Propertysource结合读取指定配置文件(只能用于properties文件)

    桑鱼
  • Oracle RAC变更实验之修改11gR2+公网IP地址(网段不变)

    rac1的 Public IP 从11.12.14.29更改为11.12.14.45

    bsbforever
  • 部署到CloudFoundry上的应用,启动超时的处理

    我开发了一个nodejs应用,部署到CloudFoundry后,遇到下列错误消息: Instance never healthy after 3m0s Fai...

    Jerry Wang
  • xml解析系列(一)——用dom4j解析xml

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 ...

    逝兮诚
  • 三十天学不会TCP,UDP/IP网络编程 - UDP的实践--DHCP

    在经历了一顿忙碌加出去玩了玩之后,我又开始重新更新了~这是最新的一篇~完整版可以去gitbook(https://www.gitbook.com/@rogerz...

    一心一怿
  • 计算机组成原理笔记(三)

    超线程的CPU,其实是把一个物理层面CPU核心,“伪装”成两个逻辑层面的CPU核心。这个CPU,会在硬件层面增加很多电路,使得我们可以在一个CPU核心内部,维护...

    luozhiyun

扫码关注云+社区

领取腾讯云代金券