备份命令

要按索引节点备份文件系统,请指定 -LevelFileSystem 参数。 与 -u 标志配合使用时,-Level 参数提供了一种方法来维护每个文件系统的增量备份的层次结构。 指定 -u 标志并将 -Level 参数设置为 n,以便仅备份自 n-1 级别备份以来修改过的那些文件。 可能的备份级别为 0 到 9。 级别 0 备份将对文件系统中的所有文件进行归档。

FileSystem 参数可指定物理设备名称(块或原始名称)或其上安装文件系统的目录的名称。 缺省文件系统为根 (/) 文件系统。

要执行按索引节点进行的备份,用户必须对文件系统设备(例如 /dev/hd4)具有读访问权,或者必须具有备份权限。

注意:
  1. 按索引节点备份文件系统之前,必须先卸载该文件系统。 如果试图备份已安装的文件系统,那么显示警告消息。 backup 命令继续运行,但创建的备份可能包含不一致问题,这是因为备份操作期间,文件系统中可能发生了更改。
  2. 按索引节点备份文件系统时,将截断其 uidgid 超过 65535 的文件的 uidgid。 复原后,这些文件的 uidgid 属性可能具有不同的值。 要正确地保留这些值,请始终按名称备份 uidgid 大于 65535 的那些文件。
  3. 按索引节点备份时,只能归档 JFS(日志文件系统)文件系统。 按文件名备份任何非 JFS 文件系统。

用途

备份文件和文件系统。

语法

按名称备份文件:

backup -i [ -b Number ] [ -p [ -e RegularExpression ]] [ -E{force|ignore|warn} ] [ -f Device ] [ -l Number] [ -U ] [ -o ] [ -q ] [ -v ] [ -ejt ]

按索引节点备份文件系统:

backup [[ -Level ] [ -b Number ] [ -c ] [ -f Device ] [ -L Length ] [ -U ] [ -u ]] [ FileSystem ] | [ -w | -W ] [ -ejt ]

描述

backup 命令在备份介质上(比如磁带或软盘)上创建文件的副本。 副本的格式是以下两种备份格式之一:
  • 使用 -i 标志按名称备份的特定文件。
  • 使用 LevelFileSystem 参数按索引节点备份的整个文件系统。
如果运行不带任何参数的 backup 命令,那么根文件系统级别 9 索引节点将备份到 /dev/rfd0 设备。 缺省语法是:
-9uf/dev/rfd0 /dev/rhd4

缺省备份设备是 /dev/rfd0。 如果指定的标志不适合指定的备份设备,那么 backup 命令显示一条错误消息并继续进行备份。

单个备份可涉及多个卷。

注意:
  1. 运行 backup 命令会导致丢失先前存储在所选输出介质上的所有资料。
  2. 如果在系统备份期间修改文件,那么可能会破坏归档的数据完整性。 在系统备份过程中,请将系统活动保持为最少。
  3. 如果备份到设备块大小设置为 0 的磁带机,那么除非缺省写大小与 backup 命令配合使用,否则可能很难从磁带恢复数据。 当磁带设备块大小为 0 时,backup 命令的缺省写大小可由 restore 命令读取。

    换言之,当磁带设备块大小为 0 时,不得指定 -b 标志。 如果指定了 backup 命令的 -b 标志,并且该标志与缺省大小不同, 从磁带复原归档文件时,必须使用 restore 命令的 -b 标志指定相同的大小。

按名称备份文件

要按名称备份,请使用 -i 标志。 backup 命令用于读取待备份文件的名称的标准输入。

文件类型可以是特殊文件,常规文件或目录。 当文件类型是目录时,仅备份目录。 目录下的文件不备份,除非明确指定备份它们。

注意:
  1. 将使用与已归档文件相同的路径名来复原文件。 因此,要创建可从任何路径恢复的备份,请使用您要备份的文件的完整路径名。
  2. 当备份需要多个卷的文件时,请不要从键盘输入文件名的列表。 反而应从一个文件将列表传送或重定向到 backup 命令。

    在您从键盘输入文件名并且备份过程需要新的磁带或软盘时,此命令将丢失所有已输入但尚未备份的文件名。 要避免此问题,请仅在先前文件已归档消息显示之后输入每个文件名。 归档的消息由字符 a 后跟文件名称构成。

  3. 如果指定 -p 标志,那么将仅对小于 2 GB 的文件进行打包。

按索引节点备份文件系统

要按索引节点备份文件系统,请指定 -LevelFileSystem 参数。 与 -u 标志配合使用时,-Level 参数提供了一种方法来维护每个文件系统的增量备份的层次结构。 指定 -u 标志并将 -Level 参数设置为 n,以便仅备份自 n-1 级别备份以来修改过的那些文件。 有关每个增量备份日期、时间和级别的信息被写入 /etc/dumpdates 文件。 可能的备份级别为 0 - 9。 级别 0 备份将对文件系统中的所有文件进行归档。 如果 /etc/dumpdates 文件不包含特定文件系统的备份信息,那么指定任何级别将导致对该文件系统中的所有文件进行归档。

