我正在复制一个用户主目录作为用户#2的主目录,因此需要将内容分发给新用户。 运行:
find /home/user2 -user user1 -exec chown user2 '{}' \; find /home/user2 -group user1 -exec chgrp user2 '{}' \;
工作好,但(由于./ ..文件,我想),不知何故根/
被chown'ed user2。 但是, /home
依然由root:root拥有。
我怎样才能确定发现会做什么? 我怎样才能限制它向上移动树(朝向根),甚至在它修改工作目录本身之前停止它?
当我find /home/$user
时候,它不会上去。你可以把可执行的参数从find
命令中去掉,看看哪些东西会被replace成大括号。
如果home是自己的文件系统,并且可能应该是,那么可以使用-xdev
来不遍历其他文件系统。 另外, -H
告诉find
不要遵循符号链接。
这就是说,为什么不chown -R user2:user2 /home/user2
?