迁移和移动 UNIX 文件系统
2006-08-27 08:12:02 来源:WEB开发网清单 11. 提取 .tar 文件
$ cd home
$ tar xvfp /tmp/home.tar
如果您需要为现有的文件系统改变分区(如清单 10 中所示),那么命令序列是类似的,但是您需要卸载现有的文件系统,而不是对目录进行重命名(请参见清单 12)。
清单 12. 为现有的文件系统改变分区
$ cd ..
$ umount /home
这种方法仍然是安全的,这是因为您拥有旧分区上源文件系统的完整副本。无论在哪一种解决方案中,您都没有删除内容或源数据。
对复制进行验证
无论使用 cp 还是 tar,您始终都应该验证复制过程是否成功完成。尽管 tar 对所复制的文件进行了证实(使用 v 选项),但是您应该确保在新的文件系统中正确地创建了这些文件。
首先,检查 du 对旧的和新的系统的输出(请参见清单 13)。
清单 13. 检查 du 的输出
$ du -sk /usr
3923068 /usr
$ du -sk /mnt/usr.tmp
3923068 /mnt/usr.tmp
这两个数字应该是相等的,然而,根据新文件系统的类型以及旧文件系统/目录和新文件系统/目录中对应的文件和目录的分配大小的不同,您可能会发现它们在大小上有些细微的差异。
另一种好的测试方法是,比较源和目标文件/目录的数目。您可以使用简单的 find command 来完成这项工作,如清单 14 所示。
清单 14. 比较源和目标文件/目录的数目
$ find /usr |wc -l
347001
$ find /mnt/usr.tmp |wc -l
347001
如果您将文件从一个文件系统复制到另一个文件系统,那么还有一种好的测试方法,即比较索引节点数目,这将显示分配了多少个索引节点。如果您将文件从一个文件系统复制到另一个与其类型完全相同的文件系统,那么所使用的索引节点的数目应该是相等的。可以使用带 -i 命令行选项的 df 命令获取索引节点的统计信息,或者在传统的 UNIX 系统中,不带参数的 df 可以输出创建“文件”的数目。
更多精彩
赞助商链接