Raffael Asked: 2014-06-09 01:01:53 +0800 CST2014-06-09 01:01:53 +0800 CST 2014-06-09 01:01:53 +0800 CST sudo X 和以 root 身份运行 X 有什么区别? 772 我的问题是询问我想了解的具体观察结果。 我只是尝试在 R 中安装包 rJava 但失败了,即使我按照手册的建议在安装前加上: sudo R CMD javareconf 然后我看到了这个评论: 使用 sudo 和以 root 身份运行并不完全相同。– 乔恩7 绝望的我试过了: sudo su R CMD javareconf 令我惊讶的是,我突然可以安装那个包了。 很抱歉介绍太长,但我想给你一个上下文来防止像这里这样的答案。这个问题并不具体针对所描述的观察结果——而是针对 Ubuntu 上的一般“事物”。 我的问题是:这怎么可能?sudo X 和以 root 身份运行 X 有什么区别? sudo 2 个回答 Voted Best Answer JoKeR 2014-06-09T01:21:00+08:002014-06-09T01:21:00+08:00 这有点太宽泛了,无法解释它会以结论结尾,就像您链接到您的问题的链接一样,但我会尝试更全面的内容,也许它会给您一些答案。 sudo("substitute user do") 允许系统管理员授予某些用户(或用户组)运行某些(或所有)命令的能力,root同时提供命令及其参数的审计跟踪。 Sudosu是运行命令的替代方法,如root. 不像su,它启动一个root允许所有进一步命令root访问的 shell,sudo而是将临时权限升级授予单个命令。通过仅在需要时启用root特权,sudo使用可以降低调用命令中的拼写错误或错误破坏系统的可能性。Sudo也可用于以其他用户身份运行命令;此外,sudo记录所有命令和失败的访问尝试以进行安全审计。 有关更多详细信息,请Root Sudo参见官方 Ubuntu 文档 abu_bua 2018-10-23T01:54:10+08:002018-10-23T01:54:10+08:00 本教程摘自原主页: 简而言之须藤 Sudo (su "do") 允许系统管理员授予某些用户(或用户组)以 root 身份运行某些(或所有)命令的能力,同时记录所有命令和参数。Sudo 在每个命令的基础上运行,它不是 shell 的替代品。其特点包括: 限制用户可以在每个主机上运行的命令的能力。 Sudo 对每个命令进行大量记录,提供清晰的审计线索,说明谁做了什么。当与系统日志守护程序 syslogd 一起使用时,sudo 可以将所有命令记录到中央主机(以及本地主机)。在 CU,所有管理员都使用 sudo 代替 root shell 来利用此日志记录。 Sudo 使用时间戳文件来实现“票务”系统。当用户调用 sudo 并输入密码时,他们将获得一张 5 分钟的票证(此超时可在编译时配置)。每个后续 sudo 命令都会将票证再更新 5 分钟。这避免了留下 root shell 的问题,其他人可以物理地访问您的键盘。用户还有一种简单的方法可以删除他们的票证文件,这对于放置在 .logout 文件中很有用。 Sudo 的配置文件,即 sudoers 文件,其设置方式使得相同的 sudoers 文件可以在多台机器上使用。这允许集中管理,同时保持在每个主机的基础上定义用户权限的灵活性。请参阅下面的示例 sudoers 文件以获取真实示例。 根 UNIX 根帐户是全有或全无。 在计算中,超级用户是用于系统管理的特殊用户帐户。根据操作系统 (OS),此帐户的实际名称可能是 root、administrator、admin 或 supervisor。在某些情况下,帐户的实际名称不是决定因素;例如,在类 Unix 系统上,用户标识符 (UID) 为零的用户是超级用户,无论该帐户的名称如何,在实现基于角色的安全模型的系统中,任何具有超级用户角色的用户 (或其同义词)可以执行超级用户帐户的所有操作。最小权限原则建议大多数用户和应用程序在普通帐户下运行以执行其工作,因为超级用户帐户能够进行不受限制的、可能不利的、系统范围的更改。(一个) (a)来自https://en.wikipedia.org/wiki/Superuser
这有点太宽泛了,无法解释它会以结论结尾,就像您链接到您的问题的链接一样,但我会尝试更全面的内容,也许它会给您一些答案。
sudo
("substitute user do") 允许系统管理员授予某些用户(或用户组)运行某些(或所有)命令的能力,root
同时提供命令及其参数的审计跟踪。Sudo
su
是运行命令的替代方法,如root
. 不像su
,它启动一个root
允许所有进一步命令root
访问的 shell,sudo
而是将临时权限升级授予单个命令。通过仅在需要时启用root
特权,sudo
使用可以降低调用命令中的拼写错误或错误破坏系统的可能性。Sudo
也可用于以其他用户身份运行命令;此外,sudo
记录所有命令和失败的访问尝试以进行安全审计。有关更多详细信息,请
Root Sudo
参见官方 Ubuntu 文档本教程摘自原主页:
简而言之须藤
Sudo (su "do") 允许系统管理员授予某些用户(或用户组)以 root 身份运行某些(或所有)命令的能力,同时记录所有命令和参数。Sudo 在每个命令的基础上运行,它不是 shell 的替代品。其特点包括:
根
UNIX 根帐户是全有或全无。
在计算中,超级用户是用于系统管理的特殊用户帐户。根据操作系统 (OS),此帐户的实际名称可能是 root、administrator、admin 或 supervisor。在某些情况下,帐户的实际名称不是决定因素;例如,在类 Unix 系统上,用户标识符 (UID) 为零的用户是超级用户,无论该帐户的名称如何,在实现基于角色的安全模型的系统中,任何具有超级用户角色的用户 (或其同义词)可以执行超级用户帐户的所有操作。最小权限原则建议大多数用户和应用程序在普通帐户下运行以执行其工作,因为超级用户帐户能够进行不受限制的、可能不利的、系统范围的更改。(一个)
(a)来自https://en.wikipedia.org/wiki/Superuser