Ubuntu 增加新用户并赋予root权限及免密的方法

添加用户

添加一个名为hylink的用户
adduser hylink
修改密码
passwd hylink
Changing password for user hylink.
New UNIX password: //在这里输入新密码
Retype new UNIX password: //再次输入新密码
passwd: all authentication tokens updated successfully.

sudo命令的工作过程

a. 当用户执行sudo时,系统会主动寻找/etc/sudoers文件,判断该用户是否有执行sudo的权限;

b. 确认用户具有可执行sudo的权限后,让用户输入用户自己的密码确认;

c. 若密码输入成功,则开始执行sudo后续的命令;

d. root执行sudo时不需要输入密码(文件中有配置root ALL=(ALL) ALL这样一条规则);

e. 若欲切换的身份与执行者的身份相同,也不需要输入密码。
在这里插入图片描述

赋予root权限

修改 /etc/sudoers 文件
sudo gedit /etc/sudoers

注意执行时需要root权限,即使用sudo gedit

# User privilege specification
root	ALL=(ALL:ALL) ALL

具有sudo权限的用户
root表示能使用sudo命令的用户;
第一个ALL表示允许使用sudo的主机;
第二个ALL及第三个ALL表示用户组及用户;
第四个ALL表示sudo可执行的命令,即所有命令;
在有的系统中也简写做:
root ALL=(ALL) ALL

因此在root下面添加一行,如下所示:
hylink ALL=(ALL:ALL) ALL
在这里插入图片描述
修改完毕,用hylink帐号登录,用命令sudo,此时hylink帐号获得sudo操作权限。
此时要是把root ALL=(ALL:ALL) ALL注释掉,如下图
在这里插入图片描述
此时root用户就不在具有sudo操作权限,效果如下图:
在这里插入图片描述

# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL

含义:在admin组中成员可以可以获得sudo的跟权限

# Allow members of group sudo to execute any command
%sudo	ALL=(ALL:ALL) ALL

允许sudo组成员执行任何命令

免密使用sudo

# Allow members of group sudo to execute any command
%sudo	ALL=(ALL:ALL) ALL

下面添加

hylink ALL=(ALL) NOPASSWD:ALL
在这里插入图片描述
修改完毕,用hylink帐号登录,用命令sudo,此时hylink帐号无需再输入密码。
在这里插入图片描述

问题汇总

1.问题:
执行sudo chmod -R 777出现以下问题:

sudo:sudo /etc/sudoers is world writable
sudo:no valid sudoers sources found ,quitting
sudo:unable to initialize policy plugin

解决方案:
sudoers的权限被改了,改回来就好了。

pkexec chmod 0440 /etc/sudoers
原文地址:https://www.cnblogs.com/gmhappy/p/11863970.html