sudo提示“is not in the sudoers file. This incident will be reported”解决方法

本文详细介绍了如何通过su命令将普通用户转换为root用户,并使用visudo编辑sudoers文件实现权限分配,确保系统安全。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.su 切成root
2.visudo (实际是修改/etc/sudoers文件)
3.找到"root ALL=(ALL)ALL"
4.在下面增加"‘用户名’ ALL=(ALL)ALL"
5.保存推出,OK
### 解决方案 当用户尝试通过 `sudo` 执行命令时收到错误提示 `'is not in the sudoers file. This incident will be reported.'`,这表明当前用户未被授权使用 `sudo` 权限。以下是具体的解决方案: #### 方法一:编辑 `/etc/sudoers` 文件 可以通过以下步骤为用户授予 `sudo` 权限: 1. 使用具有管理员权限的账户登录系统。 2. 编辑 `/etc/sudoers` 文件,推荐使用专门用于此目的的安全工具 `visudo` 进行操作[^1]。 ```bash visudo ``` 3. 在文件中添加相应的配置项以赋予目标用户或用户组 `sudo` 权限。例如: - 赋予单个用户 `sudo` 权限时,在文件末尾添加如下内容: ```plaintext username ALL=(ALL:ALL) ALL ``` - 如果希望整个用户组拥有 `sudo` 权限,则可添加类似以下的内容: ```plaintext %groupname ALL=(ALL:ALL) ALL ``` #### 方法二:进入恢复模式并修复 如果无法正常访问系统或者没有其他可用的管理员账号,可以采取以下措施: 1. 启动计算机并选择进入 **Recovery Mode** (恢复模式)[^3]。 2. 在恢复菜单中选取选项使根文件系统处于读写状态。 3. 切换至 root 用户身份: ```bash su - ``` 4. 修改 `/etc/sudoers` 或者直接向其中追加新条目来重新定义特定用户的权限。 #### 方法三:调整环境变量设置 有时由于路径缺失也可能间接引发此类问题。确认 `$PATH` 是否包含了必要的目录比如 `/sbin`, `/usr/sbin` 等位置[^4]: ```bash echo $PATH export PATH=$PATH:/sbin:/usr/sbin ``` --- ### 注意事项 - 对于 `/etc/sudoers` 的任何更改都应极其谨慎处理;不当修改可能导致系统失去功能性。 - 推荐始终利用 `visudo` 工具来进行编辑工作以防语法错误破坏原有功能[^5]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值