批量变更所有权

批量变更所有权

我最近将一台服务器迁移到我们机架上的另一台机器上。当我将 /home 从 machine1 移动到 machine2 上的 /home 时(两台机器都是 Ubuntu 机器),所有权/权限没有转移

用户帐户已成功转移并且全部已存在。

我想知道是否有办法动态地将 /home 的所有内容更改为由他们的用户名拥有,因为当前所有内容均由 root:root 拥有

我试过了,sudo chown -R $USERNAME: /home/$USERNAME但没有成功

有任何想法吗?

编辑1:

我可以通过使用成功更改权限chown -R someUser:someUser /home/someUser

我的问题是,有没有一种简单的方法可以通过整个 /home 目录批量执行此操作

抱歉造成混淆

答案1

您随时可以逐个更改主目录:

cd /home
for user in *; do chown $user.$user $user -R; done

答案2

以前的版本,但有了 fork,所有 'chown' 进程在启动后将并行工作。

cd /home
for user in *; do chown -R $user.$user $user&; done

答案3

getfacl -R ... | setfacl --restore可能会有用。

新系统上配置的用户了吗?“无济于事”是什么意思?错误消息?您可以更改任何文件的所有者吗?chown user1 testfile

相关内容