我阅读了教程并被指示去做chown root:root /home/mynewuser
作为让我的 ssh 密钥与新用户一起使用的过程的一部分,我创建了“kevind”,但是它破坏了路径。
这是做什么的?
我怎样才能将其重置回默认值?默认值是什么,/
或者~
什么?
教程来自这个答案评论。
答案1
一般来说:如果您不确切知道它们的作用,请不要执行来自网络的命令。
特别是根!。
命令chown root:root /home/mynewuser
是:
ch愤怒的自己的ership 到用户:组的/home/我的新用户。
然而,您的第一条评论链接页面添加-R
(继续阅读)。
假设用户kevind
(使用您提供的特定名称)已经kevind
创建了一个名为also的主组(您可以根据需要创建它),恢复效果的命令是:
chown kevind:kevind /home/kevind
必须以 root 身份执行才能将 root 的所有权恢复给用户kevind
。
为了确保kevind
其目录中不存在 root 拥有的某些文件(安全原因),进行更广泛的更改是:
chown -R kevind:kevind /home/kevind
那将右ecurse 在给定顶级目录的所有目录和子目录中。这是一个安全的命令,用户没有真正的理由在其主目录中拥有 root 拥有的文件(或目录)。
答案2
该命令chown root:root
将指定文件或目录的用户和组更改为 userroot
和 group root
。我不知道为什么该答案建议将目录设置为 root:root。
要部分恢复更改,请使用命令
chown mynewuser /home/mynewuser
这至少会将用户设置为mynewuser
.要找到正确getent
的组,/etc/passwd
如果您的系统没有getent
.
getent passwd mynewuser
grep ^mynewuser: /etc/passwd
你会得到类似这样的一行:
mynewuser:x:<user>:<group>:...
要包含正确的组,请使用此命令,其中<group>
是上一行中的数字:
chown mynewuser:<group> /home/mynewuser
答案3
由于未使用递归选项-R
,只需对用户和主要组使用相同的命令mynewuser
而不是 root/root 即可。假设像大多数现代发行版一样,无论您使用什么,都将新用户放入其自己的同名组中
chown mynewuser.mynewuser /home/mynewuser
因为 root (或 via sudo
)将撤消该操作。
使用您的 ssh 密钥问题提出一个新问题...
答案4
sudo(er)
另外,如果您使用,您是否可以避免将人员添加到您的列表中
$ chown root:root /usr/local/bin/"something"
$ chmod u+s /usr/local/bin/"something"
在执行时,他们将能够在应用程序“某物”的范围内使用“root”权限。