Linux新用户如何登录系统?

在Linux系统中,新用户登录的前提是系统已存在对应的用户账户,且该账户具备有效的登录凭证(用户名密码),整个过程涉及用户创建、密码设置、登录方式选择及权限配置等环节,以下是详细步骤和说明。

linux如何以新用户登录到系统

创建新用户账户

在Linux中,创建新用户主要通过useraddadduser命令实现,两者的区别在于:useradd是底层命令,需手动指定参数(如是否创建家目录、指定shell等);adduser是交互式友好命令,会自动引导用户设置密码、全名等信息,适合新手使用。

使用adduser(推荐)

sudo adduser newuser

执行后会提示输入以下信息:

  • 新用户密码(需输入两次,确认无误)
  • 用户全名(可选,可直接回车跳过)
  • 房间号、电话号码等额外信息(均可选,默认回车跳过)
  • 确认信息(输入Y确认创建)

该命令会自动完成以下操作:

  • 创建用户家目录(默认为/home/newuser
  • 设置用户默认shell(通常为/bin/bash
  • 创建用户主组(组名与用户名相同)
  • 生成用户配置文件(如/etc/passwd/etc/shadow等)

使用useradd

sudo useradd -m -s /bin/bash newuser

参数说明:

  • -m:自动创建用户家目录(若不指定,家目录需手动创建)
  • -s /bin/bash:指定用户登录shell(默认为/bin/sh,推荐/bin/bash以支持命令行历史、别名等功能)
  • 其他常用参数:-c(添加用户注释信息)、-u(指定UID,用户ID,默认自动分配)、-g(指定主组,默认自动创建与用户名同名的组)

创建完成后,可通过id newuser命令查看用户信息,输出示例:

uid=1001(newuser) gid=1001(newuser) groups=1001(newuser)

设置/修改用户密码

新用户创建后需设置密码才能登录,使用passwd命令(普通用户只能修改自己的密码,root用户可修改任意用户密码)。

root用户设置新用户密码

sudo passwd newuser

根据提示输入两次新密码,密码不会显示在终端(输入时无光标变化),设置成功后会显示passwd: password updated successfully

新用户修改自己的密码

passwd

需先登录系统(可通过root用户切换登录,后文详述),输入当前密码后,再输入两次新密码。

密码安全建议

  • 长度至少8位,包含大小写字母、数字和特殊字符(如!@#$%^&*
  • 避免使用个人信息(如生日、姓名拼音)或常见词汇(如123456password
  • 定期更换密码(可通过chage命令设置密码有效期,如sudo chage -M 90 newuser,强制90天后修改密码)

新用户登录方式

Linux支持多种登录方式,主要分为图形界面登录和命令行登录,具体取决于系统安装的桌面环境(如Ubuntu的GNOME、CentOS的GNOME Classic等)及服务配置。

linux如何以新用户登录到系统

图形界面登录(GUI)

若系统安装了图形界面,登录步骤如下:

  • 启动系统后,进入登录界面(通常显示系统默认用户或用户列表)
  • 点击用户名输入框,输入新创建的用户名(如newuser
  • 输入对应密码(输入时显示为圆点或星号)
  • 点击“登录”按钮或按回车键

登录成功后,将进入图形桌面环境,用户可通过终端(如GNOME的“终端”应用)执行命令。

命令行登录(CLI)

无图形界面或需远程管理时,可通过命令行登录,分为本地登录和远程登录。

(1)本地命令行登录

  • 场景1:当前已登录root用户或其他用户,需切换到新用户
    使用su(switch user)命令:

    su newuser  # 切换到newuser,不加载用户环境变量(家目录配置不生效)
    su - newuser # 完全切换,加载用户环境变量(推荐,模拟完整登录过程)

    执行后输入新用户密码,密码正确即可切换。su -会切换到用户家目录,并加载用户的.bashrc.profile等配置文件,而su仅切换用户身份,保留当前环境。

  • 场景2:系统启动时直接进入命令行登录界面(如最小化安装的Linux)
    在登录提示符后输入用户名(如newuser),按回车,再输入密码(输入时无显示),登录成功后显示命令行提示符(如newuser@hostname:~$)。

(2)远程命令行登录(SSH)

需目标Linux系统开启SSH服务(默认大多数发行版已开启),步骤如下:

  • 在本地终端(Windows可用PuTTY、Xshell等工具)执行:

    ssh newuser@服务器IP地址

    ssh newuser@192.168.1.100
    首次登录会提示“Are you sure you want to continue connecting (yes/no)?”,输入yes确认,之后输入用户密码即可登录。

    linux如何以新用户登录到系统

  • SSH免密登录(可选):为方便频繁操作,可配置基于SSH密钥的免密登录,需在本地生成密钥对(ssh-keygen),并将公钥(~/.ssh/id_rsa.pub)上传到服务器的~/.ssh/authorized_keys文件中。

新用户权限配置(sudo)

新用户默认仅拥有普通权限,无法执行需要管理员权限的命令(如安装软件、修改系统文件),若需赋予管理员权限,可将用户加入sudo组(Ubuntu/Debian)或wheel组(CentOS/RHEL)。

Ubuntu/Debian系统

sudo usermod -aG sudo newuser

参数说明:

  • -aG-a表示追加(append),-G表示指定组(避免覆盖原有组,如用户已属于其他组)

CentOS/RHEL系统

sudo usermod -aG wheel newuser

添加后,新用户需重新登录才能使用sudo命令,使用时在命令前加sudo

sudo apt update  # Ubuntu/Debian更新软件包列表
sudo yum update  # CentOS/RHEL更新软件包列表

首次使用sudo会提示输入用户密码(验证后默认5分钟内无需再次输入),执行后终端会要求输入当前用户的密码(即newuser的密码)。

注意事项

  • 修改sudo组后,可通过groups newuser查看用户所属组,确认是否包含sudowheel
  • 若需精细控制权限,可编辑/etc/sudoers文件(使用sudo visudo命令),例如允许用户仅执行特定命令,但需谨慎操作,避免误删配置导致sudo失效。

常见问题排查

提示“Authentication failure”(认证失败)

  • 原因:用户名或密码错误(区分大小写)。
  • 解决:确认用户名拼写正确,通过sudo passwd newuser重置密码(需root权限),确保密码输入无误(注意键盘大小写锁定键)。

提示“No directory, logging in with HOME=/”

  • 原因:创建用户时未自动生成家目录(如使用useradd未加-m参数)。
  • 解决:手动创建家目录并设置权限:
    sudo mkdir -p /home/newuser
    sudo chown newuser:newuser /home/newuser
    sudo cp -r /etc/skel/. /home/newuser/  # 复制默认配置文件到家目录

SSH远程登录失败

  • 原因1:SSH服务未启动
    解决:在服务器端执行sudo systemctl start ssh,并设置开机自启sudo systemctl enable ssh
  • 原因2:防火墙阻止SSH端口(默认22)
    解决:开放SSH端口(Ubuntu/Debian用sudo ufw allow 22,CentOS用sudo firewall-cmd --permanent --add-service=ssh && sudo firewall-cmd --reload)。
命令 作用 示例
adduser 交互式创建新用户 sudo adduser newuser
useradd 底层创建新用户 sudo useradd -m -s /bin/bash newuser
passwd 修改用户密码 sudo passwd newuser
su 切换用户(不加载环境) su newuser
su - 完全切换用户(加载环境) su - newuser
ssh 远程SSH登录 ssh newuser@192.168.1.100
usermod 修改用户属性(如加组) sudo usermod -aG sudo newuser
id 查看用户ID和组信息 id newuser

相关问答FAQs

问题1:忘记新用户密码怎么办?
解答:若为本地系统,可通过root用户重置密码,重启系统,在GRUB引导界面按e键进入编辑模式,找到linuxlinuxefi行,在末尾添加init=/bin/bash(禁用init系统),按Ctrl+X启动,进入root shell后,执行passwd newuser设置新密码,输入exec /sbin/init重启系统即可用新密码登录,若为远程服务器,需联系管理员通过root账户重置密码。

问题2:新用户无法使用sudo命令,提示“xxx is not in the sudoers file”怎么办?
解答:说明用户未加入sudo组,使用root用户登录,执行sudo usermod -aG sudo newuser(Ubuntu)或sudo usermod -aG wheel newuser(CentOS),将用户加入对应组,添加后需重新登录生效,若仍报错,检查/etc/sudoers文件是否正确(用sudo visudo命令编辑),确保存在%sudo ALL=(ALL:ALL) ALL(Ubuntu)或%wheel ALL=(ALL) ALL(CentOS)且未被注释。

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

(0)
酷番叔酷番叔
上一篇 2025年9月27日 21:39
下一篇 2025年9月27日 21:57

相关推荐

  • Linux系统刷新DNS缓存的具体步骤和命令有哪些?

    在Linux系统中,DNS(域名系统)缓存用于加快域名解析速度,但当域名对应的IP地址发生变化或需要清除错误的解析记录时,就需要手动刷新DNS缓存,不同Linux发行版使用的DNS缓存服务不同,刷新方法也存在差异,本文将详细介绍Linux系统中刷新DNS的多种方法,涵盖主流发行版及不同场景下的操作步骤,理解DN……

    2025年9月25日
    4200
  • linux 如何查看系统带宽

    在Linux系统中,监控网络带宽使用情况是系统管理和故障排查的重要环节,通过实时或历史数据可以定位网络瓶颈、发现异常流量或优化资源配置,Linux提供了多种命令行工具和实用程序,帮助用户从不同维度查看系统带宽使用情况,以下将详细介绍这些工具的使用方法、输出解析及适用场景,iftop:实时按连接查看带宽iftop……

    2025年9月9日
    4200
  • Linux系统下硬盘故障如何修复数据并保证系统稳定?

    Linux系统如何修复硬盘硬盘作为数据存储的核心设备,其稳定性直接关系到系统安全和数据完整性,在Linux系统中,由于长期运行、意外断电或硬件老化,硬盘可能出现文件系统错误、坏道、分区表损坏等问题,本文将详细介绍Linux系统下硬盘修复的常见场景、操作步骤及注意事项,帮助用户高效解决硬盘故障,保障数据安全,常见……

    2025年9月10日
    4400
  • 镜像文件安装Linux,关键步骤有哪些?问题解答与注意事项详解

    使用镜像文件安装Linux是大多数用户选择的主流方式,相比其他安装方法,镜像文件安装具有系统纯净、版本可控、可自定义安装选项等优势,本文将详细介绍从准备工作到安装完成的完整流程,帮助不同阶段的用户顺利完成Linux系统的部署,安装前的准备工作在开始安装前,充分的准备是确保安装过程顺利的关键,主要包括以下几个方面……

    2025年8月30日
    4700
  • 忘记RHEL密码如何恢复?

    适用场景:RHEL 7/8/9 物理服务器、虚拟机及云实例(需控制台访问权限)物理服务器/本地虚拟机操作流程原理:通过引导加载器进入单用户模式(无需密码的root shell)重启系统在启动界面出现时快速按下 Esc 键(虚拟机)或方向键(物理机)中断引导流程,编辑内核参数在GRUB菜单选中当前内核行按 e 键……

    2025年7月17日
    6500

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信