存储 频道

Unix系统下磁带机配置使用攻略

三、磁带管理命令

    从用户的角度来看,unix的任何设备都可以看做是文件。因此,可以“打开”合适的磁带驱动器文件来进行写入操作,将要备份的数据写入到文件中去。虽然这听上去过于简单了,但是实际情况就是这样。Unix系统把每一个设备都看成一个文件,与普通文件一样处理,这样可以使文件与设备的操作尽可能统一。 从用户的角度来看,对设备的使用和一般文件的使用一样。所以管理磁带的最有效的方法是使用相关命令。
 
    1. ml命令

    mt命令用来控制磁带机。可以使用 mt 命令的 status 选项来获取有关磁带机的状态信息。mt 命令可报告配置文件 /kernel/drv/st.conf 中介绍的所有磁带机的信息。

    mt命令格式:mt [ -f device ] command [ count ] ,
 显示磁带状态
    # mt -f /dev/rmt/n status
    然后可以替换磁带机编号 0、1、2、3 等,以显示有关所有可用磁带机的信息。
    应用实例:
    显示 QIC-150 磁带机 (/dev/rmt/0) 的状态:
    $ mt -f /dev/rmt/0 status
    Archive QIC-150 tape drive:
    sense key(0x0)= No Additional Sense residual= 0 retries= 0
    file no= 0 block no= 0
 重新拉张磁带
    如果读取磁带时出现错误,则可以重新张紧磁带、清洁磁带机,然后重试。请勿重新张紧非 QIC 磁带机。
$ mt -f /dev/rmt/3 retension

 要反绕盒式磁带,请使用 mt 命令。
$ mt -f /dev/rmt/1 rewind

    2.tar命令

    tar命令是用来建立,还原备份文件的工具程序,Solaris 系统对tar 进行了增强,使之更胜任系统级别的备份。它允许所有或部分要备份的文件和目录列表保存在一个或多个文本文件中。UNIX环境下根文件系统的/dev目录包含了所有和物理设备关联的文件。当对这些文件进行操作时,实际上是在操作下层的物理设备。如果DAT或DLT的磁带机已经连接好并加电,一般下情况下能够自动检测到磁带机并在自检时会提示是否要配置发现的磁带机,选择配置即可。如果用户在起系统时没有发现磁带机,可能是磁带机的驱动已经安装到系统中了。

    tar命令格式:
    tar {c|r|t|u|x}[BDeEFhilmnopPqvw@[0-7]][bfk][X...][块大小] [磁带存档文件] [大小] [排除文件...] {文件 | -I 包含文件 | -C 目录文件}...下面介绍常用选项:

 将文件复制到磁带
    1. 进入包含要复制的文件的目录。
    2. 将可写磁带插入磁带机中。
    3. 将文件复制到磁带。命令如下:
    $ tar cvf /dev/rmt/n filenames
    参数说明:c 指明要创建归档文件;v 归档时显示每个文件的名称;
    f /dev/rmt/n 指明应该将归档文件写入指定设备或文件。
    filenames 指明要复制的文件和目录。使用空格分隔多个文件。
    系统会将指定的文件名复制到磁带,并且会覆写该磁带上的任何现有文件。然后从磁带机中取出磁带。在磁带标签中写入文件名称。
    应用实例:把/export/home/目录下两个文件文件复制到磁带
$ cd /export/home/
$ ls reports
reportA reportB
$ tar cvf /dev/rmt/0 reports
a reports/ 0 tape blocks
a reports/reportA 59 tape blocks
a reports/reportB 61 tape blocks
$ tar tvf /dev/rmt/0

 从磁带中恢复文件
    转到要放置文件的目录。
    将磁带插入磁带机。
    从磁带中恢复文件。 使用命令:
$ tar xvf /dev/rmt/n [filenames]
    参数说明:x 指明应从指定的归档文件中提取文件。指定磁带机中的磁带上的所有文件都会被复制到当前目录。v 恢复时显示每个文件的名称。f /dev/rmt/n 指明包含归档文件的磁带设备。filenames 指定要恢复的文件。使用空格分隔多个文件。

    3.cpio命令

    Cpio命令用于复制需要多个磁带卷的文件、特殊文件或文件系统。或者,当要将文件从运行当前的 Solaris 发行版的系统复制到运行 SunOS 4.0/4.1 发行版的系统时使用。Cpio的命令参数太多,这里只介相关参数。
 将目录中的所有文件复制到磁带。步骤如下:
1. 转到包含要复制的文件的目录。
2. 将可写磁带插入磁带机中。
3. 将文件复制到磁带。使用命令:
$ ls | cpio -oc > /dev/rmt/n
参数说明:ls 为 cpio 命令提供文件名列表;cpio -oc 指定 cpio 命令应该在复制出模式 (-o) 下操作,并以 ASCII 字符格式 (-c) 写入头信息。这些选项确保可移植到其他供应商的系统。> /dev/rmt/n :指定输出文件。
系统会将目录中的所有文件复制到指定磁带机中的磁带,同时会覆写该磁带中的任何现有文件。屏幕将显示复制的总块数。
应用实例:
将/export/home/目录中的所有文件复制到磁带 :
$ cd /export/home/kryten
$ ls | cpio -oc > /dev/rmt/0
16 blocks
$ cpio -civt < /dev/rmt/0
-rw-r--r-- 1 root other 0 Jul 28 14:59 2004, filea
-rw-r--r-- 1 root other 0 Jul 28 14:59 2004, fileb
-rw-r--r-- 1 root other 0 Jul 28 14:59 2004, filec
drwxr-xr-x 2 root other 0 Jul 28 14:59 2004, letters
16 blocks
 从磁带中恢复所有文件 (cpio)
如果已使用相对路径名创建了归档文件,则恢复文件时会在当前目录中以目录形式生成输入文件。但是,如果已使用绝对路径名创建了归档文件,则将使用相同的绝对路径在系统中重新创建该文件。步骤如下:
1. 转到要放置文件的目录。
2. 将磁带插入磁带机。
3. 从磁带中提取所有文件。 命令如下:
$ cpio -icvd < /dev/rmt/n
参数说明:-i 从标准输入中提取文件。-c 指定 cpio 命令应以 ASCII 字符格式读取文件。-v 在以与 ls 命令输出类似的格式恢复文件时,显示这些文件。-d 根据需要创建目录。< /dev/rmt/n 指定输出文件。

    4. tar 和cpio命令对比

    在某些情况下,特别是单用户系统,并不需要复杂的备份过程tar和cpic的这样的简单磁带命令完全可以定期地把重要数据保存到磁带上。tar和cpio还能够备份通过NFS加载的本地和远程文件系统。图2 是tar和 cpio 命令的对比和优缺点


图2 是tar和 cpio 命令的对比和优缺点
0
相关文章