news 2026/4/18 10:22:10

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/4/17 12:11:50

EmotiVoice能否生成带有口音特色的角色语音?

EmotiVoice能否生成带有口音特色的角色语音? 在游戏NPC用四川话讲冷笑话、虚拟主播以台湾腔撒娇卖萌的今天,用户对语音合成的期待早已超越“能听清”这一基本要求。人们想要的是有性格、有情绪、甚至“带点乡音”的声音角色——那种一开口就能让人脑补出…

作者头像 李华
网站建设 2026/4/18 7:58:14

5个实际场景下eval的替代方案

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 开发一个多功能演示页面,包含5种eval替代方案的实际应用:1. JSON解析场景 2. 动态函数生成 3. 模板字符串渲染 4. 配置参数解析 5. 规则引擎实现。每个案例需…

作者头像 李华
网站建设 2026/4/17 8:27:33

C++ substr vs 手动字符串处理:效率对比测试

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 请生成两个C函数:一个使用substr处理字符串分割,另一个使用传统字符数组方式实现相同功能。添加性能测试代码,比较两者在处理100万次操作时的耗时…

作者头像 李华
网站建设 2026/4/17 18:04:45

Flutter面试实战:从题库到模拟面试全流程

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 开发一个Flutter面试模拟系统,包含以下功能:1)分类题库管理(基础/进阶/架构);2)随机组卷功能;3)模拟面试计时模式;4)答案…

作者头像 李华
网站建设 2026/4/18 4:53:02

ET框架入门指南:30分钟搭建第一个游戏服务器

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 制作一个ET框架的入门教学项目,要求:1. 最简单的聊天室服务器和客户端实现;2. 分步骤注释说明ET框架的核心概念(Entity、Component、System)&…

作者头像 李华