rsync异地备份+排程自动化

今天要接续昨天的排程备份来实作「异地备份」
读者们如果对rsync操作尚不熟悉,可到 昨天 复习喔


排程备份

只在本地备份并不能满足所需
最好要能够在离峰时间备份,并且有快取碟执行的话,还要避免跟快取搬移的时间冲突

这时备份时机和自动化就显得格外重要:

  • 目标:在一次完整备份结束後能自动排程差异备份到另一台Server上的ZFS阵列
  • 效果:自动排程unRaid Array差异备份到另一台Server上
    (可依据<12Day>建立ZFS的方法在另一台Server建立阵列,确保备份资料安全无虞)

实作

先设定rsyncd.secrets认证档,设定非常简单
帐号:密码
例:

user:123456

修改完储存(ctrl+o),接着编辑rsyncd.conf:
rsyncd.conf范例

  log file = /var/log/rsyncd.log   #log日志,出错可以前往查看
  [unraidbk]   #任务名称
  path = /backup  #放置资料路径(异地Server位置)
  auth users = user  #指定Server帐号(随rsyncd.secrets设定内容调整)
  uid = root 
  gid = root  #设定身份组,维持预设(root)不调整
  secrets file = /etc/rsyncd.secrets  #import认证档
  read only = no  #写入

修改完储存,接着编辑myrsync.sh

#! /bin/sh
#指令请自行删改调整
#unraidbk为rsyncd.conf指令任务名称
#192.168.0.123 (Server IP自行修改)
#/mnt/disk1为要备份的资料路径,可建立多个指令

/usr/bin/rsync -avHS --numeric-ids --password-file=/etc/rsyncd.secrets /mnt/[email protected]::unraidbk
/usr/bin/rsync -avHS --numeric-ids --password-file=/etc/rsyncd.secrets /mnt/[email protected]::unraidbk
/usr/bin/rsync -avHS --numeric-ids --password-file=/etc/rsyncd.secrets /mnt/[email protected]::unraidbk

设定完记得执行sh,看看有无ERROR Code 或 异地Server目录里有无资料

建立排程

最後一步建立排程就结束啦 /images/emoticon/emoticon07.gif

这里使用linux常用的crontab排程套件

TIP:依据 <[10 Day](https://ithelp.ithome.com.tw/articles/10264635)> 介绍快取碟Mover的机制,为了避免干扰 Mover 时程,备份可排在Mover执行後2-4小时左右

  • 调整Mover时间

SETTINGS > User Preferences 的Scheduler
https://ithelp.ithome.com.tw/upload/images/20210921/20117399DEGsqG33DW.png

预设是每天的3:40分
可以调整Mover时间至rsync排程时间的前2-4小时

  • 编辑crontab设定档

nano etc/cron.d/root

新增以下指令

30 4 * * 7 /etc/myrsync.sh --your –parameter  #每星期日4:30分执行rsync
  • 指令规则:
    * * * * * /etc/myrsync.sh
    由左而右分别代表:
  • 分钟(MIN) 0 到 59
  • 小时(HOUR) 0 到 23
  • 日(DAY) 1 到 31
  • 月份(MON) 1 到 12
  • 星期几(WEEK) 1 到 7

完工後把unRaid重开机,往後到异地Server检查有无备份内容就说明没问题啦 /images/emoticon/emoticon35.gif


<<:  Day7 计算属性 Computed

>>:  【心得】你今天种菜了吗? grid之路-grid的使用(4)

[Day23]-用python处理影像档案2

在影像内绘制图案 绘制点、线条 绘制多边形 *在影像内填入文字 小实作-制作Qrcode ...

[Day29] 悬浮视窗提醒

这次要来教的是如何制作一个悬浮视窗的提醒,这个功能在许多目前市面上常用的APP上都能看到,例如:Li...

【Day 09】Hook 的奇妙冒险 - Ring3 Hook

环境 Windows 10 21H1 Visual Studio 2019 x64dbg Aug 2...

Day 20 Knative Serving DNS 测试(二)

设定 Networking Layer 参考: https://knative.dev/docs/i...

Day14 CSS一

虽然有插入图片还有一些表格,但...好像还缺少了一些什麽 这时就是咱们CSS语言大显身手的时候啦~ ...