如何创建 NFS 共享的镜像?

如何创建 NFS 共享的镜像?

为了备份和恢复目的,为了淘汰旧服务器,我需要创建一个完美的NFS 共享的镜像。此镜像不是简单的重定向,而是 NFS 共享内容(包括文件权限)的精确副本。

我尝试过一些简单的任务,例如root使用以下命令复制文件:

cp -pR /path-to-nfs-share/ /local-directory-to-mirror-nfs-share-contents/

不幸的是,上面的命令不会复制所有文件,因为它会permission denied针对遇到的某些文件和目录返回错误。因此,为了避免潜在的权限问题,我想创建一个完美的文件镜像(即保留所有权限)。

不幸的是,我似乎找不到太多关于执行此任务的文档。这可行吗?

谢谢。

答案1

您是否使用 sudo 发出命令以便获得提升的权限?

对于类似这样的情况,Rsync 也许也能更好地发挥作用。

我建议不要将其视为备份,因为它只是一份副本。备份可防止文件损坏或被删除。制作副本更像是保护资源的可用性。

答案2

您的权限错误可能源于您所在的机器以您的用户 ID 而非 root 身份挂载 NFS 文件系统,这意味着您无法看到整个文件系统。或者,NFS 挂载可能故意为不同的组更改 UID。

rsync -aplxo --delete /nfsmount/ /newmountlocation/

这可能是最好的方法,因为您不想破坏用户 ID,如果您遇到需要停止的情况,它只会移动已更改的文件。您可以暂存它并多次运行,并确保在停用之前拥有完整的副本。

相关内容