Linux系统下磁带机的直接备份过程(3)

3. 继续写入数据tar rvf /dev/st0 <要写入的文件名>

磁带存储是线性存储,所有数据是依次写入的。为了不覆盖前边的内容,在写入时候,要使用rvf参数写入内容。

tar rvf /dev/st0 test2.tar.gz

再执行一次rvf继续写入其他的文件:

tar rvf /dev/st0 test3.tar.gz

写入完成后,查看磁带上有哪些文件:

[root@dev131 /root]# tar tvf /dev/st0-rw-r--r-- root/root       320 2006-12-01 09:29:02 test1.tar.gz-rw-r--r-- root/root       320 2006-12-01 09:44:19 test2.tar.gz-rw-r--r-- root/root       320 2006-12-01 09:30:14 test3.tar.gz[root@dev131 /root]#

可以看到,新写入的文件和原文件都存储在了磁带上。

磁带的线性存储特性,使得磁带上可以写入两次相同的文件。例如现在test3文件发生了文件大小的变化,再次写入到磁带:

tar rvf /dev/st0 test3.tar.gz

查看文件列表,可以看到磁带上有如下文件:

[root@dev131 /root]# tar tvf /dev/st0-rw-r--r-- root/root       320 2006-12-01 09:29:02 test1.tar.gz-rw-r--r-- root/root       320 2006-12-01 09:30:14 test2.tar.gz-rw-r--r-- root/root       320 2006-12-01 09:44:19 test3.tar.gz-rw-r--r-- root/root     67085 2006-12-01 09:44:19 test3.tar.gz[root@dev131 /root]#

这里可看到,磁带上有两个文件同名的文件写入。这个文件的两次备份大小和时间可以相同,也可以不相同。

注意:在磁带上如果相同文件写入了多次,在恢复时候会比较麻烦,需要先将磁带卷至文件所存储的地方,而后读取磁带当前位置所存储的文件,操作较为复杂,速度也比较慢。所以不建议在一盘磁带上写入相同文件名的文件。备份前,最好将备份文件的文件名上加上时间标记,便于查找备份。例如要备份的文件名是test-20061201-0930.tar.gz和test-20061201-0945.tar.gz,则写入到一盘磁带上。如此在执行备份和恢复操作时候,能够更加便利快捷的进行存取操作。

4. 读取数据tar xvf /dev/st0 <要读取的文件名>

读取数据前,首先查看磁带上的内容,获取要恢复的文件名。例如查看后得到如下结果:

[root@dev131 /root]# tar tvf /dev/st0-rw-r--r-- root/root       320 2006-12-01 09:29:02 test1.tar.gz-rw-r--r-- root/root       320 2006-12-01 09:30:14 test2.tar.gz-rw-r--r-- root/root       320 2006-12-01 09:44:19 test3.tar.gz[root@dev131 /root]#

现在恢复其中的test3.tar.gz文件,执行如下命令:

tar xvf /dev/st0 test3.tar.gz

读取数据后。

[root@dev131 ~]# tar xvf /dev/st0 test3.tar.gztest3.tar.gz[root@dev131 ~]#

随后可以在当前的路径下找到从磁带中读取出来的文件:

[root@dev131 ~]# ls -l test3.tar.gz-rw-r--r--   1   root  root   320  Dec 1  11:12   test3.tar.gz[root@dev131 ~]#

至此恢复操作完成。

通过上文所介绍的tar命令,使用tvf/cvf/rvf/xvf参数,即可实现对磁带的读取、写入操作。使用预先写好的复制数据脚本,配合上磁带机操作命令,并且放置到/etc/crontab中,即可实现自动备份。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/c326a11f033e7bef85f9b85afcd60e4c.html