sudo命令旨在允许用户以其它用户身份运行命令,默认是root用户。在CentOS发行版wheel组用户被授予sudo访问权限。

在基于Debian的发行版,例如Ubuntu,Linut mint,sudo组的成员被授予sudo访问权限。

你当前登录到系统的用户必须具有sudo权限或者以root登录。否则你遇到权限拒绝的错误

创建用户

要创建用户请运行useradd命令。后跟你要创建的用户名。当运行useradd命令时不会有任何输出。并且仅创建用户,不会创建用户的家目录。

如果要为用户创建家目录,可以添加useradd的-m选项。useradd命令为你创建用户与用户的家目录。

当运行useradd命令后,你还需要为用户创建密码。没有密码的用户是不能登录到Linux。

但你可以使用su命令切换用户。 例如命令sudo su - myfreax将会切换到myfreax用户,-表示包括所有环境变量也切换用户myfreax。

没有密码的用户是最安全的用户,这在配置FTP服务器时非常有用。这样ftp用户就不能登录到你的服务器。

如需要设置用户密码,请运行passwd命令为用户设置密码。系统将提示您确认密码。确保你输入的是强密码。

命令sudo useradd -m myfreax创建用户myfreax。passwd myfreax命令为用户myfreax设置密码。

sudo useradd -m myfreax #create user
sudo passwd myfreax #setup password
Changing password for user username.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.

赋予root权限

在基于RedHat的发行版,例如CentOS,Fedora。wheel组的成员被授予sudo访问权限。也就是说你可以将用户添加wheel组,就可以使用户具有sudo访问权限。

在基于Debian的发行版,例如Ubuntu,Linut mint,sudo组的成员被授予sudo访问权限。如果将用户添加到sudo组,那么用户就可以授予sudo的访问权限。

修改用户所属组的命令是usermod命令,我们不建议直接修改用户主要组。这可能导致某些权限问题。最好的方式将用户追加到wheel组或者sudo组。

因此你将使用usermod命令的-aG选项,添加用户到wheel组或者sudo组,-a表示追加用户到指定组,-G选项指定次要组的名称。

sudo usermod -aG wheel myfreax  #RedHat,CentOS,Fedora
sudo usermod -aG sudo myfreax #Debian,Ubuntu,Fedora

要验证新用户是否具有sudo权限,首先切换创建的用户,运行命令sudo su - myfreax。

然后运行命令sudo whoami即可。如果用户具有sudo访问权限,命令将会打印root。

首次在使用sudo时,系统会提示您输入用户密码,注意这是你当前用户的密码,不是root密码。

sudo su - myfreax
sudo whoami
root