输入正确的用户名和密码后无法登录

输入正确的用户名和密码后无法登录

我想在我的 Ubuntu 终端上更改主机名之前的名称(xin x@y),为此,我将 old xin替换/etc/passwd/etc/shadownewname

现在,当我尝试打开 Ubuntu 时,它无法打开;它将我重定向到锁定屏幕

答案1

这是因为用户名不能手动更改(不仅仅是更改里面的用户名/etc/passwd/etc/shadow文件);/home目录没有创建,所以它找不到可以登录的地方,最后返回登录屏幕,告诉用户必须修复此问题。以下是修复该问题的不同方法:

  • 使用控制台连接tty

    1. 使用快捷键Ctrl+ Alt+F1打开tty终端
    2. 尝试登录 -> 如果不起作用,请尝试使用 root 权限登录
    3. 恢复/etc/passwd/etc/shadow文件的更改
    4. 恢复完成后,使用sudo usermod -l newUsername oldUsername命令将旧用户名更改oldUsername为新用户名newUsername 到处需要
    5. 注销/重启,你可以使用++Ctrl返回GUIAltF7
  • 如果您无法使用tty控制台连接到登录

    1. 重启电脑并以恢复模式(或命令行模式)启动 Ubuntu不知道它的具体名称
    2. 恢复/etc/passwd/etc/shadow文件的更改
    3. 恢复完成后,使用sudo usermod -l newUsername oldUsername命令将旧用户名更改oldUsername为新用户名newUsername 到处需要
    4. 重启电脑
  • 如果这些方法都不起作用,那么您可以尝试使用实时会话恢复用户名

    1. 使用以下命令来挂载您的分区:

      sudo fdisk -l    ###find the partition which contains your data
      
      sudo mount /dev/sdaN /mnt  ####N is the partition number (can be sdbN, sdcN too)
      sudo mount --bind /dev /mnt/dev
      sudo mount --bind /sys /mnt/sys
      sudo mount --bind /run  /mnt/run
      sudo mount --bind /proc /mnt/proc
      sudo chroot /mnt           ####after this command, you re inside your previous Ubuntu partition
      
    2. 恢复/etc/passwd/etc/shadow文件的更改
    3. 恢复完成后,使用sudo usermod -l newUsername oldUsername命令将旧用户名更改oldUsername为新用户名newUsername 到处需要
    4. 重启电脑

如果这些方法都不起作用(我真的很怀疑),我就帮不上什么忙了

答案2

/etc/passwd和都不/etc/shadow适合手动/用文本编辑器编辑。

这对您没有太大帮助,但是为了更改您的用户名,您应该使用该usermod命令。

我能想到两种可能的解决方案:

  1. 如果您的系统上有其他用户,请登录并恢复对上述两个文件所做的更改。

  2. 使用可启动介质(如 USB 棒或装有 Linux 的 CD-ROM),启动您的 PC 并安装已安装 Linux 的硬盘。然后恢复更改。

相关内容