我正在尝试使用 tar 和某种形式的加密创建跨多个磁带的备份(在手动加载驱动器上)。以下是我一直在使用的方法(部分基于,如果我没记错的话,来自答案):

mt -f $TAPE rewind; tar --ignore-failed-read -cf - <dirtree> \
  | gpg -c --compress-algo none --pinentry-mode loopback \
  | mbuffer -m 24G -P 95% -f -o $TAPE \
    -A "echo next tape; mt -f $TAPE eject ; read a < /dev/tty"

这对于从单磁带备份和多磁带备份中的第一盘磁带恢复“mt -f $TAPE rewind ; dd if=$TAPE bs=8M | gpg -d –passphrase | tar -x”非常有效。但我不太清楚如何逆转多盘磁带上的备份顺序。以下是我尝试获取第二盘磁带上的文件列表的几种方法…

mt -f $TAPE rewind; mbuffer -i $TAPE -m 24G -P 95% -A "echo next tape; mt -f $TAPE eject ; read a < /dev/tty; mt -f $TAPE rewind" | gpg -d | tar -t


mt -f $TAPE rewind; dd if=$TAPE bs=8M | gpg -d --passphrase | tar --multi-volume -t

这是我最近出现的错误(在第一盘磁带上成功列出一堆文件之后)…

gpg: block_filter 0x0000558e3b208230: read error (size=36854,a->size=1535012014164377600 bytes (12 TB, 11 TiB) copied,
41413.2 s, 290 MB/s
)
gpg: block_filter 0x0000558e3b208d70: read error (size=33201,a->size=17841)
gpg: WARNING: encrypted message has been manipulated!
gpg: block_filter: pending bytes!
gpg: block_filter: pending bytes!
Prepare volume #2 for ‘-’ and hit return:
tar: -: Cannot open: Bad file descriptor
tar: Error is not recoverable: exiting now

当我尝试直接从磁带 #2 读取数据而不先通过磁带 #1 时,我收到错误“gpg: packet(13) too large”

关于阅读用我原来的备份脚本创建的磁带集的任何建议都很好,但我也愿意从头开始并使用不同的命令序列进行备份。

4

  • 我不会对磁带使用加密。如果是有价值的数据,请将磁带存放在保险箱中。PS 使用磁带时,请保持简单,否则会面临数据丢失


    – 


  • 这些数据包含受 HIPAA 保护的个人健康信息,因此我不太愿意将纯文本和数据放在我将交给管理员/经理的设备上,因为他们可能不像我那么偏执。不过,如果这是我唯一可行的选择,我会认真考虑你的建议。


    – 

  • 一些警告,如果你使用 写入磁带,mbuffer你也需要使用 从磁带读取mbuffer。你试过吗?


    – 


  • 是的,我上面给出的尝试恢复的第一个例子是从“mbuffer -i $TAPE”开始的倒带。


    – 

0