Linux操作系统 -----(4.用户账户及组账户管理)

目录

前言

本章学习目标

1.用户分类

2.用户账户文件

3.用户影子文件

4.用户账户管理命令

4.1.新增用户命令

4.2.修改密码命令

4.3.修改用户属性命令

4.4.删除用户命令

5.组用户管理

5.1.组账户分类

5.2.组账户管理文件

5.3.组账户管理命令

5.3.1.新建组命令

5.3.2.修改组属性命令

5.3.3.删除组账户命令

5.3.4.修改组账户命令

6.账户相关的其他命令

6.1.id命令

6.2.whoami命令

6.3.su命令

6.4.newusers命令

6.5.chpasswd命令

7.图形界面下的账户管理

7.1.打开账户管理程序

7.2.新建用户

7.3.修改密码

7.4.更改账户类型

7.5.删除用户

7.6.设置用户组

8.总结


前言

上篇博客我们讲述了(3.文本编译器Vim),接下爱的本篇博客我们来讲述(4.用户用户账户及组账户管理)的相关知识点!那么废话不多说,直接上干货:


本章学习目标

  • 熟悉账户管理相关文件的组成。

  • 掌握用户账户管理命令。

  • 掌握组账户管理命令。

  • 了解图形界面下的账户管理程序。

  • 了解root密码的重置方法。


Linux系统中每个登录的成员都要有一个用户账户‌。用户登录时必须输入正确的用户名和密码,才被允许进入系统。

1.用户分类

Linux中用户分成三类:超级用户、系统用户和普通用户,如图4-1所示

当账户被创建后,都会在/etc/passwd文件/etc/shadow文件中增加相应账户的记录。对用户账户的设置和修改会直接改变这两个文件的内容。

2.用户账户文件

用户账户文件passwd位于/etc目录下,文件中的每一行对应一个用户账户,每个用户账户的信息包含7个字段,字段之间用冒号“:”隔开,文件内容如图4-2所示。

                                                                图4-2passwd文件

每个字段的含义如表4-1所示。

3.用户影子文件

账户影子文件shadow位于/etc目录下,用来存储关于账户密码的相关设置。文件中每一行对应一个用户账户的密码设置,每个账户的密码设置信息包含9个字段,字段之间用冒号“:”隔开,文件内容如图4-3所示。

每个字段的含义如表4-2所示。

4.用户账户管理命令

4.1.新增用户命令

格式:useradd [选项] <用户名>

useradd命令的选项如表4-3所示。

注意

由于新增用户还未设置密码,尚不能使用该用户的账号登录系统。

范例:

useradd mingming #以默认方式建立普通用户

useradd –u 1005 –g 1002 –G mingming –e 2024-08-01  tongtong

useradd –r –s /sbin/nologin  mk #建立系统用户

上述示例的执行效果如图4-4所示。

4.2.修改密码命令

格式:passwd [选项] [用户名]

passwd命令的选项如表4-4所示。

范例:

passwd mingming #设置密码(密码规则‌)

passwd #修改当前用户密码

passwd -S mingming #查看密码状态

passwd -l mingming #锁定账户密码

passwd -u mingming #解锁账户密码

passwd -i 2 mingming #设置账户到期2天后失效

passwd -x 20 mingming #设置20天内必须修改密码

passwd -d mingming #删除账户密码

4.3.修改用户属性命令

格式:usermod [选项] <用户名>

usermod命令的选项如表4-5所示。

范例

usermod –u 1010 tongtong #修改UID

usermod –l tong2 tongtong #修改用户名

usermod –d /home/tong2 tong2 #修改主目录

usermod –e 2024-8-21 tong2 #修改有效期

usermod –f 10 tong2 #设置密码过期后缓冲天数

4.4.删除用户命令

格式:userdel [选项] <用户名>

userdel命令的选项如表4-6所示。

范例

userdel tong2 #仅删除用户

userdel –r mingming #删除用户及主目录等

5.组用户管理

设置组账户的主要目的是便于权限的统一组织和分配‌。需要注意:组账号不能登录计算机。

5.1.组账户分类

组账户按性质划分为:系统组和私有组。其区别如图4-5所示。

超级用户可以根据需要,建立组账户,向组中添加成员;另外,每当新建用户时,系统默认会创建一个和用户名完全相同的私有组。

5.2.组账户管理文件

组账户被创建后,会在/etc/group文件和/etc/gshadow文件中增加相应组账户的记录。对组账户的设置和修改会改变这两个文件的内容。文件中的每一行对应一个组账户,每个组账户包含4个字段,字段之间用冒号“:”隔开。

文件内容如图4-6所示。

字段的含义如图4-7所示。

5.3.组账户管理命令

5.3.1.新建组命令

格式:groupadd [选项] <组账户名>

groupadd命令的选项如表4-7所示。

范例

groupadd AI24 #用系统默认设置建立普通用户组

groupadd –g 1020 AI25 #用指定GID建立普通用户组

groupadd –r AI26 #建立系统用户组

上述示例的执行效果如图4-8所示。

5.3.2.修改组属性命令

格式:groupmod [选项] <组账户名>

groupmod命令的选项如表4-8所示。

范例

groupmod –g 1010 AI25 #把组账户AI25的GID设置为1010

groupmod –n CS24 AI24 #把组账户AI24的组名设置为CS24

上述命令的执行效果如图4-9所示。

5.3.3.删除组账户命令

格式:groupdel <组账户名>

范例:

groupdel CS24 #删除组账户。

执行效果如图4-10所示。

