Tar 和 Taper for Linux

作者:Yusuf Nagree

本文介绍了在 Linux 系统上备份文件的方法。描述了两个程序——tar 和 taper。第一个程序可从自由软件基金会获得,基于 GNU 许可,并包含在大多数 Linux 发行版中。第二个程序由本文作者编写,提供了更友好的用户界面。它也基于 GNU 许可,因此可以免费获得。请注意,本文并非旨在作为这两个软件包的完整参考,而仅仅是一个入门介绍。有关完整详细信息,请参阅每个软件包随附的文档。

tar

几乎每种形式和克隆的 Unix(以及其他操作系统)都带有某种版本的 tar。它是一个标准程序,在一个机器上制作的归档文件应始终可在其他机器上使用。tar 的真正问题在于它实际上根本没有用户界面。所有操作都必须通过命令行开关完成。

制作备份

tar 可以将备份制作到硬盘文件或磁带驱动器,以及通过 NFS 链接(我们在此处不介绍)。要备份的文件可以使用 GNU gzip(或 compress)进行压缩。

要制作备份,基本形式是

$ tar [选项] 要备份或恢复的文件

最常用的选项是

c

创建新归档文件。

z

使用 GNU gzip 压缩归档文件。

Z

使用 compress 压缩归档文件。

f name

使用 name 作为归档文件或设备。默认记录为 /dev/rmt0,尽管有些人已更改此设置,使默认值为 /dev/nst0、/dev/tape,甚至标准输入。通常,始终显式给出磁带驱动器的设备名称更安全。

r

将文件附加到现有归档文件。请注意,如果您使用 ftape,由于当前 ftape 驱动程序的限制,此选项将不起作用。

u

将文件附加到现有归档文件,但仅当它们比归档文件中已有的文件更新时才附加。再次强调,如果您使用 ftape,此选项将不起作用。

因此,要在名为 etc_backup.tar 的文件中创建 /etc 目录的压缩备份,您将执行

$ tar czf etc_backup.tar /etc

请注意,/etc 下的所有子目录也将被备份。

如果您现在想添加 /usr/local/etc 的内容,您将执行:$ tar rzf etc_backup.tar /usr/local/etc

假设您现在对文件进行了一些更改,但并非全部更改。您可以执行

$ tar uzf etc_backup.tar /etc /usr/local/etc

tar 将遍历并仅将自最初创建归档文件以来已更改的文件附加到归档文件中。

以上示例适用于备份到硬盘上的文件。备份到磁带驱动器只需给出磁带设备的文件名即可,通常软盘磁带驱动器为 /dev/ftape,SCSI 磁带驱动器为 /dev/st0。

恢复

此处相关的两个选项是

x

表示从归档文件中x提取文件。如果未指定文件名,则提取归档文件中的所有文件。

t

表示打印内容t表;打印将要提取的文件名,但实际上不提取文件。

因此,要恢复上述示例中备份的内容,您将执行

$ tar xzf etc_backup.tar

请注意,tar 不会将文件放回其原始位置,而是基于当前目录创建一个新树。例如,如果您在发出上述命令时位于 /usr/home/john 目录中,您将发现已创建了一个新的子目录 /usr/home/john/etc,并且所有文件都在该子目录中。如果您希望恢复文件到其原始位置

$ cd /$ tar xzf etc_backup.tar

请注意,这样做非常危险,因为旧文件将在没有警告的情况下被覆盖。如果使用不当,可能会产生可怕的后果。通常,在您的主目录或 /tmp 中恢复,然后在检查没有可怕的事情发生后将文件复制到其正确位置要安全得多。

要恢复单个文件或目录,只需在所有 tar 参数之后指定名称即可。例如,要仅恢复 hosts 和 passwd 文件

$ tar xzf etc_backup.tar etc/hosts etc/passwd

请注意,需要指定完整路径名(不包括前导 /,tar 明确不存储)。

恢复发行版