FileSystem 参数可指定物理设备名称(块或原始名称)或其上安装文件系统的目录的名称。 缺省文件系统为根 (/) 文件系统。 用户必须对文件系统设备(例如 /dev/hd4)具有读访问权或者具有备份权限,才能执行按索引节点进行的备份。
注意:
  1. 按索引节点备份文件系统之前,必须先卸载该文件系统。 如果试图备份已安装的文件系统,那么显示警告消息。 backup 命令继续运行,但创建的备份可能包含不一致问题,这是因为备份操作期间,文件系统中可能发生了更改。
  2. 按索引节点备份文件系统时,将截断其 uidgid 超过 65535 的文件的 uidgid。 复原后,这些文件的 uidgid 属性可能具有不同的值。 要正确保留这些值,请始终按名称备份其 uidgid 大于 65535 的文件。
  3. 按索引节点备份时,只能归档 JFS(日志文件系统)文件系统。 按文件名或使用其他归档命令(例如 paxtarcpio 命令)备份任何非 JFS 文件系统
  4. 要备份加密文件系统,必须使用 -Z 标志。

标志

标志名称 描述
-b Number

对于按名称进行的备份,请指定 512 字节块的数量;对于按索引节点进行的备份,请指定要在单次输出操作中写的 1024 字节块的数量。 当 backup 命令写至磁带设备时,缺省值为 100(对于按名称进行的备份)和 32(对于按索引节点进行的备份)。

写的大小是块数量乘以块大小。 对于按名称进行的备份和按索引节点进行的备份,写至磁带设备的 backup 命令的缺省写大小分别为 51200 (100 × 512) 和 32768 (32 × 1024)。 写大小必须是磁带的物理块大小的偶倍数。

backup 命令写至软盘时,-b 标志的值始终被忽略。

-c 指定磁带是盒式磁带,而不是九磁道格式。
- e RegularExpression 指定不会将名称与正则表达式匹配的文件打包。 正则表达式是一个由字符、元字符和在搜索模式中定义一个字符串或一组字符串的运算符构成的集合。 它还可以是包含通配符和运算的字符串,以定义一组可能的(一个或多个)字符串。 仅当指定了 -p 标志时,-e 标志才适用。
-ejt 将磁带倒带,并使磁带机脱机。 这将在适当的时候卸装磁带。 在设备再次使用前,磁带必须重新插入。
-E 对于按名称进行的备份,-E 标志需要下列其中一个参数。 如果省略 -E 选项,warn 是缺省行为。
强制
如果不能保持文件的固定扩展数据块大小或空间保留,那么文件上的备份操作失败。
忽略
忽略任何保持范围属性中的错误。
warn
如果文件的空间保留或者固定扩展数据块大小无法保存,就发出一个警告。
-f Device
指定输出设备。 要将输出发送到指定的设备,请指定 Device 变量作为路径名,例如:
/dev/rmt0
要将输出发送到标准输出设备,请指定 -(减号)。 -(减号)功能使您能够将 backup 命令的输出传送到 dd 命令。
您也可以指定归档设备的范围。 范围规范必须是如下的格式:
/dev/deviceXXX-YYY
其中,XXXYYY 是整数,而 XXX 必须始终小于 YYY;例如:
/dev/rfd0-3

指定范围内的所有设备必须是同一类型的。 例如,可以使用一组 8 毫米 2.3 GB 磁带或一组 1.44 MB 软盘。 所有的磁带设备必须设置成同样的物理磁带块大小。

如果 Device 变量指定一个范围,那么 backup 命令将自动从该范围中的一个设备转至下一个设备。 在穷尽所有指定的设备后,backup 命令将停止并请求在此范围的设备上安装新卷。

 
G  
i 指定文件从标准输入读取并按文件名归档。 如果使用相对路径名称,那么在恢复时相对于当前目录恢复文件(通过 restore 命令)。 如果使用完整路径名,那么文件恢复至那些相同的名称下。
-L Length 以字节为单位指定磁带长度。 此标志覆盖 -c-d -s 标志。 可以指定后缀为 b、k、m 或 g 的大小,这些后缀分别表示块(512 字节)、千字节(1024 字节)、兆字节 (1024 KB) 或千兆字节 (1024 MB)。 要表示长度为 2 GB 的磁带,请输入 -L 2g。
注: 仅对索引节点备份使用 -L 标志。
-level 指定备份级别 (0 - 9)。 缺省级别是 9。
-l Number 限制要在软盘设备上使用的总块数。 指定的值必须是每个软盘磁道的扇区数的非零倍数。 此选项仅适用于按名称进行的备份。
-O 按名称创建可与 V2 兼容的备份。 要与 V2 系统兼容,此标志是必需的,因为按名称创建的高于 2 的版本的备份不能在 V2 系统上恢复。 要按名称创建与 V2 兼容的备份,请将 -o 标志与按名称进行备份所需的其他标志配合使用。

