我有自己的一个奇特的磁带驱动器,惠普LTO2与200/400 GB的墨盒。 st驱动程序报告如下:
scsi 1:0:0:0: Sequential-Access HP Ultrium 2-SCSI T65D
我可以使用tar存储和检索像魅力的文件
tar cf /dev/st0 somedirectory
和
tar xf /dev/st0
工作无懈可击。
但是,我真正想要备份的是LVM LV。 它们包含具有不同分区布局的整个虚拟机,因此使用mount和tar不是一个选项。
我试过使用类似的东西
dd if=/dev/VG/LV bs=64k of=/dev/st0
要实现这一点,但似乎有与这种方法相关的各种问题。
首先,我希望能够在一盘磁带上存储超过1个LV。 现在我想我可以试图连接磁带上的数据,但是我觉得在一个有各种不同尺寸的不同LV的自动化场景中,这样做是不行的。 其次,我想存储一个小的XML文件以及包含关于LV中包含的虚拟机的一些信息的原始数据。
我可以将所有东西都转储到一个目录中,并且将其解决 – 不是很理想,我不得不放置大量的scratch空间。
有一个更简单的方法来实现这一点?
第三,从网上search来看,在写入磁带时使用类似mbuffer的东西似乎是明智的,以防止维基百科称之为磁带“擦鞋”。 但是,我不能用mbuffer做任何有用的事情。 mbuffer手册页build议写入磁带设备:
mbuffer -t -m 10M -p 80 -f -o $TAPE
所以我试过这个:
dd if=/dev/VG/LV | mbuffer -t -m 10M -p 80 -f -d 64k -o /dev/st0
注意添加的“-d 64k”来说明磁带的64k块大小。
然而,从这样写入的磁带读取数据从来没有得到任何有用的结果 – dd现在已经运行了很多年,并设法从磁带传输只有361M的数据。
这里有什么问题?