大多数为 Linux 编写软件并将其提供给他人的人都通过 tar 文件分发它。例如,假设您已下载了一个新游戏 best_game-1.3.tar.gz。要在您的主目录中安装(恢复)此游戏

$ cd$ tar xzf best_game-1.3.tar.gz

游戏及其所有适用文件都将被恢复。如果程序作者遵循了正常约定,则所有文件都将位于名为 best_game-1.3 的目录中。请注意,从未知来源恢复文件时,最好将文件恢复到您的主目录中,检查文件,然后在确定一切正确后,将它们移动到作者建议的位置。这样,您将避免意外的文件覆盖。最好首先使用 t 选项查看作者是否已将文件放在子目录中。如果没有,请创建一个子目录并使用它

$ cd$ mkdir worst_game-0.1$ cd worst_game-0.1$ tar xzf worst_game-0.1.tar.gz
其他选项

tar 支持的其他一些选项包括

M

告诉 tar 使用多卷归档文件。如果 tar 到达软盘或磁带的末尾,它不会中止并报错,而是提示插入新的软盘或磁带,它称之为“卷”。每个卷都包含一个独立的归档文件,您不需要所有卷来提取文件,但如果文件跨越两个卷,您将需要使用 -xM 选项提取该文件。请注意,某些磁带设备(如 DAT)不适用于此选项。

N DATE

告诉 tar 仅对晚于 DATE 的文件进行操作。因此,您可以告诉 tar 仅备份晚于特定日期的文件。DATEdate 命令生成的相同格式指定。通常,在进行一次备份之前,您可以使用 date 命令记录进行备份的日期和时间,如下所示:$ date > last_backup 然后,下次备份时,您可以通过在 tar 的命令行中包含选项 -N "cat last_backup" 来仅备份自上次备份期间或之后已更改的文件。

T FILENAME

告诉 tar 要备份/恢复的文件列表在 FILENAME 中。例如,tar czf /dev/ftape LIST_FILES 将创建一个归档文件,其中包含 LIST_FILES 文件中命名的文件。LIST_FILES 文件只是一个简单的文本文件,每行一个文件名。

v

详细模式。

h

当 tar 遇到链接时,它通常会存储有关该链接的详细信息。如果给定此选项,tar 实际上将存储链接指向的文件,并假装链接不存在。谨慎使用此选项,因为您最终可能会得到同一文件的许多不同副本。

W

使 tar 在写入归档文件后验证它。它不适用于无法倒带的磁带驱动器。

P

通常,tar 会从路径名中剥离前导 /,以便在恢复时,文件将恢复到相对于当前目录的目录中(请参阅上面关于 /usr/home/john 的示例)。通过指定此选项,文件将从备份的位置恢复。谨慎使用此选项,因为您可能会不小心覆盖硬盘上的文件。

更多详细信息可以在 tar 手册页以及 tar 源代码附带的信息文件中找到。

使用软盘驱动器

尽管大多数备份都在磁带驱动器上完成,但有时使用软盘驱动器也很有用(这可能非常慢且令人沮丧!)。要使用软盘,请为 tar 提供文件名 /dev/fd0 作为第一个软盘(DOS 术语中的驱动器 A:),为 /dev/fd1 作为第二个软盘(驱动器 B:)。因此,要将 /etc 目录备份到“驱动器 A:”

$ tar czf /dev/fd0 /etc

请注意,软盘的现有内容将被完全覆盖。使用软盘驱动器时,-M 选项非常方便,因为在一个软盘满后,tar 会自动提示下一个软盘。

一个磁带上的多个归档文件

如果您使用 ftape,则无法将文件附加到现有 tar 备份。因此,如果您制作一个仅占用 10 MB 的备份,您将浪费磁带的其余部分。幸运的是,有一种方法可以使用磁带的其余部分,即使用 mt 程序。在 tar 将备份写入磁带后,它会在磁带上写入两个 EOF 标记。示意性地,您的磁带现在看起来像

