【问题解决】VMware +Ubuntu20.04创建用户后无法登陆的问题

🌞这个blog用于解决VMware +Ubuntu20.04创建用户后无法登陆的问题

文章目录

问题说明

这件事是这样的,我尝试用虚拟机创建一个新用户

大概步骤就是

复制代码
sudo useradd username
sudo passwd username
id username  //查看是否创建成功

这两步结束之后

复制代码
cd ~
cat /etc/passwd

确实是创建成功了

这个时候我在虚拟机上面切换用户 并登陆 发现登陆不上去,密码当然是包对的!就是一直处于登陆的界面。

解决方案

然后我问了一下万能的AI:

可以确定是新用户的默认 shell 设置不正确导致的。

问题分析:

useradd -m mosong:使用 sudo 运行 useradd -m mosong 成功创建了用户 mosong 和其家目录 /home/mosong。

默认无密码:useradd 默认创建的用户是没有密码的,所以你最初 su mosong 失败了。

passwd mosong:你通过 sudo passwd mosong 成功为 mosong 设置了密码。

su mosong 后的异常行为

正常的 bash 或 zsh 会话会显示如 mosong@ubuntu:~$ 这样的提示符。

你看到的 $ 提示符暗示它可能运行的是 /bin/sh(在 Ubuntu 上通常是 /bin/dash 的符号链接),或一个更简陋的 shell。

更重要的是, 1 报错 sh: 1: 1: not found 和 PATH 报错 sh: 2: ... not found 表明这个 shell 环境非常不健全,甚至无法正确解析 PATH 变量或你输入的简单命令。这通常发生在用户的 默认 shell 没有被正确设置,或者设置了一个不存在或有问题的程序作为 shell。

图形界面无法登录:这是以上问题的直接后果。图形登录管理器(如 GDM3, LightDM)在尝试为用户启动会话时,会尝试执行用户指定的默认 shell。如果这个 shell 无效、缺失或配置错误,会话就无法启动,登录管理器会简单地把你踢回登录界面,而不会给出详细错误。

解决方案:

所以需要为 mosong 用户设置一个正确的默认交互式 shell,例如 /bin/bash。

步骤:

切换回你的管理员用户或其他有 sudo 权限的用户。

如果你还在 su mosong 的简陋 shell 里,可以输入 exit 退回到用户的 shell。

更改 mosong 用户的默认 shell 为 /bin/bash。

使用 usermod 命令:

复制代码
sudo usermod -s /bin/bash mosong

-s 或 --shell 选项用于指定用户的登录 shell。

/bin/bash 是 Ubuntu 和大多数 Linux 发行版上标准的、功能齐全的交互式 shell。

验证(可选):可以检查用户 mosong 的 shell 是否已更改:

复制代码
grep mosong /etc/passwd

输出应该类似于:

mosong : x: 1001:1001:mosong,:/home/mosong:/bin/bash

(注意最后一部分是 /bin/bash)

最后尝试重新登陆。

总结:

useradd 命令在默认情况下(如果没有使用 -s 参数指定 shell),可能会给用户分配一个 /bin/sh 或者一个非常基础的 shell。对于需要交互式登录(尤其是图形界面登录)的用户,通常需要指定一个功能更强大的 shell,比如 /bin/bash。通过 usermod -s /bin/bash mosong,你为 mosong 设置了一个合适的 shell,解决了登录问题。

于是!!可以了!!

相关推荐
PAQQ2 小时前
解决 ubuntu 重启串口号变化
linux·运维·ubuntu
desssq5 小时前
ubuntu 18.04 泰山派编译报错
linux·运维·ubuntu
喵喵爱自由5 小时前
Ubuntu 24.04 Server 版系统安装及配置
数据库·ubuntu
清风笑烟语5 小时前
Ubuntu 24.04 搭建k8s 1.33.4
linux·ubuntu·kubernetes
CheungChunChiu8 小时前
嵌入式 Linux 启动机制全解析:从 Boot 到 Rootfs
linux·运维·服务器·ubuntu·uboot·boot·extboot
鹿鸣天涯11 小时前
使用VMware Workstation Pro搭建Ubuntu服务器虚拟机
ubuntu
linjoe9915 小时前
【Deep Learning】Ubuntu配置深度学习环境
人工智能·深度学习·ubuntu
bug攻城狮17 小时前
解决Ubuntu中apt-get -y安装时弹出交互提示的问题
linux·运维·ubuntu
xiachong2717 小时前
ubuntu18.04安装PCL1.14
linux·ubuntu