不会备份对于 V2 系统过大的具有属性和值(例如用户标识和组标识)的文件。 对于每个这种太大的文件和值的情况将显示一条消息。

-p 指定文件归档前先打包或压缩。 仅对小于 2 GB 的文件进行打包。
注: 仅当从不活动文件系统备份文件时,必须使用此选项。 如果在进行备份时修改文件,那么可能会导致损坏备份,并且无法恢复数据。 备份到执行压缩的磁带设备时,可以省略此选项。
-q 指明可移动介质已准备就绪。 指定 -q 标志时,backup 命令将继续运行,而不会提示您准备备份介质。 按Enter键继续。 此选项仅适用于第一个卷。 对于后续卷,您将收到提示。 -q 标志仅适用于按名称进行的备份。
-U 指定此标志可以备份所有访问控制表 (ACL) 或指定的扩展属性。 如果不使用此选项,那么映像仅包括归档中的 AIX Classic (AIXC) ACLAIX Classic (AIXC) ACL ACL 和 Printing Color 文件 (PCL) 以及其他常规文件数据。 对于包含 NFS4 ACL 的文件,缺省情况下,在归档期间这些 ACL 将转换为 AIXC。对于包含 NFS4 ACL 的文件,缺省情况下,在归档期间这些 ACL 将转换为 AIXC。
-U 使用文件系统的原始设备名以及备份的时间,日期和级别来更新 /etc/dumpdates 文件。 如果要进行增量备份,那么必须指定 -u 标志。 -u 标志仅适用于按索引节点进行的备份。
-v 使 backup 命令显示有关备份的其他信息。 当使用 -v 标志时,那么显示文件存在于归档时的大小(以字节为单位)。 另外,当处理完所有文件后,将显示这些文件大小的总和。 目录大小列示为 0。 符号链接与符号链接的大小一起列出。 硬链接和文件大小一起列示,此文件是有关硬链接如何归档的。 块和字符设备(如果备份它们)列出时以 0 表示其大小。 当未指定 -v 标志时, backup 命令仅显示正在归档的文件的名称。 此选项仅当按文件名称备份时才使用。
-w 处于禁用状态。 如果指定了 -W 标志,那么不会应用任何其他标志。
-W 显示 /etc/dumpdates 文件中的每个文件系统的最近的备份日期和级别。 如果指定了 -W 标志,那么不会应用任何其他标志。

退出状态

请参阅 Virtual I/O Server 命令的退出状态

示例

  1. 要使用完整路径名备份 /home 目录中的所有文件和子目录,请输入以下命令:
    find /home -print | backup  -i -f /dev/rmt0

    -i 标志指定将从标准输入读取文件并按文件名对其进行归档。 find 命令在 /home 目录中生成一个所有文件的列表。 该列表中的文件都是完整路径名。 |(竖线符号)使 backup 命令从标准输入读取此列表。 -f 标志指示 backup 命令将文件写至 /dev/rmt0 磁带设备。 因为这些文件使用完整路径名进行归档,所以在复原时,它们将写入到相同路径。

  2. 要使用相对路径名备份 /home/padmin 目录中的所有文件和子目录,请输入以下命令:
    find . -print | backup  -i -v -q

    find 命令生成的列表中的每个文件名前面都有 ./(点和斜杠)。 由于这些文件是使用相对路径名备份的,因此在复原时这些文件将写入当前目录。 -v 标志使 backup 命令显示有关备份的其他信息。 这些文件被写至缺省备份设备 /dev/rfd0

  3. 要备份 /(根)文件系统,请输入以下命令:
    backup  -0 -u -f /dev/rmt0 /

    0 级别指定备份 /(根)文件系统中的所有文件。 -u 标志使 backup 命令更新此备份的 /etc/dumpdates 文件。

  4. 要备份根 (/) 文件系统中自上次 0 级别备份以来修改过的所有文件,请输入以下命令:
    backup  -1 -u -f /dev/rmt0 /

    如果 /etc/dumpdates 文件没有 /(根)系统的 0 级别备份条目,那么将备份该文件系统中的所有文件。

  5. 要备份虚拟介质存储库中的虚拟光学介质文件,请完成下列任务:
    1. 创建一个名为 backup_files 的文件,其中包含要备份的文件的名称。 在该文件中包含完整路径名。
      /var/vio/VMLibrary/media_file1
      /var/vio/VMLibrary/media_file2
      /var/vio/VMLibrary/media_filen
      
    2. 使用 backup 命令发送此文件:
      cat backup_files | backup -i -f /dev/rmt0