news 2026/6/23 13:51:55

xxx is not in the sudoers file. This incident will be reported问题解决

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
xxx is not in the sudoers file. This incident will be reported问题解决

创建的Centos 虚拟机,开机后使用sudo su 切换root 用户是报错。
提示is not in the sudoers file,说明该用户无任何 sudo 权限,唯一解决方式是进入 CentOS 7 单用户模式(绕过权限验证),要么直接重置 root 密码、要么将普通用户加入 sudoers 文件。以下是一步到位的操作步骤,适配虚拟机(VMware/VirtualBox/OpenStack 等)场景:

核心原理

CentOS 7 单用户模式会跳过系统权限验证,直接以 root 身份进入命令行,可修改任意系统配置(包括 sudoers、root 密码)。

步骤1:重启虚拟机,进入 GRUB 编辑模式

  1. 重启虚拟机(执行reboot,或在虚拟机控制台点击「重启」);
  2. 当开机出现CentOS 7 启动 GRUB 菜单(屏幕显示CentOS Linux (3.10.0-xxx.el7.x86_64) 7 (Core))时,立即按e(GRUB 菜单仅停留 2~3 秒,需提前准备,错过则重新重启);
    • 若未看到 GRUB 菜单:开机时持续按ESC键(虚拟机控制台),强制调出 GRUB 菜单。

步骤2:修改内核参数,进入单用户模式

  1. 在 GRUB 编辑界面,找到以linux16开头的行(内核启动核心行),将光标移到该行末尾(可按方向键 ←/→ 调整);
  2. 追加以下内容(注意空格分隔):
    init=/bin/bash
    示例(修改后):
    linux16 /vmlinuz-3.10.0-1160.el7.x86_64 root=/dev/mapper/centos-root ro crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet init=/bin/bash
  3. 按下Ctrl + X执行修改后的内核配置,系统会直接进入单用户模式(命令行提示符为bash-4.2#,无需密码)。

步骤3:挂载根目录为可读写(关键)

单用户模式下根目录默认是只读,无法修改文件,先执行挂载命令:

mount-o remount,rw /

执行后无报错即成功(若提示mount: / is busy,可忽略,直接执行后续步骤)。

步骤4:二选一解决权限问题(推荐方案2,更直接)

方案1:将普通用户加入 sudoers 文件(保留普通用户操作)
  1. visudo编辑 sudoers 文件(必须用 visudo,避免语法错误导致 sudo 失效):
    visudo
  2. 在文件中找到以下行(通常在文件中部):
    root ALL=(ALL) ALL
  3. 在该行下方添加普通用户的 sudo 权限(将your_username替换为你的虚拟机普通用户名,如centos/admin等):
    your_username ALL=(ALL) ALL
    • 若想让该用户免密使用 sudo(推荐),改为:
      your_username ALL=(ALL) NOPASSWD: ALL
  4. ESC键,输入:wq保存并退出visudo(若提示只读,可输入:wq!强制保存)。
方案2:重置 root 密码(直接用 root 操作,更简单)

无需配置 sudo,直接给 root 设置密码,后续全程用 root 操作:

passwdroot

按提示输入 2 次 root 密码(输入时无回显,确保两次一致),成功后会提示:

passwd: all authentication tokens updated successfully.

步骤5:修复 SELinux 上下文,重启系统

  1. 执行以下命令(避免重启后权限异常):
    touch/.autorelabel
  2. 重启虚拟机:
    exec/sbin/init
    • 重启过程可能稍慢(SELinux 自动重标文件上下文),属于正常现象,等待 1~2 分钟即可。

步骤6:验证操作结果

验证方案1(普通用户加 sudo 权限):
  1. 登录普通用户,执行:
    sudo-l
    若输出包含(ALL) ALL,说明 sudo 权限生效;
  2. 测试 sudo 命令(如修改主机名):
    sudohostnamenew-name
    无权限报错即成功。
验证方案2(root 密码):
  1. 登录普通用户后,执行:
    su- root
  2. 输入刚设置的 root 密码,提示符变为#即切换成功,后续操作无需 sudo。

关键注意事项

  1. visudo编辑错误的补救:若编辑 sudoers 时语法错误,重启后 sudo 失效,需重新进入单用户模式,执行visudo -c检查语法,再重新编辑;
  2. 虚拟机控制台操作:若远程连接(如 SSH)无法操作,必须通过虚拟机「控制台界面」(VMware 控制台/VirtualBox 窗口)执行以上步骤;
  3. SELinux 影响:若touch /.autorelabel后重启过慢,可临时关闭 SELinux(单用户模式下执行setenforce 0),但生产环境不建议永久关闭。

完成后,你就可以用 root 用户(或带 sudo 权限的普通用户)继续操作了。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/22 23:37:42

电商网站Nginx部署实战:高并发场景优化方案

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 请为电商网站设计一个高性能Nginx配置方案,要求:1) 支持3台应用服务器的负载均衡;2) 静态资源CDN配置;3) 商品详情页缓存策略&#x…

作者头像 李华
网站建设 2026/6/22 22:41:46

传统VS现代:Docker容器启动效率对比实验

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 构建一个效率对比工具,能够:1) 记录用户手动输入docker run命令的时间 2) 通过AI生成相同功能的命令 3) 比较两者耗时和正确率 4) 生成可视化对比图表。支持…

作者头像 李华
网站建设 2026/6/23 1:06:46

Vue小白必看:5分钟搞懂Vue2和Vue3的区别

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 开发一个交互式学习demo,用生活化比喻解释Vue概念:1. 用餐厅点餐比喻Options API和Composition API 2. 动画展示响应式原理差异 3. 可视化比较虚拟DOM优化 4…

作者头像 李华
网站建设 2026/6/22 21:20:39

AI如何帮你自动配置Spring Boot的spring.config.import

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 创建一个Spring Boot应用,使用spring.config.import动态加载外部配置。要求:1. 支持从本地文件、Git仓库和HTTP端点加载配置;2. 提供配置验证功能…

作者头像 李华
网站建设 2026/6/20 20:09:43

KKT条件在AI优化算法中的核心作用

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 开发一个基于KKT条件的优化算法演示工具,要求:1. 可视化展示KKT条件在约束优化问题中的应用过程;2. 支持用户输入自定义目标函数和约束条件&…

作者头像 李华