系统管理员工具包: 移动 UNIX 目录
2008-11-12 08:30:33 来源:WEB开发网清单 14. 创建一个存档
$ tar cf mydir.tar .
然后,您可以使用合适的方法对该文件进行复制,例如,使用 cp 和 NFS 复制该文件,或使用 FTP 或 SFTP 将该文件传输到远程系统。
然而,使用存档文件的方法并不是一种特别高效的方法。您可以通过压缩来提高其效率。
使用压缩
如果您使用 cpio 或 tar 创建存档文件,并通过慢速的连接对文件进行复制(例如 WAN 或 Internet,而不是 LAN 环境),那么可以在传输存档文件前对其进行压缩处理,这样会节省传输的时间。可以根据您所需的压缩级别选择合适的压缩格式。
使用存档的方法非常简单。您可以选择在创建存档之后对其进行压缩,如清单 15 所示。
清单 15. 在创建存档之后对其进行压缩
$ tar cf mydir.tar .
$ bzip2 mydir.tar
要完成这项操作,您还可以使用管道生成存档的压缩版本(请参见清单 16)。
清单 16. 使用管道生成存档的压缩版本
$ tar cf - .| bzip2 >mydir.tar.bz2
清单 16 中方法的优点是,它可以使用各种版本的 tar、cpio 或任何其他的存档工具。它还适用于各种不同的平台,而这些平台中的不同变种的 tar 可能并不一定支持联机压缩处理。如果安装了 GNU 版本的 tar,那么您可以使用带 z 命令行选项的 tar 命令,这样就可以使用 Gzip 进行压缩处理(请参见清单 17)。
清单 17. 使用带 z 命令行选项的 tar
$ tar zcf mydir.tar.gz .
在系统之间进行目录复制的另一种方法是,使用清单 16 中所示的管道解决方案,但需要使用远程 Shell 工具作为目标。
直接通过网络进行复制
将典型的 tar 或 cpio 命令的输出通过管道传递到远程 Shell 中,如远程 Shell (rsh) 或安全 Shell (ssh),您可以直接通过网络进行复制。使用哪一种远程 Shell 技术,完全取决于您的环境中可以使用的 Shell。前者 (rsh) 是一种标准的远程 Shell 系统,它提供了基本的身份验证安全性,但不提供加密功能,而后者 (ssh) 提供了基本的身份验证和数据加密功能。
更多精彩
赞助商链接