在多个预定义磁带上生成 tar

在多个预定义磁带上生成 tar

如何将tar某些文件保存到多个磁带上,并预先列出每个磁带?这样我就可以拥有完全无人值守的存档,一旦磁带已满,无需物理更改介质。

就我的具体情况而言,

  • 每个磁带实际上都是一个/dev/sd?块设备,存档被写入原始磁盘,并且没有分区或文件系统来节省空间。
  • 所有目标磁盘同时连接到主机。
  • tar是 GNU 版本 1.34。
  • 最大单个文件大小小于最小目标的大小。

到目前为止,为了执行此任务,我有以下命令:tar -c -M -f /dev/tape1 -f /dev/tape2 ... /files/to/be/archived

分步演练:

  1. tar -c是创建 tar 存档的命令。
  2. -M告诉tar我我想制作一个多卷存档。
  3. -f与每个要写入的目标磁带一起列出多次。
  4. /files/to/be/archived是要存档的内容。

由于--tape-length命令中不存在,tar因此应在每个磁带上写入尽可能多的内容,无论磁带相对于其他磁带有多大。这允许不同尺寸的磁带。

这会像我上面解释的那样工作吗,或者行为会有所tar不同吗?

答案1

使用上面列出的命令,/dev/tape0并用类似的命令替换实际的设备名称,tar成功完成了存档的创建。

是否可以将该存档提取回单独的文件,将很快进行测试。

编辑:存档已成功提取。

相关内容