从管理组中删除自己 – 现在获取错误usermod:无法锁定/ etc / passwd; 稍后再试

可能重复:
无法在恢复模式下锁定’/ etc / group’

我有一台Ubuntu 11.10的笔记本电脑,由我和其他两个家庭成员共享。 我的用户ID被设置为笔记本电脑上唯一的“管理员”。 其他用户被设置为“标准”用户。 在我尝试将自己添加到其他用户的用户组时,我不知何故从管理组中删除了自己。 我使用了终端的“usermod”命令。 我必须忽略包含适当的开关或更新语法。

看起来我成功将我的用户ID添加到与我妻子的帐户关联的组中。 当我使用“groups”命令时,我只能在列表中看到我的id和我妻子的id。 我不再看到“admin”或“adm”组以及其他曾经列出的组。 当我进入系统设置>用户帐户时,我的ID现在看起来像是“标准”用户。 我想将我的帐户更改回“管理员”,但现在我不能。

我做了一些搜索解决方案,发现我需要启动进入恢复模式并从根会话执行usermod命令。 我能够成功启动进入恢复模式并进入根会话。 我试图执行命令“usermod -a -G admin user1”将我的id(user1)添加回管理组。

当我从根会话执行命令时,我收到错误消息“usermod:无法锁定/ etc / passwd;稍后再试”。 我尝试在usermod命令之前使用“sudo”,但它没有什么区别,同样的错误。 然后我尝试使用adduser添加一个新用户,以为我会尝试创建一个新的用户ID并将新用户ID作为管理组的一部分。 我使用adduser命令得到了同样的错误。

我看到一些post建议查找和删除以etc目录中“.lock”结尾的文件。 我找到的唯一文件是.pwd.lock,我没有碰过。

我不知道下一步该尝试什么。 我对Ubuntu和Linux相对缺乏经验,所以很多这对我来说都是新手。 您可以提供的任何帮助将非常感激。

我终于弄清楚为什么我收到“usermod:无法锁定/ etc / passwd;稍后再试”错误消息。 问题的根本原因在于,当我启动进入恢复模式时,默认情况下文件系统是以只读方式挂载的。 由于文件系统是以只读方式挂载的,因此adduser和usermod命令无法执行其function并生成错误消息。

是什么让我觉得问题不是文件损坏或* .lock相关的问题是/ etc文件夹中没有passwd.lock,group.lock或shadow.lock文件。 此外,当我尝试复制,重命名或删除在恢复模式下启动到根会话时在/ etc文件夹中的.pwd.lock文件时,我收到了不同的错误消息。 我收到了一条不同的错误消息,例如无法将文件重命名为只读。 我在“只读恢复模式”上进行了一些网络搜索,并发现了以下post: http : //www.linuxquestions.org/questions/linux-general-1/cannot-edit-fstab-in-recovery-mode-filesystem -is-read-only-540195 / 。

该post谈到默认情况下恢复模式处于只读模式。 它建议重新安装为读写,以允许对/ etc文件夹中的文件进行更改。 所以这就是我为解决这个问题所做的工作:

  1. 关闭计算机
  2. 启动进入恢复模式 – 加载BIOS后,按住Shift键进入grub菜单 – 进入grub菜单,选择以“(恢复模式)”结尾的条目
  3. 从下一个菜单中选择选项进入Root Session
  4. 在根会话中,执行以下命令将文件系统重新安装为读写:

    mount -o remount,rw / 
  5. 执行adduser命令将我的用户标识添加回管理组。 命令执行“adduser用户名管理员”,我用我的实际系统用户名替换了用户名。 这次我没有收到执行命令的错误,因为文件系统是以读写方式挂载的。

  6. 退出Root会话,退出恢复模式,然后重新启动。

一旦重新启动进入Ubuntu,我就可以通过从正常的终端会话执行“Groups”命令,看到我的userid现在被列为admin组的成员。 我还通过转到Ubuntu系统设置菜单中的“用户帐户”在GUI中validation了相同的内容。 我的userID也被列为“管理员”。

我进一步尝试复制我的原始问题,看看是否重新启动回到恢复模式并跳过上面的步骤#4(将文件系统重新安装为读写)将重现“无法锁定/ etc / passwd”错误,并且它没有。 问题的根本原因与文件系统在恢复模式下的安装方式有关。

对于我来说,启动进入恢复模式的新用户在默认情况下是只读的,这似乎很奇怪。 这不是恢复的想法,您需要对正确的更新文件进行一些更改,纠正原本用户无法实现的问题吗?

无论如何,我很高兴现在计算机上至少有一个用户具有管理员权限。 再次感谢所有回答我问题的人。

您可以尝试将/etc/.pwd.lock文件设置为空( nano /etc/.pwd.lock并删除所有内容),如果不是,请使用根会话中的adduser your_user admin将您的用户重新插入管理员组。 此文件用于控制对/etc/passwd/etc/shadow文件的访问,从而避免同时进行修改。 如果没有修改任何文件,它应该为空。

启动到恢复模式,选择root shell选项,然后将用户帐户添加回管理组。

您应该使用恢复控制台删除该锁定文件,尽管我认为您可以通过在常规用户会话中的终端中使用su -命令进入超级用户模式来执行相同的操作。 这似乎是一个已知的错误,虽然它出现的原因是未知的。 查看此错误报告以获取更多信息。

顺便说一句,在root会话上使用sudo是没有意义的,因为sudo只执行具有root权限的命令,如果你已经使用root用户系统,那么你已经在执行具有root权限的命令。