如何将我的所有文件(包括权限)转移给另一个用户

如何将我的所有文件(包括权限)转移给另一个用户

我必须创建另一个用户并将我的所有文件转移给“他”。Linux 上的问题是新用户将无法访问/编辑它们。是否有快速命令来转移所有文件并更改其所有权限?

答案1

创建用户后,在注销旧用户之前,请确保他属于正确的组:

sudo adduser --home /home/<new-username> <new-username>

sudo usermod -aG adm,cdrom,sudo,dip,plugdev,lpadmin,sambashare <new-username>

然后 :

mv -v ~/* /home/<new-username>/
chown -R <new-username>:<new-username> /home/<new-username>/*

正如@Zzzach在评论中指出的那样,不要在命令sudo上使用该chown命令,首先它不应该是必需的,因为如果你mv在没有sudo的情况下也这样做了,那么所有不属于你的文件和文件夹将保留在旧文件夹中,并且无论如何都应该在新用户上重新创建。系统通常对所有权和权限不挑剔,但有些程序是这样的。

答案2

我会尝试使用 rsync 来保持在 sage 方面:

rsync -rlvzu --owner=<new-username> --chmod=a+rwx,g+rwx,o-wx /source/ /destination/

在哪里

  • -r用于递归
  • -l用于链接
  • -v详细
  • -z用于压缩
  • -u:更新文件而不是覆盖它们(节省时间)
  • --chmod=a+rwx,g+rwx,o-wx:更新权限

相关内容