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

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

linux如何登陆新建用户名

创建新用户

Linux中创建用户主要通过useraddadduser命令实现,两者功能相似但存在差异: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执行特权命令)。

登录新用户

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

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

    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文件,找到AllowUsersDenyUsers指令,添加或修改为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

相关推荐

  • linux 如何进入sqlplus

    在Linux系统中进入SQLPlus是Oracle数据库管理和操作的常见需求,但具体操作需结合环境配置、用户权限及数据库状态等因素,以下是详细步骤和注意事项,帮助用户顺利进入SQLPlus环境,环境准备与基础检查在尝试进入SQLPlus前,需确保以下条件满足,否则可能导致连接失败或命令无法识别:Oracle数据……

    2025年9月29日
    1300
  • 如何正确引入标准输入输出库?

    创建C文件选择文本编辑器终端编辑器(推荐初学者): nano hello.c # 使用Nano创建文件,按Ctrl+X保存退出vim hello.c # Vim中按`i`进入编辑,按ESC后输入`:wq`保存退出图形界面编辑器: gedit hello.c # GNOME桌面环境kate hello.c # K……

    2025年8月7日
    3600
  • 开始下载(示例)

    为什么需要暂停下载?带宽管理:暂停大文件下载以保障视频会议、在线游戏等实时应用的流畅性,任务调度:临时中断非紧急下载,优先处理高优先级任务,网络限制:避免在流量敏感时段(如按量计费网络)过度消耗资源,错误恢复:暂停后检查文件完整性,避免因网络中断导致下载失败,命令行工具暂停下载方法使用 wget 暂停与恢复wg……

    2025年6月16日
    5400
  • Linux下如何查看进程是否存在?

    在Linux系统中,查看进程是否存在是日常系统管理和故障排查中的常见操作,无论是监控服务状态、调试程序还是编写自动化脚本,都需要准确判断进程的运行情况,Linux提供了多种命令和方法来实现这一需求,下面将详细介绍几种主流的方式,包括它们的用法、优缺点及适用场景,使用ps命令结合grep过滤ps(process……

    2025年8月24日
    2700
  • Linux如何隐藏文件夹?实用技巧分享,安全隐藏Linux文件夹的方法有哪些?,Linux隐藏文件夹保护隐私怎么做?,隐藏Linux文件夹的可靠方法?,Linux文件夹隐藏终极指南?

    基础方法:通过重命名隐藏(最常用)原理:Linux默认隐藏以点()开头的文件和文件夹,步骤:打开终端(Ctrl+Alt+T),使用 mv 命令重命名文件夹: mv 原文件夹名 .隐藏文件夹名示例:将 private 隐藏为 .private:mv private .private验证:输入 ls 不显示隐藏文件……

    2025年6月22日
    4800

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信