注意

被删除的组账号必须是存在的;如果组账户是某个用户的主组,则需要使用带f选项的命令,但不建议使用‌

5.3.4.修改组账户命令

格式:gpasswd [选项] <组账户名>

gpasswd命令的选项如表4-9所示。

范例

gpasswd AI25 #给组账户AI25设置密码

gpasswd –A sjh AI25 #把sjh用户设置为AI25组的管理员

gpasswd –a lxn AI25 #添加lxn用户为AI25组的成员

gpasswd –d lxn AI25 #把lxn用户从AI25组中删除

6.账户相关的其他命令

6.1.id命令

使用id命令可以查看一个用户的UID(用户ID)和GID(组ID)。若查看当前用户的UID和GID,则不要输入用户名。

格式:id [选项] [用户名]

id命令的选项如表4-10所示。

范例:

id sjh #查看sjh用户的UID和所有GID,以及对应的用户名和组名

id -u sjh #查看sjh的UID

id -g sjh #查看sjh的GID

id -G sjh #查看sjh用户所属组的GID

id -nG sjh #查看sjh用户所属组的组名

上述示例的执行效果如图4-11所示。

6.2.whoami命令

whoami命令用于显示当前用户的用户名。

格式:whoami

执行效果如图4-12所示。

6.3.su命令

su命令用于切换用户身份,使当前用户暂时拥有目标用户的权限。su命令的格式和用法请参照图2-4‌中的介绍。但在openEuler(一个国产的操作系统)中,管理员用户可以执行su命令,而新创建的普通用户则不能执行,如图4-13所示。

原因在于,管理员用户被加入wheel组,而wheel组中的用户拥有运行所有命令的权限(包括执行su命令)。可以使用4.2.3节中的gpasswd命令把普通用户加入到wheel组,使普通用户也拥有执行su命令的权限,如图4-14所示。

6.4.newusers命令

newusers命令用于读取存储有用户名、明文密码等用户信息的文件‌,并使用此信息来更新一组现有用户或创建新用户。

格式:newusers [选项] <文件名>

newusers命令的选项如表4-11所示。

执行效果如图4-15所示。

如图4-15所示,newusers命令根据预设文件的内容一次创建了4个用户;密码的第一个字段是“6”,代表系统默认使用SHA512加密方法;因为本例中n_user.txt是在root用户的主目录/root下创建的,所以在此使用了相对路径。

6.5.chpasswd命令

chpasswd命令用于从系统的标准输入读入用户名和密码,并利用这些信息更新系统中已存在的用户的密码;也可以读取包含用户名和密码的文件,用chpasswd命令批量修改用户密码。

格式:chpasswd [选项]

chpasswd命令的选项如表4-12所示。

举例1:

echo s2023082201:AI_082201 | chpasswd -m #提供密码的格式必须为“用户名:密码”

执行结果如图4-16所示。

举例2:

chpasswd –m #批量修改多个用户的密码

执行结果如图4-17所示。

举例3:

cat n_pws.txt | chpasswd -c SHA256 #读取文件中的用户名和密码,批量修改用户密码

执行结果如图4-18所示。

注意

普通用户默认没有使用chpasswd的权限,但是可以通过sudo命令执行。获得执行sudo命令权限的方法请参考本小节关于su命令的介绍。

7.图形界面下的账户管理

在为OpenEuler安装ukui图形界面后,可以通过图形界面的账户管理程序进行基本的账户管理,如新建用户、修改账号密码、更改账户类型、删除用户等。

7.1.打开账户管理程序

在OpenEuler的图形界面中,通过逐步单击“开始菜单”→“设置”→“账户”,打开“账户信息”界面。

在该界面下可以进行添加用户、删除用户、修改密码、更改账户类型、设置用户组等操作,其效果与在字符界面中执行命令的效果一致。

7.2.新建用户

在图形界面下创建用户账户,相当于在字符界面下执行不带选项的useradd命令和passwd命令,即生成的用户ID、主目录、所属组、登录Shell等都是系统默认值。

7.3.修改密码

在“账户信息”窗口中,单击某个用户后面的“修改密码”将打开“修改密码”对话框,按系统提示完成密码的修改。

7.4.更改账户类型

在账户管理程序中,用户可以是“管理员用户”或“标准用户”。在“账户信息”窗口中,单击用户后面的“账户类型”将打开“用户类型”对话框,可根据需要更改账户类型。

7.5.删除用户

在“账户信息”窗口中,单击某个用户右侧最后的“删除”将打开一个删除方式选择对话框,可根据需要选择删除方式。

7.6.设置用户组

在账户管理程序中,还可以对用户组进行编辑、添加和删除。

注意

本节的所有操作之后都会弹出“授权”对话框,必须在输入root密码后单击“授权”按钮才能完成相关操作。


8.总结

以上便是本篇博客的主要内容,主要讲述了Linux操作系统 -----(4.用户账户及组账户管理)的相关内容,希望对大家有所帮助。(还有就是本篇博客主要使用了国产的OpenEuler作为例子,其他的操作系统和其操作大差不差,希望大家有所辨别,不要盲目的操作,要学会举一反三,灵活运用我们学习的相关内容)。相信大家会有所收获的,还有就是博主主要参考教材,没有充分的实践操作,希望大家可以实践的操作一下,只有自己操作过,我们才会真正的理解和明白知识点,才可以有一个深刻的记忆!后续博主会再接再厉,尽量全部实践一遍,谢谢大家的浏览,我们下一期博客再见!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值