商城首页欢迎来到中国正版软件门户

您的位置: 首页 > 文章列表 > 系统应用 > 银河麒麟终端报错“不在sudoers文件中”怎么办

银河麒麟终端报错“不在sudoers文件中”怎么办

  发布于2026-08-19 阅读(0)

扫一扫,手机访问

当前用户未被授权使用sudo权限,需以root身份修正/etc/sudoers权限为440,再用visudo或vi添加用户名对应行,最后恢复权限并验证sudo whoami返回root。

银河麒麟终端报错“不在sudoers文件中”怎么办

银河麒麟终端执行sudo命令时提示“不在sudoers文件中,此事将被报告”,说明当前用户未被授权使用sudo权限,无法临时提权执行管理操作。

切换到root并确认sudoers文件状态

在终端中输入 su - → 回车后输入root密码 → 成功进入root shell后,立即执行 ls -l /etc/sudoers 查看文件权限。正常应显示 -r--r----- 1 root root,即权限为440,仅root可读。

若显示权限异常(如777或644),必须先修正;若权限正确但用户仍无权sudo,则需编辑配置。

临时开放sudoers写权限

执行 chmod u+w /etc/sudoers 给root用户添加写权限。

【关键前提】此操作必须在root身份下进行,普通用户即使有sudo权限也无法完成该步骤——因为此时sudo本身不可用。

执行后再次运行 ls -l /etc/sudoers,确认输出中第一个字符后出现 w(如 -rw-r-----)。

编辑sudoers添加当前用户

方法一:运用visudo(强烈推荐)
直接运行 visudo 命令,文件便会以安全模式自动打开。接着,按 /root ALL 回车键,就能精准定位到root权限行。然后,按 o 键,在下一行插入新的一行。随后,输入 your_username ALL=(ALL) ALL(这里要把 your_username 替换成实际的用户名,比如 zhangsan)。完成后,按 Esc 键,再输入 :wq 保存并退出。

方法二:运用vi/vim
执行 vi /etc/sudoers 命令,然后将光标移动到 root ALL=(ALL) ALL 这一行,接着按下 i 键进入插入模式,在换行后输入 your_username ALL=(ALL) ALL,之后按 Esc 键,再输入 :wq! 强制保存(因为文件可能被锁定,所以 ! 不能省略)。

注意:不要删除或修改原有注释行,尤其不能破坏 #includedir /etc/sudoers.d 这类关键指令。

恢复sudoers原始权限

第一步:执行 chmod 440 /etc/sudoers
第二步:立即验证权限是否还原 → 运行 ls -l /etc/sudoers,输出必须为 -r--r----- 开头。
第三步:退出root → 输入 exit 返回普通用户shell。

【不可逆风险】若跳过此步,系统安全策略将失效,任何能登录该主机的用户都可能篡改sudoers文件。

测试新配置是否生效

在普通用户终端中执行 sudo whoami → 输入当前用户密码 → 若返回 root,说明配置成功。

若仍报错,请检查用户名拼写是否与 id -un 输出完全一致(区分大小写、无空格)。

本文转载于:https://www.php.cn/faq/3016877.html 如有侵犯,请联系zhengruancom@outlook.com删除。
免责声明:正软商城发布此文仅为传递信息,不代表正软商城认同其观点或证实其描述。

热门关注