如何复制文件夹并保持所有者和权限不变?

如何复制文件夹并保持所有者和权限不变?

因此,我打算通过将我的主文件夹复制到外部驱动器来备份它,如下所示:

sudo cp -r /home/my_home /media/backup/my_home

结果是,外部驱动器上的所有文件夹现在都归 拥有root:root。我如何才能cp保留原来的所有权和权限?

答案1

使用-p旗子。

-p     same as --preserve=mode,ownership,timestamps

--preserve[=ATTR_LIST]
       preserve the specified attributes (default: mode,ownership,timestamps), if possible additional attributes: context, links, xattr, all

请注意,要正确复制权限,目标文件系统应与源文件系统相同。换句话说,您的外部驱动器应按照ext4通常的情况格式化,就像您的主文件夹存储在该类型的分区上一样。

答案2

您可以使用 -p 标志:
cp -rp /home/my_home /media/backup/my_home
或者使用 rsync 命令行:
rsync -aux /home/my_home /media/backup/my_home

答案3

使用sudo cp -a /home/my_home /media/backup/my_home,它将递归到子目录并保留所有文件属性。

答案4

这个命令对我来说很有效:

sudo rsync -a /home/my_home/ /media/backup/my_home/

https://unix.stackexchange.com/a/43611

相关内容