sudo,su,visudo,chroot和gksu有什么区别?


Answers:


24
  • chroot是一种进入文件夹并将该文件夹“伪造” /为内部执行内容的方法。这样,您可以在非引导的Ubuntu安装上运行可执行文件,方法是将其安装在除安装之外的其他位置,/并使用/bin/bash(安装内部的一个)获取终端提示。

  • sudo-允许某些帐户进行身份验证以root或其他用户身份运行程序。某些程序可能不需要sudoers文件中定义的密码。是否允许该请求取决于运行中的用户(和组)sudo以及要运行的命令(如中所定义)sudoers

  • su-也是一种提升方式,但是有所不同,因为它以root(或另一个用户)身份执行完整的交互式登录,并给出bash提示,除非另行指定参数。它使用目标用户的凭据作为身份验证。

  • visudo-编辑sudoers文件。这使用一个特殊的可执行文件来检查文件的语法,以确保您不会sudo由于sudoers文件损坏而被锁定。如果您尝试保存无效的配置,它将阻止您,然后将您返回编辑器进行修复。

  • gksudogksu与sudo相同,但它是图形的,并且重写了一些路径,以使图形程序不会引起用户配置文件上的权限问题,尤其是使用时~/.Xauthority


1
确切地说susudo允许以其他用户身份执行进程,而不必是root用户。su始终可用于切换到任何其他用户(使用此用户凭据进行身份验证)。虽然sudo可以特别配置,但允许特定用户在特定用户上下文中执行特定程序。尽管大多数情况下,两者都用于获得root特权。
保罗·汉施(PaulHänsch)2012年

44

须藤:

Sudo(超级用户)允许系统管理员为某些用户(或用户组)提供以root用户身份运行某些(或全部)命令的能力,同时记录所有命令和参数。Sudo在每个命令的基础上运行。

它不能替代外壳。

功能包括:限制用户可以在每个主机上运行哪些命令的功能,每个命令的大量日志记录(提供明确的审核线索以了解谁做了什么),sudo命令的可配置超时以及使用的能力。在许多不同机器上使用相同的配置文件(sudoers)。

资源

维苏多

visudo是一个命令行实用程序,允许/etc/sudoers以安全的方式编辑文件。它会/etc/sudoers默认打开vi编辑器的界面(尽管可以通过将shell的EDITOR环境变量设置为其他文本编辑器来更改此界面),防止使用锁同时进行多个编辑,执行完整性检查并检查解析错误。

资源

su命令(也称为替代用户,超级用户或切换用户)允许计算机操作员更改与正在运行的虚拟控制台关联的当前用户帐户。

默认情况下,没有任何其他命令行参数,这会将当前用户提升为本地系统的超级用户。

从命令行运行时,su要求输入目标用户的密码,如果通过身份验证,则将授予操作员对该帐户以及该帐户允许访问的文件和目录的访问权限。

此外,可以切换到另一位不是超级用户的用户

资源

root是默认情况下可以访问Linux或其他类似Unix的操作系统上的所有命令和文件的用户名或帐户。它也称为root帐户,root用户和超级用户。

当单词root用作其他术语的一部分时,它还具有其他一些相关的含义。

其中之一是根目录,它是系统上的顶级目录。也就是说,它是所有其他目录(包括其子目录)和文件所在的目录。根目录由正斜杠(/)表示。

另一个是/root(发音为斜杠根),它是根用户的主目录。

它还可能指的是用户root,该用户root是具有完全特权的系统管理员。

资源

chroot

chroot是更改当前正在运行的进程及其子进程的表观根目录的操作。例如,如果您使用chroot,/mnt/chroot-test则目录/mnt/chroot-test将是您可以通过引用的虚拟根目录/

资源

chroots的用途

以下是chroot的一些可能用法:

  1. 隔离不安全和不稳定的应用程序

  2. 在64位系统上运行32位应用程序

  3. 在将新软件包安装到生产系统上之前对其进行测试

  4. 在更现代的Ubuntu版本上运行旧版本的应用程序

  5. 构建新软件包,从而可以仔细控制已安装的依赖软件包

chroot的来源和更多信息


1
几乎令人困惑的是,在ubuntu上,visudo使用nano。我找到一种简单的方法来记住哪个是“ su” =切换用户(切换到root-是的,您也可以使用它切换到其他用户),'sudo'=切换用户切换到root和do,将chroot切换为'更改根目录”。并非完全准确,但足够接近以便记住。
Journeyman Geek

1
@JourneymanGeek更准确,我想,也很容易扩展的sumneumonic来sudo是说,sudo意思是“交换的用户DO”(即做的切换用户)或“超级用户DO”(即做作为超级用户)。然后,这使之sudoers具有联系性(即,“切换用户DOERS”,而不仅仅是“(切换用户和DO)用户”)。这些变体更准确的原因是,sudo允许某人以替代用户的身份执行操作,但不一定使他们通常成为替代用户(取决于的内容/etc/sudoers)。
伊利亚·卡根

@maythux:那只是chroot的意思之一。(不只是问维基百科。)它通常表示在Unix / Linux中运行的安全(锁定)子系统,只允许使用一小部分可执行文件(或服务)。
david6 2012年

5

SU以root身份连接您。

终端将保留为该会话的根用户。

使用sudo(超级用户),您可以在以普通用户身份连接时以root用户身份执行操作。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.