在ubuntu中有一个主账号,称为管理账号,有sudo权限,可以在服务器上用 “sudo ***” 安装一些package, 或执行一些其他的需要权限的命令。
一般来说,除了主账号以外的其他成员没有sudo权限。但是有时其他账号成员有时也需要安装一些package,要用到sudo权限。 而在执行 “ sudo ***” 命令时,就会遇到如题所示的异常。
而每次用sudo权限都要麻烦主账号十分不方便。所以,可以通过以下方案解决这个问题: 把这个可信赖的用户user_name添加到 /etc/sudoers文件中,这样user_name用户就可以使用sudo权限了,也就解决了题目所示的问题。
具体的操作步骤如下(需要主账号下操作):
# 1,更新root用户的密码,该命令执行后,系统会提醒你为root用户设置密码
sudo passwd root
# 2. 进入root用户,系统会要求输入上面设置的root账户密码
su
# 3. 把某个特定账户 user_name 添加到sudoer文件中
sudo adduser user_name sudo
# 4. 退出root账户,切换到user_name用户
su user_name_main
但是我在按照上述操作后,user_name仍旧不能使用sudo,我又按照以下步骤,我又执行以下步骤,手工把user_name添加到sudoers文件中,具体操作步骤如下:
# 1. 进入root账户
su
# 2. 为sudoers文件添加写权限,因为sudoers文件默认是只读的
chmod u+w /etc/sudoers
# 3. 编辑sudoers文件
vi /etc/sudoers
# 在文件中找到 root ALL = (ALL) ALL,这一行,
# --》在键盘上点击i进入编辑模式
# 在他下面添加 xxx ALL=(ALL) ALL (这里的xxx是你的用户名),具体可见下图
# --》编辑完后,键盘上点击 Esc 键,退出编辑模式,输入 “:wq!” 保存内容并退出vi编辑器
#4. 撤销 /etc/sudoers的写权限
chmod u-w /etc/sudoers
# 5. 切换用户,退出root账户
su wzg # wzg是要进入的用户账户名
第三步中的操作示例,在etc/sudoers中添加yakong用户,使yakong用户拥有sudo权限。
现在为止,大功告成,打完收功。我的问题完美解决了。