前言

有时需要使用 root 权限,比如安装软件、启动服务等操作时就需要用到sudo命令来提升权限才能进行操作。而新添加的普通用户是没有权限进行 sudo 操作的,所以我们需要对普通用户授予 sudo 权限。授予 sudo 权限有三个方法,第一个是把用户添加到 sudo 用户组,第二个是修改 sudo 配置文件(etc/sudoers),第三个是添加配置文件到/etc/sudoers.d/目录中。选其中一个即可,推荐第三个方法。

安装 sudo

如果系统中没有sudo,需要先安装。

# Debian
apt install sudo -y
# Centos
yum install sudo -y

添加用户到 sudo 用户组

以添加p3terx这个用户到 sudo 用户组为例子,输入下面命令:

usermod -aG sudo p3terx

修改 sudo 配置文件(etc/sudoers)

打开 sudo 配置文件

visudo

以授予p3terx这个用户 sudo 权限为例子,添加如下内容。

p3terx ALL=(ALL) ALL

添加配置文件到/etc/sudoers.d/目录中

这个是系统文档推荐的做法。/etc/sudoers.d/目录中的文件相当于是etc/sudoers文件的补充。如果你写的配置文件有问题或者是想去除用户的 sudo 权限,直接删除文件即可,不用去修改/etc/sudoers文件,不会影响到系统默认配置。

以授予p3terx这个用户 sudo 权限为例子,在终端中输入以下命令直接添加配置文件:

tee /etc/sudoers.d/p3terx <<< 'p3terx ALL=(ALL) ALL'

如果你不想输入每次sudo都输入密码,可以设置免密。

tee /etc/sudoers.d/p3terx <<< 'p3terx ALL=(ALL) NOPASSWD: ALL'

服务器不要设置免密!不安全!

最后赋予正确的权限:

chmod 440 /etc/sudoers.d/p3terx