多磁带备份脚本

多磁带备份脚本

请耐心等待,这是我在 Stack Exchange 类型的网站上发表的第一篇文章。我正在创建一个备份服务器,将存储服务器中的数据存储到磁带库中的多个磁带上。我仍在学习 Linux,因此我需要有关如何继续的帮助/建议。不过我认为我的想法是对的。这是我的设置: 备份环境

我将磁带库(Quantum SuperLoader 3、LTO-4、SCSI)连接到一台旧的戴尔服务器。我有 LTO-3 和 LTO-4 磁带的组合。我还有另一台用于存储的服务器,运行 FreeNAS。存储服务器和备份服务器都连接到 10.x 网络上的交换机,并且它们还有一条专用以太网电缆将两台服务器连接在一起。10.x 网络上的 NIC 设置为 DHCP,从 pfSense 获取预留,而直接将两台服务器连接在一起的 NIC 设置为静态,IP 为 20.1 和 20.2。我认为这是一种很好的方式,可以让存储服务器获得完全的读取访问权限,而不会影响通过交换机的带宽,并且可以确保更安全。另外,有人可以将他们的 IP 设置为 20.1 并访问存储服务器上的所有文件吗?我知道在 FreeNAS 中,您可以限制某些权限以选择 IP,但我没有看到任何限制到某个以太网端口的内容。

无论如何,我已经能够使用 mtx 移动磁带并使用 tar 和设置多磁带标志来传输数据。当跨越多盘磁带时,它会提示您弹出一盘磁带并放入另一盘磁带。我必须使用 mtx 命令运行第二个终端/屏幕来切换磁带,然后返回原始磁带并继续备份。有没有办法可以检测到这种情况并自动切换到另一盘磁带?最好在 shell 脚本或 Python 或其他语言中执行此操作吗?此外,在 tar 命令中,您必须指定磁带的大小。有没有办法可以检测驱动器中的磁带大小以满足这一点?我在 mt 中没有看到任何东西,但我可能遗漏了一些东西。

任何帮助、知识和专业知识都值得感激。谢谢!

如果有帮助的话,以下是我一直在使用的命令:

sudo mount -t nfs 192.168.20.2:/mnt/Storage /home/andrew/FreeNAS/Storage
sudo mt -f /dev/st0 status // Check status of drive
sudo mtx -f /dev/sg3 load 1
sudo tar -v --create --tape-length=800G --file=/dev/st0 
/home/andrew/FreeNAS/Storage/Public
sudo mtx -f /dev/sg3 unload 1

答案1

您已准备好所有工具,只缺少粘合剂:

我自己从来不需要它,但是我的 tar 手册说,你可以使用 在每个磁带末尾执行一个脚本--new-volume-script your_script

your_script 在退出之前只需确保新磁带已安装到位。

答案2

你的所有需求都可以找到答案巴库拉

这样,您将能够:

  • 选择你的保存目的地,
  • 管理你的磁带
  • 根据您的备份策略(完整、增量或差异等...)配置磁带的轮换
  • 定义你的磁带的保留策略。
  • ETC...

它以客户端/服务器模式工作,您可以在多个服务器之间拆分 bacula 的不同功能。

您可以根据需要管理您的备份

相关内容