linux下/etc/sudoers文件是只读的解决方案

在使用vi命令编辑/etc/sudoers文件时发现他只是一个文件,本来我的目的是在root ALL=(ALL) ALL这行下
下添加一个mo用户使得为mo赋予不用输入密码的权利。

在这里插入图片描述

在这里插入图片描述

更改后保存的时候发现这个文件竟然是只读的 这时候想着要不然改一下脚本的权限,但是毕竟涉及到系统方面的,在改权限之前我又去网上查了一波,发现确实没有自己想的那么简单,因为改完权限后可能会导致其他问题,所以此办法作废,但是突然我看到了这个文件的第8行有这样一句话,这个文件必须用visudo命名来编辑,既然官方都建议我们使用visudo,那么我们就直接使用这个命令来进行操作,visudo这个编辑命令就类似于vi ,插入编辑之类的语法都类似 ,改完直接wq就可以了。

需要注意的是编辑/etc/sudoers这个文件的时候不能写 visudo /etc/sudoers 直接visudo就可以了
在这里插入图片描述

这里做上述的mo ALL=(ALL) ALL做一个解释:

第一个ALL指代网络中的主机;第二个指代用户,也就是按哪个用户权限去行使命令;第三个指代执行命令,这样普通用户xxx就能够执行root权限的所有命令了。

### 回答1: 如果修改了/etc/sudoers文件后无法重启系统,可以尝试以下解决方法: 1. 在启动画面按下e键,进入启动参数编辑界面。 2. 找到“linux”开头的行,在末尾添加init=/bin/bash。 3. 按下Ctrl + x或F10键,使用这些修改启动系统。 4. 系统将进入单用户模式,你可以进入系统并修改/etc/sudoers文件。 5. 修改完成后,输入“reboot”命令重启系统。 注意:在修改/etc/sudoers文件之前,应该备份原始文件,以便在出现问题时进行恢复。 ### 回答2: 当我们在Linux系统中修改了/etc/sudoers文件后,如果无法重启系统,可能是由于对sudoers文件的修改导致sudo命令无法正常执行,进而导致系统无法正常重启。解决此问题的方法如下: 1. 尝试使用备份文件恢复sudoers文件:在修改sudoers文件之前,我们通常会创建一个备份文件,其命名类似于sudoers.bak。可以尝试将备份文件复制回/etc/sudoers,覆盖已经修改的文件。 2. 利用恢复模式(Single User Mode)修复系统:在启动时选择恢复模式,通常通过在GRUB菜单中选择“恢复模式”或者“single user mode”。进入恢复模式后,系统以最小的运行级别启动,并且只使用root帐户身份,不需要sudo权限。在此模式下,可以使用root权限修改/etc/sudoers文件,并确保修改正确。 3. 使用安装介质进入救援模式:如果无法进入恢复模式,可以使用Linux安装介质(如光盘或USB驱动器)进入救援模式。在受损的系统中,选择“救援模式”选项,并按照提示选择语言和键盘布局。进入命令行环境后,可以挂载受损的根文件系统,并修改/etc/sudoers文件进行修复。 4. 使用其他Linux系统启动并挂载根文件系统:如果系统无法正常启动,但您拥有其他可以正常运行的Linux系统,可以使用该系统启动电脑,并将受损系统的根文件系统挂载到新系统中。然后,对挂载的文件系统中的/etc/sudoers文件进行修复。 5. 在单用户模式下重建sudoers文件:如果以上方法都无法解决问题,可以尝试在单用户模式下重建sudoers文件。在单用户模式下,以root用户身份,使用文本编辑器(如vi或nano)打开sudoers文件,并按照正确的语法和格式进行修改。然后保存文件并尝试重启系统。 总的来说,当我们在Linux系统中修改了/etc/sudoers文件后无法重启系统时,可以尝试恢复备份文件、进入恢复模式修复、使用安装介质进入救援模式、或者在单用户模式下重建sudoers文件等方法来解决问题。 ### 回答3: 解决Linux下修改了/etc/sudoers后无法重启系统的问题有以下几种方法: 1. 使用恢复模式:进入恢复模式后,挂载根目录为只读模式,并修复/etc/sudoers文件中的错误。在终端中输入以下命令: ``` mount -o remount,ro / visudo ``` 然后修复/etc/sudoers文件并保存退出。最后重新启动系统。 2. 利用启动盘修复:使用Linux启动盘或其他可引导的介质启动系统,将根目录挂载到一个临时目录下,并修复/etc/sudoers文件中的错误。具体步骤如下: - 插入启动盘并从中启动系统。 - 进入恢复模式并选择root shell选项。 - 将根目录挂载到一个临时目录下,例如/mnt: ``` mount /dev/sda1 /mnt ``` - 使用文本编辑器打开修复/etc/sudoers文件: ``` nano /mnt/etc/sudoers ``` - 修复文件中的错误并保存退出。 - 卸载挂载的根目录: ``` umount /mnt ``` - 重新启动系统。 3. 由于修改/etc/sudoers文件可能导致权限问题,可能无法使用sudo命令执行操作。可以使用root用户登录系统,并在终端中输入以下命令修复文件: ``` su visudo ``` 然后修复/etc/sudoers文件并保存退出。 4. 如果以上方法都无法解决问题,可以考虑备份重要数据后重新安装系统。在安装过程中,确保不修改/etc/sudoers文件,以免再次出现无法重启系统的问题。然后将备份的数据恢复到新系统中。 无论选择哪种方法,都应该谨慎修改/etc/sudoers文件,并确保在修改之前备份好该文件,以便发生问题时可以方便地恢复。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值