Tar and Taper for Linux

您可以通过以下方式告诉 mt 前进到这些 EOF 标记

$ mt -f /dev/nftape fsf 1

请注意,您必须使用非倒带设备 (/dev/nftape),因为如果您不这样做,在 mt 重新定位磁带后,它将自动倒带,并且您的详细模式重新定位将丢失。fsf 1 是一个 mt 命令,它将磁带前进到第一个 EOF 标记。

您的磁带现在将定位在第一个备份的末尾,您可以在此位置创建另一个备份

$ tar czf /dev/ftape files_for_backup_2

因为您使用了倒带设备,所以在写入 tar 备份后,磁带将倒带。您的磁带将如下所示

Tar and Taper for Linux

如果您希望添加第三个备份,您可以执行以下操作

$ mt -f /dev/nftape fsf 2<
$ tar czf /dev/ftape files_for_backup_3

fsf 2 前进超过两个 EOF 标记——因此,超过前两个备份。您的磁带将如下所示

Tar and Taper for Linux

并且将定位在磁带的开头,因为您使用了倒带设备进行备份。

如果您希望从第一个备份中恢复文件,您可以执行以下操作

$ mt -f /dev/ftape rewind<
$ tar xzf /dev/ftape files_from_backup_1

第一行确保磁带已倒带。第二行然后从第一个备份中恢复文件。如果您希望从第二个备份中获取文件,请执行以下操作

$ mt -f /dev/ftape rewind
$ mt -f /dev/nftape fsf 1
$ tar xzf /dev/ftape file_from_backup_2

同样,要从第三个备份中恢复文件

$ mt -f /dev/ftape rewind
$ mt -f /dev/nftape fsf 2
$ tar xzf /dev/ftape files_from_backup_3

您可以继续添加备份,直到磁带已满。请注意,严格来说,您不需要每次都倒带磁带——如果您确定磁带已倒带,则可以跳过倒带命令;但是,我建议您始终在使用前倒带以避免问题。如果您已经位于磁带的开头,则倒带命令根本不会花费任何时间。如果您假设磁带已倒带但实际上并非如此,您很可能会遇到各种麻烦。您可以通过以下方式找出磁带的实际位置

$ mt -f /dev/nftape status

您可以想象,以这种方式维护备份是笨拙且非常耗时的,因为如果您不知道第三个备份上有什么,您必须倒带磁带,前进到第三个备份,然后读取那里的内容。

tar 的另一个问题是,当使用压缩模式时,tar 会压缩所有文件,然后将它们写入磁带。这会导致一个非常严重的问题。如果您的磁带以某种方式损坏,您将丢失损坏发生后所有文件。

由于上述原因,并且由于 tar 的命令行用户界面,作者试图用用户友好的备份程序来填补空白——因此,taper 诞生了...

taper

虽然 tar 是一个非常强大且灵活的程序,但它没有友好的用户界面。taper 提供了与 tar 许多相同的功能,但提供了友好的用户界面。

有关 taper 源代码的位置,请参见下文。在撰写本文时,当前版本为 5.4。taper 需要最新版本(1.9.6 或更高版本)的 ncurses,它支持“forms”,可以从任何 GNU 镜像站点或主 GNU ftp 站点 prep.ai.mit.edu 检索。它易于配置、构建和安装在 Linux 上;安装说明包含在 INSTALL 文件中。截至本文撰写时,ncurses 的当前版本为 1.9.7a,可以在文件 ncurses-1.9.7a.tar.gz 中找到。

要构建和安装最新的 ncurses,我以 root 身份执行了以下操作

$ cd /usr/local/sr
$ tar xzf ncurses-1.9.7a.tar.gz
$ cd ncurses-1.9.7a
$ ./configure --with-normal --with-shared

  --with—debug --disable-termcap
$ make
$ make install

您需要执行的步骤可能略有不同;INSTALL 文件提供了大量详细信息。如果您有 ELF 库并且不删除以前的版本,则 --with-shared 选项尤其重要——否则,编译 taper 可能无法工作。

