我正在阅读一些有关创建发行版回购的文档.但是,我无法准确理解这些命令的执行情况:
# 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文件解压缩到另一个文件夹,保留权限.
如果是这样的话,为什么会这样呢?真的没有更好的方法吗?或者也许我错过了整个想法.
解决方法:
为此过程推荐使用tar(或cpio)而不是cp的原因在于工具的运行方式.
cp依次对每个文件对象进行操作,从磁盘读取它,然后将其写入新位置.由于源和目标的位置可能不在磁盘上,因此这导致在位置之间进行大量搜索.
tar和cpio尽可能一次读取,然后将其写入存档.这意味着源文件将一个接一个地读取,并且目标文件将一个接一个地写入(当然允许进程切换),从而导致搜索更少,因此花费的时间更少.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。