千家信息网

Linux用户账号和组的管理

发表于:2025-02-03 作者:千家信息网编辑
千家信息网最后更新 2025年02月03日,本文以Linux系统为例,为大家分析如何在Linux系统中用命令管理用户账号和组,阅读完整文相信大家对管理用户账号和组命令的使用有了一定的认识。一、管理用户账号1、用户账号概述Linux基于用户身份对
千家信息网最后更新 2025年02月03日Linux用户账号和组的管理

本文以Linux系统为例,为大家分析如何在Linux系统中用命令管理用户账号和组,阅读完整文相信大家对管理用户账号和组命令的使用有了一定的认识。

一、管理用户账号

1、用户账号概述

Linux基于用户身份对资源访问进行控制。

2、用户账号管理

1)用户账号

  • 超级用户(root);

  • 普通用户;

  • 程序用户;

  • UID(User IDentify)用户标识号;
①用户账号文件/etc/passwd

/etc/passwd文件用于保存用户名称、宿主目录、登录Shell等基本信息;每一行对应一个用户的账号记录。如下图:

②用户账号文件/etc/shadow

/etc/shadow文件用于保存用户的密码、账号有效期等信息,每一行对应一个用户的密码记录。如下图:

3、添加用户账号

添加用户账号的命令及常用选项格式如下:

应用举例:

[root@centos01 ~]# useradd -d /bob -g root -G root bob[root@centos01 ~]# tail -2 /etc/passwddhcpd:x:177:177:DHCP server:/:/sbin/nologinbob:x:1001:0::/bob:/bin/bash[root@centos01 ~]# useradd -M -s /sbin/nologin tom[root@centos01 ~]# tail -2 /etc/passwdbob:x:1001:0::/bob:/bin/bashtom:x:1002:1002::/home/tom:/sbin/nologin

4、设置/更改用户密码passwd

设置/更改用户密码的基本命令格式语法及常用选项如下:

应用举例:

[root@centos01 ~]# passwd bob  更改用户 bob 的密码 。新的 密码:  无效的密码: 密码未通过字典检查 - 过于简单化/系统化重新输入新的 密码:      passwd:所有的身份验证令牌已经成功更新。[root@centos01 ~]# passwd -l bob    锁定用户 bob 的密码 。passwd: 操作成功[root@centos01 ~]# passwd -S bob  bob LK 2020-01-11 0 99999 7 -1 (密码已被锁定。)[root@centos01 ~]# passwd -u bob   解锁用户 bob 的密码。passwd: 操作成功[root@centos01 ~]# passwd -S bob      bob PS 2020-01-11 0 99999 7 -1 (密码已设置,使用 SHA512 算法。)[root@centos01 ~]# passwd -d bob      清除用户的密码 bob。passwd: 操作成功[root@centos01 ~]# userdel -r bob    [root@centos01 ~]# tail -2 /etc/passwddhcpd:x:177:177:DHCP server:/:/sbin/nologintom:x:1002:1002::/home/tom:/sbin/nologin

5、用户账号的初始配置文件

文件来源于新建用户账户时,从/etc/skel目录中复制而来;主要的用户初始配置文件如下:

  • ~/.bash_profile:每次登录时执行。

  • ~/.bashrc:每次进入新Bash环境时执行。

  • ~/.bash_logout:每次退出登录时执行。

二、管理组账号

1、组账号概述

  • 基本组(私有组);

  • 附加组(公共组);

  • GID:组标识号

1)组账号文件/etc/group

/etc/group文件用于保存组账号基本信息;如下所示:

[root@centos01 ~]# cat /etc/grouproot:x:0:bin:x:1:daemon:x:2:sys:x:3:adm:x:4:tty:x:5:............         

2)组账号文件/etc/gshadow

/etc/gshadow文件用于保存组账号的密码信息;如下所示:

[root@centos01 ~]# cat /etc/gshadowroot:::bin:::daemon:::sys:::adm:::tty:::............         

2、添加组账号groupadd

添加组账号命令的基本格式如下:

应用举例:

[root@centos01 ~]# groupadd -g 200 accp[root@centos01 ~]# tail -3 /etc/grouptcpdump:x:72:test:x:1000:accp:x:200:[root@centos01 ~]# groupadd benet[root@centos01 ~]# tail -3 /etc/groupdhcpd:x:177:tom:x:1002:benet:x:1003:

3、添加、删除组成员gpasswd

设置组账号密码、添加/删除组成员;命令的基本格式及常用选项如下:

应用举例:

[root@centos01 ~]# gpasswd -a bob benet正在将用户"bob"加入到"benet"组中[root@centos01 ~]# tail -2 /etc/grouptom:x:1002:benet:x:1003:bob[root@centos01 ~]# gpasswd -M tom,lisi benet   [root@centos01 ~]# tail -2 /etc/groupbenet:x:1003:tom,lisilisi:x:1004:[root@centos01 ~]# gpasswd -d tom benet 正在将用户"tom"从"benet"组中删除[root@centos01 ~]# tail -2 /etc/groupbenet:x:1003:lisilisi:x:1004:

4、删除组账号groupdel

删除组账号命令的基本格式如下:

应用举例:

[root@centos01 ~]# groupdel benet  

5、添加用户账号时指定组

useradd命令中的"-g"选项指定用户的基本组名(或GID号);"-G"选项指定用户的附加组名(或GID号)。

应用举例:

[root@centos01 ~]# useradd -d /bob -g root -G root bob[root@centos01 ~]# tail -2 /etc/passwddhcpd:x:177:177:DHCP server:/:/sbin/nologinbob:x:1001:0::/bob:/bin/bash

6、查询账号信息

1)id命令

id用于查询用户身份标识;命令基本语法格式如下:

应用举例:

[root@centos01 ~]# id bob    uid=1003(bob) gid=0(root) 组=0(root),1005(benet)

2)groups命令

groups命令用于查询用户所属的组;命令基本语法格式如下:

应用举例:

[root@centos01 ~]# groups bob  bob : root benet

3)finger命令

finger命令用于查询用户账号的详细信息;命令基本语法格式如下:

4)users、w和who命令

users、w和who命令用于查询已登录到主机的用户信息。应用举例如下:

[root@centos01 ~]# usersroot[root@centos01 ~]# w 01:57:23 up 53 min,  1 user,  load average: 0.00, 0.01, 0.01USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHATroot     pts/0    192.168.100.254  01:04    3.00s  0.05s  0.00s w[root@centos01 ~]# [root@centos01 ~]# whoroot     pts/0        2020-01-17 01:04 (192.168.100.254)

关于Linux用户账号和组的管理就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

0