系统管理指南:设备和文件系统

将文件复制到磁带(tar 命令)

以下是在使用 tar 命令将文件复制到磁带之前应了解的信息:

Procedure如何将文件复制到磁带 (tar)

  1. 转到包含要复制的文件的目录。

  2. 将可写磁带插入磁带机中。

  3. 将文件复制到磁带。


    $ tar cvf /dev/rmt/n filenames
    
    c

    指明要创建归档文件。

    v

    归档时显示每个文件的名称。

    f /dev/rmt/n

    指明应该将归档文件写入指定设备或文件。

    filenames

    指明要复制的文件和目录。使用空格分隔多个文件。

    会将指定的文件名复制到磁带,并且会覆写该磁带上的任何现有文件。

  4. 从磁带机中取出磁带。在磁带标签中写入文件名称。

  5. 确认复制的文件位于该磁带中。


    $ tar tvf /dev/rmt/n
    

    有关列出 tar 磁带中的文件的更多信息,请参见如何列出磁带中的文件 (tar)


示例 29–4 将文件复制到磁带 (tar)

以下示例说明如何将三个文件复制到磁带机 0 中的磁带。


$ cd /export/home/kryten

$ ls reports

reportA reportB reportC

$ tar cvf /dev/rmt/0 reports

a reports/ 0 tape blocks

a reports/reportA 59 tape blocks

a reports/reportB 61 tape blocks

a reports/reportC 63 tape blocks

$ tar tvf /dev/rmt/0

Procedure如何列出磁带中的文件 (tar)

  1. 将磁带插入磁带机。

  2. 显示磁带内容。


    $ tar tvf /dev/rmt/n
    
    t

    列出磁带中的文件目录。

    v

    t 选项一同使用,提供有关磁带中的文件的详细信息。

    f /dev/rmt/n

    指明磁带设备。


示例 29–5 列出磁带中的文件 (tar)

以下示例显示磁带机 0 中的磁带上的文件列表。


$ tar tvf /dev/rmt/0

drwxr-xr-x   0/1        0 Jul 28 15:00 2004 reports/

-r--r--r--   0/1   206663 Jul 28 15:00 2004 reports/reportA

-r--r--r--   0/1   206663 Jul 28 15:00 2004 reports/reportB

-r--r--r--   0/1   206663 Jul 28 15:00 2004 reports/reportC

Procedure如何从磁带中恢复文件 (tar)

  1. 转到要放置文件的目录。

  2. 将磁带插入磁带机。

  3. 从磁带中恢复文件。


    $ tar xvf /dev/rmt/n [filenames]
    x

    指明应从指定的归档文件中提取文件。指定磁带机中的磁带上的所有文件都会被复制到当前目录。

    v

    恢复时显示每个文件的名称。

    f /dev/rmt/n

    指明包含归档文件的磁带设备。

    filenames

    指定要恢复的文件。使用空格分隔多个文件。

    有关更多信息,请参见 tar(1) 手册页。

  4. 确认文件已被复制。


    $ ls -l
    

示例 29–6 检索磁带中的文件 (tar)

以下示例说明如何从磁带机 0 中的磁带恢复所有文件。


$ cd /var/tmp

$ tar xvf /dev/rmt/0

x reports/, 0 bytes, 0 tape blocks

x reports/reportA, 0 bytes, 0 tape blocks

x reports/reportB, 0 bytes, 0 tape blocks

x reports/reportC, 0 bytes, 0 tape blocks

x reports/reportD, 0 bytes, 0 tape blocks

$ ls -l

故障排除

从磁带中提取的文件名称必须与归档文件中存储的文件名称完全匹配。如果对文件的名称或路径有任何质疑,请首先列出磁带中的文件。有关列出磁带中的文件的说明,请参见如何列出磁带中的文件 (tar)