chown root:root 在做什么?

chown root:root 在做什么?

我阅读了教程并被指示去做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”权限。

相关内容