迁移和移动 UNIX 文件系统
2006-08-27 08:12:02 来源:WEB开发网如果您发现没有正确地复制某些文件或者符号链接和其他特殊类型的文件,那么您可能需要尝试使用 tar。
使用 tar
与 cp 相比,tar 工具提供了许多的好处。首先,也是最重要的,对于非标准的文件类型,它通常更加可靠。其次,因为它能够提供关于复制的文件的可视化反馈信息,所以使用它将文件复制到新的系统会更加方便。最后一点也非常重要,您可以使用 tar 创建文件系统的存档文件,万一在出现问题时,该文件可以作为源目录/文件系统的备份。在处于单用户模式的计算机的用户文件系统中,这种 tar 文件方法可以用来创建新的文件系统内容,而无需将新的目标装入到临时目录装入点。
使用 tar 进行文件复制的最好的方法是,通过管道将 tar 创建的文件传递到位于新的位置进行文件提取的另一个 tar。清单 6 中给出了一个这样的示例。
清单 6. 使用 tar 进行文件复制
$ cd /usr
$ tar cfp - ./* |(cd /mnt/usr.tmp; tar xvfp -)
第一个 tar 中的 c 参数告诉 tar 创建一个存档。v、f 和 p 选项分别指定输出详细信息(显示正在添加或提取的文件)、对文件(而不是磁带设备)进行写入/读取、保持权限和所有权。
清单 6 中的命令行能够正常工作,这是因为在管道的后半部分中,在从标准输入读取管道的前半部分中创建的 .tar 文件之前,首先改变到了目标目录。
如果您需要创建一个 .tar 文件并使用这种方法,而不是执行直接的复制,那么您必须拥有一个能够容纳源目录中所有文件的文件系统。清单 7 介绍了进行复制的过程。
清单 7. 进行复制的过程
$ cd /usr
$ tar cfp /tmp/usr.tar ./*
$ cd /mnt/usr.tmp
$ tar xvfp /tmp/usr.tar
更多精彩
赞助商链接