Linux系统中新建用户名后,如何通过命令行正确登录该用户?

在Linux系统中,新建用户并完成登录是基础且重要的操作,涉及用户创建、权限配置及登录方式等多个环节,以下是详细步骤和注意事项,帮助顺利完成用户登录流程。

linux如何登陆新建用户名

创建新用户

Linux中创建用户主要通过useradd或adduser命令实现,两者功能相似但存在差异:useradd是底层命令,参数丰富,适合脚本化操作;adduser是交互式前端工具,默认会创建主目录、设置基本配置,更适合手动操作,以useradd为例,常用参数如下:

参数 作用 示例
-m 自动创建用户主目录(默认位于/home/用户名) useradd -m testuser
-s 指定用户登录shell(如/bin/bash、/bin/sh) useradd -m -s /bin/bash testuser
-g 指定主用户组(需提前存在) useradd -m -g users testuser
-G 指定附加用户组(多个组用逗号分隔) useradd -m -G sudo,docker testuser
-c 添加用户注释(如真实姓名) useradd -m -c "Test User" testuser

操作示例:
创建一个名为testuser的用户,自动创建主目录,使用/bin/bash作为shell,并加入sudo组(需提前确认sudo组存在,可通过cat /etc/group | grep sudo查看):

sudo useradd -m -s /bin/bash -G sudo testuser

设置用户密码

新建用户默认无密码或密码为空,无法直接登录,需通过passwd命令设置密码,执行时会要求输入两次密码(屏幕不显示),且密码需满足系统复杂度要求(如长度、字符类型)。

操作示例:
为testuser设置密码:

linux如何登陆新建用户名

sudo passwd testuser

根据提示输入密码后,可通过last testuser查看用户最近登录记录,或cat /etc/shadow验证密码是否加密存储(密码字段为表示锁定,非则已设置)。

用户组与权限配置

Linux通过用户组管理权限,新用户默认创建同名主组(如testuser属于testuser组),若需加入其他组(如sudo管理员组、docker技术组),可通过usermod命令修改:

# 将用户加入附加组(多个组用逗号分隔)
sudo usermod -aG sudo,docker testuser
# 从组中移除用户
sudo gpasswd -d testuser sudo

若需赋予管理员权限,确保用户属于sudo组(sudo组用户可通过sudo command执行特权命令)。

登录新用户

命令行登录(适用于服务器或无界面环境)

  • 切换用户:登录后可通过su或su -切换至新用户。

    linux如何登陆新建用户名

    • su testuser:仅切换用户身份,环境变量保持原用户(不推荐,可能导致权限问题)。
    • su - testuser:完全切换用户,加载新用户的配置文件(如.bashrc),推荐使用。
  • 直接登录:若通过物理终端或SSH登录,在登录界面输入用户名和密码即可。

图形界面登录(适用于桌面版Linux)

  • 登录界面操作:在登录窗口点击用户列表(或手动输入用户名),输入密码后即可进入桌面。
  • 用户列表管理:部分发行版(如Ubuntu)可通过Users图形工具(gnome-control-center users)添加用户,勾选“Administrator”赋予sudo权限。

常见问题排查

  • 提示“Authentication failure”:检查密码是否正确,或确认用户是否已设置密码(passwd -S testuser查看密码状态)。
  • 提示“Directory /home/testuser does not exist”:创建用户时未加-m参数,需手动创建目录并设置权限:
    sudo mkdir -p /home/testuser
    sudo chown testuser:testuser /home/testuser
    sudo chmod 700 /home/testuser
  • 无法使用sudo:确认用户是否属于sudo组(groups testuser),或检查/etc/sudoers文件(sudo visudo编辑)中是否有相关配置。

相关问答FAQs

Q1:创建用户后忘记密码,如何重置?
A1:以root用户或具有sudo权限的用户登录,执行sudo passwd testuser,按提示输入新密码即可重置,若root用户也无法登录,需通过单用户模式或Live CD修复系统。

Q2:如何禁止用户通过SSH登录?
A2:编辑/etc/ssh/sshd_config文件,找到AllowUsers或DenyUsers指令,添加或修改为DenyUsers testuser,保存后重启SSH服务(sudo systemctl restart sshd),也可通过usermod -s /sbin/nologin testuser禁用命令行登录(保留其他登录方式)。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/35979.html

赞 (0)
酷番叔酷番叔
上一篇 2025年10月4日 21:31
下一篇 2025年10月4日 21:45

相关推荐

  • 如何安全正确卸载PHP?

    在Linux系统中彻底卸载PHP需要谨慎操作,避免残留文件影响后续环境配置,以下是针对不同发行版的详细步骤,操作前请务必备份重要数据(如网站文件、数据库和自定义配置),并确保具备管理员权限(使用sudo),卸载前的准备工作停止相关服务避免卸载过程中出现进程冲突:sudo systemctl stop apach……

    2025年7月15日
    31300
  • Linux系统下如何正确打开21端口?FTP端口开启详细步骤教程

    在Linux系统中,21端口是FTP(File Transfer Protocol,文件传输协议)的默认端口,主要用于文件传输服务,要开启21端口,通常需要安装并配置FTP服务,同时确保防火墙允许该端口的访问,本文将详细讲解在不同Linux发行版中开启21端口的完整步骤,包括服务安装、配置、防火墙设置及验证方法……

    2025年8月30日
    19700
  • Linux命令如何解压zip文件?

    在Linux系统中,处理zip压缩文件最常用的命令是unzip,它功能强大且支持多种解压场景,无论是日常文件管理还是脚本自动化处理,掌握unzip命令的用法都能提升效率,本文将详细介绍unzip命令的基本语法、常用选项、典型应用场景及注意事项,帮助用户灵活应对各种解压需求,unzip命令基本语法unzip命令的……

    2025年9月21日
    34800
  • Linux系统里如何查看命令执行历史记录和系统操作记录?

    在Linux系统中,“记录”涵盖范围广泛,包括用户执行的命令历史、系统运行日志、用户登录活动、进程运行状态以及网络连接信息等,查看这些记录是系统管理和故障排查的基础操作,不同类型的记录需通过特定命令或工具进行查看,以下从常见记录类型出发,详细介绍查看方法及常用命令,命令历史记录命令历史记录了用户在终端中执行过的……

    2025年10月4日
    26500
  • linux 如何启动perf

    Linux中,启动perf可以使用命令sudo perf,或者指定

    2025年8月10日
    19700

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信