要制作 taper 的二进制文件,请发出以下命令

$ tar xzf taper-xx.xx.tar.gz

其中 xx.xx 是您获得的the版本。接下来,您可能需要编辑 Makefile(例如,如果您使用的是 SCSI 驱动器,请删除行 -DHAVE_SCSI 前面的 [cw]#[ecw],或者如果您使用的是新的 zftape 驱动程序,请删除行 -DUSING_ZFTAPE 前面的 #——有关更多详细信息,请参阅 Makefile)。然后输入

$ make clean
$ make all
$ make install

默认情况下,程序将安装在 /sbin 中,手册页安装在 /usr/man/cat1 中。如果您愿意,可以通过适当编辑 Makefile 来更改这些设置。如果您没有这些目录的写入权限,则文件将保留在当前目录中,并且不会被复制过去。

taper 基础知识

首先是一些术语

归档文件 (archive)

这描述了磁带(或硬盘文件)上的所有文件。您可以从归档文件中恢复文件或向归档文件中添加文件。

卷 (volume)

每个归档文件都分为一个或多个卷。每次将一组文件备份到归档文件时,都会创建一个新卷。例如,如果在一次会话中备份 /etc,则归档文件包含一个卷。如果您然后将 /usr/local/etc 添加到归档文件中,则会创建另一个卷,以便您仍然有一个归档文件,但有两个卷。请注意,如果您在一个备份会话中备份 /etc 和 /usr/local/etc,则只会创建一个卷。

首选项 (preferences)

可以自定义 taper 的各个方面——从屏幕颜色到 taper 在遇到软链接时的行为。每个可自定义的选项都称为首选项。

文件集 (file set)

可以将常用选择的文件组存储到文件集中。例如,您可能定期只想备份 /etc、/usr/home/user1 和 /usr/local/etc。您可以一次选择这些目录,然后将它们保存到文件集中,而无需每次要进行备份时都显式选择这些目录。随后,当您进行备份时,您只需要加载文件集即可自动选择这些目录。

增量备份 (incremental backup)

taper 支持两种备份模式:完全备份和增量备份。在完全备份模式下,您选择的所有文件和目录都将被备份。在增量模式下,taper 很智能。如果您选择备份的文件已存在于归档文件中,则 taper 仅在文件已更改时才备份它。如果文件未更改,则不会备份它。这使得备份大型目录非常快速和容易,因为只备份已更改的文件。

最近恢复 (most recent restore)

您可能会在归档文件中拥有同一文件的多个副本——从旧版本到最新版本。taper 可以自动检测哪个是最新的,并且仅恢复最新的;您无需手动确定和选择它。

当您创建归档文件时,taper 会将有关该归档文件中文件的所有信息(例如文件名、文件大小、备份时间等)存储到一个名为归档信息文件的文件中。此文件存储在硬盘上的目录中(默认为 ~/.taper_info)。将来,当访问此归档文件时,taper 使用归档信息文件来快速访问有关归档文件的所有详细信息——这加快了性能,因为不需要访问磁带。

这样做的不利之处在于,您需要确保此信息文件不会被删除或损坏(即使被删除或损坏也不要绝望,因为您可以重新创建它)。此外,如果您希望在另一台机器上恢复文件,您必须确保在新机器上重新构建信息文件,或者随身携带信息文件的副本在软盘上(或通过 ftp 传输)。

创建的每个归档文件都分配了一个唯一的归档 ID,如果您手头没有磁带,将来可以使用该 ID 访问归档文件。

您需要告诉 taper 备份设备的名称(倒带和非倒带)。您可以通过为倒带设备提供命令行选项 -f(或 --rewinding-device),为非倒带设备提供 -n(或 --non-rewinding-device)来做到这一点。或者,您可以启动 taper,然后使用 全局首选项 选项指定名称。

如果您使用 -DHAVE_SCSI 选项进行编译,则默认名称为 /dev/st0(倒带)和 /dev/nst0(非倒带)。如果您使用 -DUSING_ZFTAPE 进行编译,则默认名称为 /dev/qftape(倒带)和 /dev/nqftape(非倒带)。否则,默认名称为 /dev/ftape(倒带)和 /dev/nftape(非倒带)。也可以使用环境变量设置默认名称——TAPE 是倒带设备的名称,NTAPE 是非倒带设备的名称。或者,您可以使用首选项文件设置默认值(见下文)。

制作备份

通过键入以下内容启动 taper

$ taper

然后您将看到 taper 主窗口。有三个主要模块——备份、恢复和 mkinfo,以及首选项管理选项。选择备份选项。

如果归档文件存在,系统将询问您是否希望将文件附加到其中,或者是否希望覆盖它。与所有对话框一样,空格键在选项之间切换,ENTER 键将选择当前突出显示的选项。

如果归档文件不存在,系统将提示您输入归档文件标题。

接下来,系统将提示您输入卷标题。

然后您将看到一个包含三个面板的屏幕。左上方显示硬盘上的当前目录,右上方显示归档文件中当前的内容,底部面板用于显示已选择要备份的文件。屏幕顶部是归档文件 ID 和归档文件标题。

要在面板之间移动,请按 TAB 键。要获取有关键的帮助,请按 H 键。

您现在需要选择要备份的文件和目录。使用光标键在目录中移动。当突出显示目录时按 ENTER 键将进入该目录。

当您找到要备份的文件或目录时,按 S 键。然后将调整文件/目录的大小并将其移动到底部窗口——如果您选择了目录,taper 将与您确认您是否真的要备份它。按 ENTER 键确认。要禁用确认,请在全局首选项(提示目录)中更改此设置。

在底部窗口中,将打印文件/目录及其大小。此外,在此左侧,将有一个 IF。这表示文件/目录将以增量模式 (IM.) 或完全备份模式 (F) 备份。要在 FI 模式之间切换,请在突出显示选定的文件或目录时按 S 键。

当您选择目录时,该目录下的所有目录都将以递归方式包含在内。

如果您希望取消选择文件,请使用 TAB 键将光标移动到底部窗口,然后将突出显示移动到您希望取消选择的文件/目录。按 D 键,文件/目录将被取消选择。

如果您选择一个文件(例如,/usr/home/john/xyz),然后选择该文件所在的目录(例如,/usr/home/john),taper 会自动识别出该文件已被选择两次,并将用括号将文件 (/usr/home/john/xyz) 括起来,以告诉您这一点。在进行备份时,该文件将仅备份一次。

完成选择后,按 F 键,taper 将开始备份。在任何时候按 Q 键都将中止备份。

恢复文件

从 taper 主菜单中选择恢复。

然后您将看到 taper 知道的所有归档文件的列表。它们按归档文件 ID 顺序排序,并且还打印了归档文件标题。突出显示将位于磁带驱动器中当前的归档文件上。将突出显示移动到您要从中恢复的归档文件上,然后按 ENTER 键。

然后您将看到三个面板。左上方显示当前在归档文件中的文件和目录,右上方显示整个归档文件的摘要,底部面板用于显示已选择要恢复的目录和文件。

使用光标键移动突出显示以选择您希望恢复的文件——按 S 键选择当前突出显示的文件/目录。目录以递归方式选择。

当您选择文件/目录后,它将被传输到底部窗口。与备份类似,恢复将在选择两次的文件周围加上括号。

在选择窗口中,文件名之后会打印卷号。这将显示卷号或 M。如果出现 M,则 taper 在最近恢复模式下运行,并且将仅恢复该文件的最新副本。如果显示卷号,则将从该卷恢复文件,而不管该卷中的文件有多新。您可以通过在选择窗口中按 S 键在两种模式之间切换。

要取消选择文件,请将突出显示定位在您要取消选择的文件上,然后按 D 键。

完成选择要恢复的文件后,按 F 键,taper 将开始恢复。按 Q 键将中止恢复操作。

Mkinfo

如果您丢失了归档信息文件(它被删除、损坏,或者您尝试在另一台机器上恢复但忘记随身携带归档信息文件),您可以重新构建信息文件。只需将磁带放入驱动器并从 taper 主菜单中选择 mkinfo 即可。

首选项

以下是更常见的首选项列表。有关完整列表,请参阅手册页。

compress

告诉 taper 是否压缩它写入归档文件的文件。默认值为 TRUE。

log file

taper 将活动记录到哪里。默认值为 ~/.taper_log。

Klog level

日志记录级别,从 0(不记录日志)到 3(详细)。默认值为 2。

prompt directories

taper 在恢复和备份中选择目录之前是否确认。默认值为 FALSE。

增量备份 (incremental backup)

默认是否使用增量备份。默认值为 TRUE。

最近恢复 (most recent restore)

默认情况下,taper 应恢复最新文件还是用户指定的文件。默认值为 TRUE。

exclude compress

某些类型的文件可以绕过压缩功能——例如,默认情况下,taper 不会尝试压缩 .gz 或 .gif 文件。此首选项指定哪些文件不尝试压缩。首选项只是一个字符串,其中您希望排除的文件以空格分隔的列表给出(例如,默认值为 .gz .gif .Z

exclude files

某些类型的文件可以从归档文件中排除,即使明确指定了——例如,默认情况下,taper 不会尝试备份 .o 文件。此首选项指定要自动排除哪些文件。格式与“exclude compress”首选项相同,默认值为 .o ~

您可以保存您的首选项以自定义您的特定设置。有两种方法可以保存:一种是保存到首选项文件,第二种是保存到命令行文件,然后可以使用该文件在将来启动 taper。只需从主菜单中选择相应的选项即可。

taper 按以下顺序查找首选项文件

  • 命令行上的 -p (--preference-file) 选项给出的文件名

  • 环境变量 TAPER_PREFS 给出的文件名

  • 文件 ~/.taper_prefs

  • 文件 /usr/local/etc/.taper_prefs

  • 内部默认值

前导零

某些磁带驱动器在磁带开头写入零,这可能会导致 taper 混淆,taper 会认为当它检测到零时已到达磁带末尾。要找出您的磁带驱动器是否执行此操作,请将磁带放入驱动器并运行 testzero 程序——请注意,磁带将被覆盖。taper 将测试您的磁带并在屏幕上打印结果。

如果 taper 说您的驱动器写入前导零,您将必须在每张磁带上运行 mktape,然后才能将其与 taper 一起使用。

擦除磁带

使用软盘磁带驱动器的人员必须格式化和擦除磁带。这些用户必须使用 DOS、OS/2 或 WINDOWS 格式化磁带,或者购买预格式化的磁带。擦除磁带由 taper 自动完成。

使用 SCSI 磁带驱动器的人员通常不需要格式化磁带。某些 SCSI 磁带驱动器甚至不需要擦除(例如,DAT)。要告诉 taper 在使用磁带之前不要擦除磁带,请更改备份首选项菜单中的 擦除磁带 选项并保存首选项。在使用所有磁带之前运行 mktape,以便 taper 不会认为它们是坏的。

如果您有 SCSI 驱动器并且不确定是否需要擦除磁带,请告诉 taper 不要擦除磁带,看看会发生什么。

/proc 文件系统

Linux 支持 /proc 文件系统。这是一个看起来像普通目录的目录,但实际上包含有关当前机器状态的信息。它对于程序(如 ps)很有用,这些程序可以读取此目录并打印其中包含的信息。

但是,我们显然不想备份此目录。您可以告诉 taper 自动排除此目录。运行 which_device 程序

$ ./which_device /proc

并打印 /proc 目录挂载到的设备。最有可能的是 1,在这种情况下,您无需执行任何操作,因为这是 taper 的默认值。如果不是 1,请通过备份选项或通过命令行(--proc-device num)告诉 taper。

内存注意事项

如果您有很多文件需要备份,taper 可能会占用相当多的内存。如果您希望在运行时最小化 taper 的内存使用量,请编辑您的 Makefile 文件,并取消注释该行(即,删除行首的 # 符号)。

DEFINES=-DMEMORY_TIGHT

现在,当 taper 运行时,它将非常节省内存。缺点(当然,总会有缺点的!)是性能不会那么好。但是,在大多数机器上,直到您达到 2,000-3,000 个文件时,您才会注意到性能下降。

SCSI 驱动器

有一个特殊偏好仅适用于 SCSI 驱动器。这就是 --block-size 选项。SCSI 内核磁带驱动程序期望以最大尺寸的块(默认为 32K)向其提供数据。因此,taper 默认以 28K 的块写入数据。但是,如果您希望更改它,您可以使用 [cw]--block-size[ecw] 选项——例如,如果以 64K 的块写入数据,某些磁带驱动器可能会更优地运行。请注意,这必须小于 SCSI 内核磁带驱动程序的最大尺寸。

您可以为非 SCSI 驱动器更改此选项,但这不会真正影响性能。

文件集

在恢复中创建的文件集和在备份中创建的文件集之间没有区别——它们可以互换使用。

要创建文件集,请输入 backup 或 restore,然后选择您希望指定为文件集的文件和目录。然后按 B 键,taper 将提示您输入文件集的名称。输入名称后,文件集将被保存。

下次您希望备份此特定文件集时,请在 backup 或 restore 中按 L 键,taper 将向您显示它知道的文件集列表。使用箭头键和 ENTER 键选择一个。然后将加载此特定文件集。

结论

taper 的设计目的是使备份您的 Linux 文件系统变得轻松无痛。传统的 Unix 实用程序 tar 和 cpio 功能非常强大,但它们不是很用户友好。随着 Linux 在非技术人员中越来越受欢迎,非常需要另一种备份解决方案。我希望 taper 能填补这个空白。

但是,在某些情况下,您应该使用 tar 而不是 taper。这些情况是:

  • 当您将在一个 UN*X 系统上进行备份,并在另一个系统上进行恢复时——例如,您在 Linux 系统上进行备份,然后在 Xenix 系统上进行恢复。到目前为止,taper 尚未解决跨平台存档兼容性问题——它可能有效,但不能保证。如果您确实希望使用 taper 来执行此操作,请先彻底测试它。

  • 如果您需要进行远程文件访问——例如,需要访问 host:/directory 上的文件。taper 尚不支持此功能,并且可能需要一段时间才能添加。

  • 软件开发人员分发其程序作为源文件时,最好仍然使用 tar,因为以 taper 文件分发意味着还必须分发存档信息文件,最终用户必须将其放置在 ~/.taper_info 目录中——这对新手来说又是令人困惑的一步。

除非您处于上述情况之一,否则 taper 应该足以满足您的大部分需求。它肯定比 tar 和 cpio 更容易使用。

由于此产品正在开发中,因此欢迎提出建议、错误修复、意见等。同样,如果您发送简短消息说 taper 在您的系统上运行良好,我们将非常感谢,因为这让我了解有多少人正在使用 taper 以及它在哪些类型的硬件上运行。这可以让我帮助其他拥有类似硬件的人。

Yusuf Nagree 是一名兼职医生和全职 Linux 黑客(啊——抱歉,全职医生和兼职 Linux 黑客)。自从他的父亲在 1980 年给他买了一台 ZX-80 以来,他一直是一名电脑爱好者,并且多年来拥有各种电脑。由于厌倦了 DOS、OS/2 和 Windows,他发现 Linux 最令人愉快的地方是社区精神和普遍乐于助人和分享知识和经验的意愿。

加载 Disqus 评论