root在终端中意味着什么?

root在终端中意味着什么?

以下内容有什么区别:

我的操作系统中有 2 个帐户,男爵

我使用 baron 帐户登录,然后运行命令sudo -s

baron@linux:~@ sudo -s 
[sudo] password for baron:
root@linux:~@/home/baron#

我注销,然后使用 root 帐户登录,终端显示:

root@linux:~@

那么为什么当我使用不同的帐户登录时,终端显示相同的内容呢?

答案1

您的提示显示用户、主机名和当前目录

user@hostname:/current/dir $

当您sudo以普通用户身份执行命令时(男爵在你的情况下),你给系统一个命令,让“某事”成为 root 或具有 root 权限。参见根定义

使用该-s选项,您将发出命令成为root具有交互式 shell 环境的用户,因为没有指定命令

- 从man sudo

-s [command]
               The -s (shell) option runs the shell specified by the SHELL environment variable if it is set or the shell as specified in the password database.  If a command is specified, it is passed to the shell for execution
               via the shell's -c option.  If no command is specified, an interactive shell is executed.

然后,当您登录时root,主帐户将是sudo,所以你根本不需要执行

相关内容