前言

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

安装 sudo

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

1
2
3
4
# Debian
apt install sudo -y
# Centos
yum install sudo -y

添加用户到 sudo 用户组

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

1
usermod -aG sudo enwaiax

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

打开 sudo 配置文件

1
visudo

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

1
enwaiax ALL=(ALL) ALL

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

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

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

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

设置免密

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

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

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

最后赋予正确的权限:

1
chmod 440 /etc/sudoers.d/enwaiax

原文转载自Linux 中授予普通用户 sudo 权限的正确方法 - P3TERX ZONE