我正在尝试为我正在编程的设备复制文件系统。经过这么多时间试图弄清楚为什么我正在安装的文件系统无法正常工作后,我发现cp
没有完成工作。我曾经du -s
检查原始文件系统和我复制的文件系统的大小,cp -r
结果发现它们相差大约 150 个字节。
有些东西告诉我符号链接或某种内核对象没有被正确复制。
是否可以精确复制文件夹/文件系统?如果是这样,我会怎么做?
尝试以简单的方式执行此操作:
cp -a src target
从man cp
-a, --archive
same as -dR --preserve=all
它保留权利,符号链接......
另一个流行的选择是使用tar c source | (cd target && tar x )
. 请参阅这篇 linuxdevcenter.com 文章。
我所知道的复制文件的最准确方法是cpio
:
cd /path/to/source
find . -xdev -print0 | cpio -oa0V | (cd /path/to/target && cpio -imV)
不是很容易使用,但这非常精确,保留了时间戳、所有者、权限、特殊文件。