我正在阅读一些与创建发行版回购有关的文档。但是,我无法确切了解这些命令的执行情况:
# cd /mnt/
# ls
centos-1 centos-2 centos-3
# for i in 1 2 3
> do
> cd /mnt/centos-$i
> tar cpf - . | ( cd /var/ftp/ks/centos/; tar xpf - )
> done
我的(显然不正确的)摘要是:循环浏览每个已安装的CD(/mnt/centos-<index>
),并创建一个tar
保留权限的文件夹。然后,tar
再次将该文件提取到另一个文件夹,以保留权限。
如果是这样,为什么会这样呢?真的没有更好的方法吗?也许我错过了整个主意。
在此过程中建议在cp上推荐使用tar(或cpio)的原因是由于工具的操作方式。
cp依次对每个文件对象进行操作,从磁盘读取它,然后将其写入新位置。由于源位置和目标位置可能不在磁盘上,因此这会导致在这些位置之间进行大量搜索。
tar和cpio一口气读取尽可能多的内容,然后将其写入存档。这意味着源文件将被一个接一个地读取,而目标文件将被一个接一个地写入(当然,这允许进行进程切换),从而减少了查找并因此节省了时间。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句