Linux用户与组管理(小白的“升级打怪”成长之路)

目录

一、用户与组概述

1、用户类型

1)root用户

2)系统用户(程序用户)

3)普通用户

2、用户和用户组关系

3、用户和用户组配置文件

1)/etc/passwd

2)/etc/shadow

3)/etc/group

4)/etc/gshadow

5)/etc/login.defs

6)/etc/skel目录

二、用户管理

1、useradd命令

2、userdel

3、passwd命令

4、usermod命令

5、chpasswd命令

6、chage命令

三、组管理

1、groupadd命令

2、groupdel命令

3、groupmod命令

4、gpasswd命令

四、用户切换与sudo提权

1、su命令

2、sudo命令

五、用户登录信息查看

1、id命令

2、w命令

3、who命令

4、whoami命令

5、finger命令

6、last命令

7、lastb命令

8、lastlog命令


一、用户与组概述

与windows类似,Linux也有用户和用户组的概念。在Linux系统中,每次登录系统都必须以一个用户的身份登录,并且登录后的权限也会根据用户身份来确定。 每一个进程在执行时,也会有其用户,该用户也和进程所能控制的资源有关。Linux系统下的每一个目录、文件,都会有其属于的用户和用户组,我们称其为属主和属组。由此可见,用户和用户组与Linux系统的运行息息相关。在实际操作使用系统时,我们往往较多关注用户与用户组。

在Linux系统中,每个用户都有自己的用户ID,称为UID,每个用户组也有自己的用户组ID,称为GIDUID和GID在Linux系统中是不可重复的。Linux系统就是通过UID和GID来对用户和组进行管理的,而对于管理员来说,往往会设置用户名和组名,这样使得用户和用户组的使用管理更人性化。

1、用户类型

1)root用户

root用户时UID和GID都等于0的用户,是Linux系统中的“上帝”,拥有最大的权限。如果深入了解Linux系统,会发现root用户真的拥有很多特权,比如:无视Linux对权限的设置而强行读、写、执行文件,切换其他用户登录不需要密码,可以强行切换到已经存在的用户,只有root可以为普通用户修改密码等等。

2)系统用户(程序用户)

系统用户通常用于运行服务,但是此用户无家目录,也不能用于登录系统。例如,在yum安装apache、nginx等服务后,就会自动创建apache和nginx的用户和同名用户组。在CentOS6系统中,系统用户的UID范围是1-499,在CentOS7系统中,系统用户的ID是1-999

3)普通用户

普通用户只能由root用户创建,该用户拥有家目录,并且可以登录,该用户的权限由root分配。普通用户拥有指定的shell环境。

2、用户和用户组关系

在Linux系统中,每个用户必定属于一个主组(基本组),默认情况下属于与其同名的用户组,最多可以有31个附属组,从用户权限的角度看,主组和附属组其实差别不大,用户也会拥有其附属组的组相关权限。

3、用户和用户组配置文件

Linux系统下用户和用户组相关的配置文件主要有以下几个:

1)/etc/passwd

存储用户信息

[root@huang ~]# tail -1 /etc/passwd
huang:x:1000:1000:huang:/home/huang:/bin/bash
(含义)用户名:密码占位符:用户ID:组ID:用户描述信息:用户家目录:登录shell
2)/etc/shadow

该配置文件保存了用户的密码信息

[root@huang ~]# tail -2 /etc/shadow
huang:$6$W4EwW2dVgSLw/nlo$y3SEEWWBP7pit4GJPYro9RnxCPqsA0n810At9AmcjU05rGeOo/rGz/jW0NOuIvror4rT9XVD/LbK0TDsUhMuJ1::0:99999:7:::
user1:!!:20223:0:99999:7:::
#用户名:密码:用户创建时间:密码最短使用期限:密码最长使用期限:密码过期提醒时间:密码过期后的宽容时间:密码过期时间:没用

注意: !! 表示该用户没有设置密码。

! 表示用户密码被锁定,该用户无法登录操作系统

3)/etc/group

该文件保存了用户组的信息

[root@huang ~]# tail -2 /etc/group
huang:x:1000:huang
user1:x:1001:
#组名:占位符:组ID:非基本组的组成员
4)/etc/gshadow

该文件保存了用户组的密码

5)/etc/login.defs

该文件可以设置密码过期时间,密码最大长度限制等内容。影响的是新创建的用户密码信息

[root@huang ~]# cat /etc/login.defs
#
# Please note that the parameters in this configuration file control the
# behavior of the tools from the shadow-utils component. None of these
# tools uses the PAM mechanism, and the utilities that use PAM (such as the
# passwd command) should therefore be configured elsewhere. Refer to
# /etc/pam.d/system-auth for more information.
#
​
# *REQUIRED*
#   Directory where mailboxes reside, _or_ name of file, relative to the
#   home directory.  If you _do_ define both, MAIL_DIR takes precedence.
#   QMAIL_DIR is for Qmail
#
#QMAIL_DIR      Maildir
MAIL_DIR        /var/spool/mail
#MAIL_FILE      .mail
​
# Password aging controls:
#
#       PASS_MAX_DAYS   Maximum number of days a password may be used.
#       PASS_MIN_DAYS   Minimum number of days allowed between password changes.
#       PASS_MIN_LEN    Minimum acceptable password length.
#       PASS_WARN_AGE   Number of days warning given before a password expires.
#
PASS_MAX_DAYS   99999
PASS_MIN_DAYS   0
PASS_MIN_LEN    5
PASS_WARN_AGE   7
​
#
# Min/max values for automatic uid selection in useradd
#
UID_MIN                  1000
UID_MAX                 60000
# System accounts
SYS_UID_MIN               201
SYS_UID_MAX               999
​
#
# Min/max values for automatic gid selection in groupadd
#
GID_MIN                  1000
GID_MAX                 60000
# System accounts
SYS_GID_MIN               201
SYS_GID_MAX               999
​
#
# If defined, this command is run when removing a user.
# It should remove any at/cron/print jobs etc. owned by
# the user to be removed (passed as the first argument).
#
#USERDEL_CMD    /usr/sbin/userdel_local
​
#
# If useradd should create home directories for users by default
# On RH systems, we do. This option is overridden with the -m flag on
# useradd command line.
#
CREATE_HOME     yes
​
# The permission mask is initialized to this value. If not specified, 
# the permission mask will be initialized to 022.
UMASK           077
​
# This enables userdel to remove user groups if no members exist.
#
USERGROUPS_ENAB yes
​
# Use SHA512 to encrypt password.
ENCRYPT_METHOD SHA512
​
6)/etc/skel目录

作用: 用户创建时默认文件的模版目录

[root@huang ~]# cd /etc/skel
[root@huang skel]# ls -a
.  ..  .bash_logout  .bash_profile  .bashrc  .mozilla

二、用户管理

1、useradd命令

创建一个新用户或更新默认新用户信息

语法:

useradd [选项] 用户名

选项:

-u    :指定用户的UID。
​
-d    :指定用户的家目录,而不采用默认创建在/home中的目录。不能是已存在的目录。
​
-s    :指定用户的登录shell
​
-M    :创建用户时不创建家目录
​
-g    :创建用户时指定基本组,不会创建用户的同名组
​
-G    :创建用户时指定附加组,依然会创建同名组
​
-e    :创建用户时,指定用户的失效时间

案例:

1、指定用户的UID

[root@huang skel]# useradd -u 9 user2
[root@huang skel]# tail -3 /etc/passwd
huang:x:1000:1000:huang:/home/huang:/bin/bash
user1:x:1001:1001::/home/user1:/bin/bash
user2:x:9:1002::/home/user2:/bin/bash

2、指定用户家目录

[root@huang skel]# useradd -d /user3 user3
[root@huang skel]# tail -4 /etc/passwd
huang:x:1000:1000:huang:/home/huang:/bin/bash
user1:x:1001:1001::/home/user1:/bin/bash
user2:x:9:1002::/home/user2:/bin/bash
user3:x:1002:1003::/user3:/bin/bash
[root@huang skel]# useradd -d /user3 user4
useradd:警告:此主目录已经存在。
不从 skel 目录里向其中复制任何文件。
[root@huang skel]# tail -5 /etc/passwd
huang:x:1000:1000:huang:/home/huang:/bin/bash
user1:x:1001:1001::/home/user1:/bin/bash
user2:x:9:1002::/home/user2:/bin/bash
user3:x:1002:1003::/user3:/bin/bash
user4:x:1003:1004::/user3:/bin/bash

3、指定用户的登录shell

root@huang skel]# tail -5 /etc/passwd
user1:x:1001:1001::/home/user1:/bin/bash
user2:x:9:1002::/home/user2:/bin/bash
user3:x:1002:1003::/user3:/bin/bash
user4:x:1003:1004::/user3:/bin/bash
user5:x:1004:1005::/home/user5:/sbin/nologin

4、创建用户时不创建家目录

[root@huang skel]# useradd -M user6
[root@huang skel]# tail -5 /etc/passwd
user2:x:9:1002::/home/user2:/bin/bash
user3:x:1002:1003::/user3:/bin/bash
user4:x:1003:1004::/user3:/bin/bash
user5:x:1004:1005::/home/user5:/sbin/nologin
user6:x:1005:1006::/home/user6:/bin/bash
[root@huang skel]# cd
[root@huang ~]# cd /home
[root@huang home]# ls -a 
.  ..  huang  user1  user2  user5

5、创建程序用户

[root@huang home]# useradd -M -s /sbin/nologin user7
[root@huang home]# tail -5 /etc/passwd
user3:x:1002:1003::/user3:/bin/bash
user4:x:1003:1004::/user3:/bin/bash
user5:x:1004:1005::/home/user5:/sbin/nologin
user6:x:1005:1006::/home/user6:/bin/bash
user7:x:1006:1007::/home/user7:/sbin/nologin
[root@huang home]# ls -a
.  ..  huang  user1  user2  user5

6、创建用户时指定基本组

[root@huang home]# useradd -g user7 user8
[root@huang home]# useradd -g user7 user9
[root@huang home]# tail -5 /etc/passwd
user5:x:1004:1005::/home/user5:/sbin/nologin
user6:x:1005:1006::/home/user6:/bin/bash
user7:x:1006:1007::/home/user7:/sbin/nologin
user8:x:1007:1007::/home/user8:/bin/bash
user9:x:1008:1007::/home/user9:/bin/bash

7、创建用户时指定附加组

[root@huang home]# useradd -G user7 user10
[root@huang home]# cat /etc/group |tail -9
huang:x:1000:huang
user1:x:1001:
user2:x:1002:
user3:x:1003:
user4:x:1004:
user5:x:1005:
user6:x:1006:
user7:x:1007:user10
user10:x:1009:
[root@huang home]# cat /etc/passwd |tail -9
user2:x:9:1002::/home/user2:/bin/bash
user3:x:1002:1003::/user3:/bin/bash
user4:x:1003:1004::/user3:/bin/bash
user5:x:1004:1005::/home/user5:/sbin/nologin
user6:x:1005:1006::/home/user6:/bin/bash
user7:x:1006:1007::/home/user7:/sbin/nologin
user8:x:1007:1007::/home/user8:/bin/bash
user9:x:1008:1007::/home/user9:/bin/bash
user10:x:1009:1009::/home/user10:/bin/bash

8、创建用户时,指定用户的失效时间。

[root@huang home]# useradd -e 2025-5-20 user11
[root@huang home]# tail -5 /etc/shadow
user7:!!:20223:0:99999:7:::
user8:!!:20223:0:99999:7:::
user9:!!:20223:0:99999:7:::
user10:!!:20223:0:99999:7:::
user11:!!:20223:0:99999:7::20228:
[root@huang home]# date -d "1970-01-01 + 20223 days"
2025年 05月 15日 星期四 00:00:00 CST
#第三列显示的是最后一次密码修改的时间,以1970年1月1日起算,按天数为单位,可以用命令[date -d "1970-01-01 + 20223 days”]转换#

2、userdel

删除用户账户和相关文件

语法:

userdel [选项] 用户名

选项:

-r, --remove    :用户主目录中的文件将随用户主目录和用户邮箱一起删除。在其它文件系统中的文件必须手                   动搜索并删除。

案例:

删除用户的同时删除在创建时产生的文件。

[root@huang mail]# userdel -r user1

3、passwd命令

更改用户的密码。root用户使用时,可以更改所有用户的密码。普通用户使用时,只能更改本身的密码。

语法:

passwd [选项] 用户名
[root@huang ~]# useradd user1
[root@huang ~]# passwd user1
更改用户 user1 的密码 。
新的 密码:
无效的密码: 密码是一个回文
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。

选项:

-l(小写L), --lock     :锁定用户密码。
-S         :查看密码的锁定状态
-u,--unlock      :解除用户密码的锁定状态
-d, --delete     :将用户密码清空
-e,--expire     :直接让密码失效,下次登录时必须更改
--stdin    :非交互式修改密码。

案例:

1、设置用户密码

[root@huang ~]# passwd user1
更改用户 user1 的密码 。
新的 密码:
无效的密码: 密码是一个回文
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。
​
#用户输入passwd命令后直接回车,表示更改本身的密码。

2、锁定用户密码

[root@huang ~]# passwd -l user1
锁定用户 user1 的密码 。
passwd: 操作成功

3、查看密码的锁定状态

[root@huang ~]# tail -1 /etc/shadow
user1:!!$6$e3V9TK2X$sIZrQpB5aocKElcSQ90X6GBFMzDsAD4QLMYF5rbf0Vxqk5IFnSYs2gqb3xV6QckusYTUUWPgtfsHwktiSuZVL1:20223:0:99999:7:::

4、解除密码的锁定状态

[root@huang ~]# passwd -u user1
解锁用户 user1 的密码。
passwd: 操作成功

5、清空用户密码

[root@huang ~]# passwd -d user1
清除用户的密码 user1。
passwd: 操作成功
[root@huang ~]# tail -1 /etc/shadow
user1::20223:0:99999:7:::

6、强制密码失效

[root@huang ~]# passwd -e user1
正在终止用户 user1 的密码。
passwd: 操作成功
但登录用户时仍然要输入原来的密码,之后重设密码,密码不能与原来相同

7、非交互式修改用户密码

[root@huang ~]# echo 2 | passwd --stdin user1
更改用户 user1 的密码 。
passwd:所有的身份验证令牌已经成功更新。

4、usermod命令

修改一个用户账户的属性。

语法:

 usermod [选项] 用户名

选项:

-u  :修改用户的UID。
​
-d  :修改用户的家目录,而不采用默认创建在/home中的目录。
​
-s  :修改用户的登录shell
​
-g  :修改用户基本组
​
-G  :修改用户附加组
​
-e  :修改用户的失效时间。
​
-a, --append  :追加用户到一个附加组
​
-L, --lock  :锁定用户
​
-U, --unlock  :解锁用户

案例:(此命令-U、-L不能配合使用)

1、锁定用户

[root@huang ~]# usermod -L user1

2、解锁账户

[root@huang ~]# usermod -U user1

3、追加用户到一个附加组

[root@huang ~]# useradd user2
[root@huang ~]# usermod -a user2 -G user1
[root@huang ~]# id user2
uid=1002(user2) gid=1002(user2) 组=1002(user2),1001(user1)

5、chpasswd命令

批量更新密码。

语法:

chpasswd [文本]

案例:

批量修改用户密码

#创建用户密码的文本文件
vim 2.txt
user1:123.com
user2:1234.com
#修改密码
[root@huang ~]# cat 2.txt | chpasswd

6、chage命令

更改用户密码过期信息,影响的时现有用户。

语法:

chage [选项] 用户名

选项:

-l, --list   :显示账户年龄信息
-m, --mindays   :修改密码的最短使用期限
-M, --maxdays   :修改密码的最长使用期限
-W, --warndays   :修改密码过期的提示时间

案例:

1、查看用户的密码信息

[root@huang ~]# chage -l user1
最近一次密码修改时间                                    :5月 15, 2025
密码过期时间                                    :从不
密码失效时间                                    :从不
帐户过期时间                                            :从不
两次改变密码之间相距的最小天数          :0
两次改变密码之间相距的最大天数          :99999
在密码过期之前警告的天数        :7

2、修改密码最短使用期限

[root@huang ~]# chage -m 3 user1
[root@huang ~]# chage -l user1
最近一次密码修改时间                                    :5月 15, 2025
密码过期时间                                    :从不
密码失效时间                                    :从不
帐户过期时间                                            :从不
两次改变密码之间相距的最小天数          :3
两次改变密码之间相距的最大天数          :99999
在密码过期之前警告的天数        :7

三、组管理

1、groupadd命令

创建新组

语法:

groupadd [选项] 组名

选项:

-g, --gid GID    :指定 GID

案例:

创建新组

[root@huang ~]# groupadd g1
[root@huang ~]# tail -1 /etc/group
g1:x:1008:
[root@huang ~]# groupadd -g 12345 g2
[root@huang ~]# tail -1 /etc/group
g2:x:12345:

2、groupdel命令

删除组

语法:

groupdel [选项] 组名

选项:

-f   :强制删除,但不建议

案例:

删除组

[root@huang ~]# groupdel g2
[root@huang ~]# tail -1 /etc/group
g1:x:1008:

3、groupmod命令

修改组属性

语法:

groupmod [选项] 组名

选项:

-g, --gid GID   :修改GID

案例:

修改组的GID

[root@huang ~]# tail /etc/group
gnome-initial-setup:x:983:
sshd:x:74:
slocate:x:21:
avahi:x:70:
postdrop:x:90:
postfix:x:89:
ntp:x:38:
tcpdump:x:72:
huang:x:1000:huang
g1:x:1001:
[root@huang ~]# groupmod -g 24443 g1
[root@huang ~]# tail /etc/group
gnome-initial-setup:x:983:
sshd:x:74:
slocate:x:21:
avahi:x:70:
postdrop:x:90:
postfix:x:89:
ntp:x:38:
tcpdump:x:72:
huang:x:1000:huang
g1:x:24443:

4、gpasswd命令

向组内添加成员

语法:

gpasswd [选项] 组名

选项:

-a, --add USER    :向组 GROUP 中添加用户 USER,单个添加
-M, --members USER,...    :设置组 GROUP 的成员列表,批量添加,**覆盖原有成员**

案例:

1)单个添加

[root@huang ~]# tail /etc/group
ntp:x:38:
tcpdump:x:72:
huang:x:1000:huang
g1:x:24443:
g2:x:24444:
g3:x:24445:
g4:x:24446:
user1:x:1001:
user2:x:1002:
user3:x:1003:
[root@huang ~]# gpasswd -a user1 g1
正在将用户“user1”加入到“g1”组中
[root@huang ~]# tail /etc/group
ntp:x:38:
tcpdump:x:72:
huang:x:1000:huang
g1:x:24443:user1
g2:x:24444:
g3:x:24445:
g4:x:24446:
user1:x:1001:
user2:x:1002:
user3:x:1003:

2)批量添加

[root@huang ~]# gpasswd -M user2,user3 g1
[root@huang ~]# tail /etc/group
ntp:x:38:
tcpdump:x:72:
huang:x:1000:huang
g1:x:24443:user2,user3
g2:x:24444:
g3:x:24445:
g4:x:24446:
user1:x:1001:
user2:x:1002:
user3:x:1003:

四、用户切换与sudo提权

1、su命令

切换用户,从root用户切换到普通用户不需要密码。普通用户之间切换需要密码。

语法:

su [-] 用户名

选项:

-, -l, --login    :切换目录用户的登录shell
-S      :指定shell切换

su 与 su - 的对比

#su 不会切换目标用户的登录shell
#su -会切换到目标用户的登录shell
[root@huang ~]# su huang
[huang@huang root]$ pwd
/root
[huang@huang root]$ mkdir 11
mkdir: 无法创建目录"11": 权限不够
[huang@huang root]$ cd
[huang@huang ~]$ exit
exit
[root@huang ~]# pwd
/root
[root@huang ~]# su - huang
上一次登录:四 5月 15 19:25:32 CST 2025pts/0 上
[huang@huang ~]$ pwd
/home/huang

2、sudo命令

sudo用来进行普通用户提升权限

语法:

sudo [选项] 参数

选项:

i切换到指定用户的登录shell。采用本身的密码提供验证。

注意:sudo -i root,切换到root,必须存在于sudoers文件中的普通用户才有权限。

案例:

提升普通用户使用命令的权限

[user1@huang ~]$ ifconfig ens34 192.168.1.2/24
SIOCSIFADDR: 不允许的操作
SIOCSIFFLAGS: 不允许的操作
SIOCSIFNETMASK: 不允许的操作
[user1@huang ~]$ sudo ifconfig ens34 192.168.1.2/24
[user1@huang ~]$ ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.58.134  netmask 255.255.255.0  broadcast 192.168.58.255
        inet6 fe80::20c:29ff:fe45:9119  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:45:91:19  txqueuelen 1000  (Ethernet)
        RX packets 3867  bytes 343183 (335.1 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 6433  bytes 6901194 (6.5 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
​
ens34: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.2  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 fe80::20c:29ff:fe45:9123  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:45:91:23  txqueuelen 1000  (Ethernet)
        RX packets 253  bytes 17510 (17.0 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 33  bytes 4479 (4.3 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
​

五、用户登录信息查看

1、id命令

查看用户的基本属性,用户UID,基本组及附加组

语法:

id [OPTION]... [USER]

案例:

[root@huang ~]# id user1
uid=1001(user1) gid=1001(user1) 组=1001(user1)

2、w命令

查看当前系统登录详情

语法:

 w [options]

选项:

-h    :不显示表头

案例:

[root@huang ~]# w
 20:16:36 up 27 min,  3 users,  load average: 0.00, 0.01, 0.05
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
root     :0       :0               19:49   ?xdm?  17.12s  0.15s /usr/libexec/gnome-s
root     pts/0    :0               19:49   27:08   0.01s  0.01s bash
root     pts/1    192.168.58.1     19:59    4.00s  0.02s  0.00s w

3、who命令

显示当前系统登录的摘要信息

选项:

-b, --boot   :上次系统启动时间
-u, --users   :列出已登录的用户

案例:

1)查看系统的启动时间

[root@huang ~]# who -b
         系统引导 2025-05-15 19:48

2)查看系统登录用户

[root@huang ~]# who -u
root     :0           2025-05-15 19:49   ?          2162 (:0)
root     pts/0        2025-05-15 19:49 00:32        2772 (:0)
root     pts/1        2025-05-15 19:59   .          3759 (192.168.58.1

4、whoami命令

显示当前登录用户的名称

语法:

whoami 

案例:

[root@huang ~]# whoami
root

5、finger命令

查看用户登录信息,默认系统不存在该命令,需要安装

[root@localhost ~]# yum install -y finger

语法:

finger 

案例:

[root@localhost ~]# finger 
Login     Name       Tty      Idle  Login Time   Office     Office Phone   Host
root      root      *:0             Apr  8 19:28                           (:0)
root      root       pts/0      11  Apr  8 19:28                           (:0)
root      root       pts/1       7  Apr  8 19:35                           (192.168.115.1)
root      root       pts/2          Apr  8 19:30                           (192.168.115.1)
​

6、last命令

last命令可以查看登录用户列表,last命令实际上从日志文件/var/log/wtmp读取信息并显示用户最近的登录列表。此命令普通用户也可以执行。

语法:

last

案例:

[root@huang ~]# last
root     pts/1        192.168.58.1     Thu May 15 19:59   still logged in   
root     pts/1        192.168.58.1     Thu May 15 19:50 - 19:59  (00:09)    
root     pts/0        :0               Thu May 15 19:49   still logged in   
root     :0           :0               Thu May 15 19:49   still logged in   
reboot   system boot  3.10.0-1160.el7. Thu May 15 19:48 - 20:17  (00:29)    
root     pts/1        :0               Thu May 15 19:47 - 19:47  (00:00)    
root     :0           :0               Thu May 15 19:47 - down   (00:00)    
root     pts/0        192.168.58.1     Thu May 15 19:08 - down   (00:39)    
reboot   system boot  3.10.0-1160.el7. Thu May 15 19:08 - 19:48  (00:39)    
root     pts/0        :0               Thu May  8 20:20 - crash (6+22:48)   
root     :0           :0               Thu May  8 20:18 - crash (6+22:49)   
reboot   system boot  3.10.0-1160.el7. Thu May  8 20:18 - 19:48 (6+23:30)   
root     pts/0        :0               Thu May  8 18:54 - 19:53  (00:59)    
root     pts/0        :0               Thu May  8 18:53 - 18:54  (00:01)    
root     pts/0        :0               Thu May  8 18:52 - 18:52  (00:00)    
root     pts/0        :0               Thu May  8 18:51 - 18:52  (00:00)    
root     pts/2        192.168.58.1     Thu May  8 18:10 - down   (01:42)    
root     pts/1        192.168.58.1     Thu May  8 17:41 - 19:31  (01:49)    
root     pts/0        :0               Thu May  8 17:38 - 18:51  (01:13)    
root     :0           :0               Thu May  8 17:27 - down   (02:25)    
reboot   system boot  3.10.0-1160.el7. Thu May  8 17:27 - 19:53  (02:26)    
root     pts/1        192.168.58.1     Thu May  8 15:19 - down   (02:07)    
root     pts/0        :0               Thu May  8 15:02 - 17:27  (02:24)    
root     pts/0        :0               Thu May  8 22:58 - 15:02  (-7:-56)   
root     :0           :0               Thu May  8 22:57 - down   (-5:-30)   
reboot   system boot  3.10.0-1160.el7. Thu May  8 22:56 - 17:27  (-5:-29)   
root     :0           :0               Thu May  8 19:07 - crash  (03:49)    
reboot   system boot  3.10.0-1160.el7. Thu May  8 19:06 - 17:27  (-1:-39)   
root     :0           :0               Thu May  8 03:03 - down   (00:10)    
reboot   system boot  3.10.0-1160.el7. Thu May  8 03:02 - 03:13  (00:11)    
reboot   system boot  3.10.0-1160.el7. Wed May  7 23:57 - 03:13  (03:16)    
root     pts/0        :0               Wed May  7 23:26 - 15:35  (-7:-51)   
root     :0           :0               Wed May  7 23:24 - crash  (00:32)    
reboot   system boot  3.10.0-1160.el7. Wed May  7 23:19 - 03:13  (03:53)    
​
wtmp begins Wed May  7 23:19:53 2025

7、lastb命令

lastb命令可以从日志文件/var/log/btmp中读取信息,并显示用户登录失败的记录用于发现系统登录异常。此命令要求root用户才可以执行,lastb可用参数与last命令参数相同。

语法:

last

案例:

[root@huang ~]# lastb
1        :0           :0               Thu May 15 19:47 - 19:47  (00:00)    
1        :0           :0               Thu May 15 19:47 - 19:47  (00:00)    
1        :0           :0               Thu May 15 19:47 - 19:47  (00:00)    
​
btmp begins Thu May 15 19:47:04 2025

8、lastlog命令

统计当前系统中存在用户的登录情况

语法:

lastlog

案例:

root@huang ~]# lastlog
用户名           端口     来自             最后登陆时间
root             pts/1    192.168.58.1     四 5月 15 19:59:44 +0800 2025
bin                                        **从未登录过**
daemon                                     **从未登录过**
adm                                        **从未登录过**
lp                                         **从未登录过**
sync                                       **从未登录过**
shutdown                                   **从未登录过**
halt                                       **从未登录过**
mail                                       **从未登录过**
operator                                   **从未登录过**
games                                      **从未登录过**
ftp                                        **从未登录过**
nobody                                     **从未登录过**
systemd-network                            **从未登录过**
dbus                                       **从未登录过**
polkitd                                    **从未登录过**
libstoragemgmt                             **从未登录过**
colord                                     **从未登录过**
rpc                                        **从未登录过**
saned                                      **从未登录过**
saslauth                                   **从未登录过**
abrt                                       **从未登录过**
setroubleshoot                             **从未登录过**
rtkit                                      **从未登录过**
pulse                                      **从未登录过**
radvd                                      **从未登录过**
chrony                                     **从未登录过**
unbound                                    **从未登录过**
qemu                                       **从未登录过**
tss                                        **从未登录过**
usbmuxd                                    **从未登录过**
geoclue                                    **从未登录过**
gluster                                    **从未登录过**
gdm              :0                        四 5月 15 19:49:00 +0800 2025
rpcuser                                    **从未登录过**
nfsnobody                                  **从未登录过**
gnome-initial-setup                           **从未登录过**
sshd                                       **从未登录过**
avahi                                      **从未登录过**
postfix                                    **从未登录过**
ntp                                        **从未登录过**
tcpdump                                    **从未登录过**
huang            pts/0                     四 5月 15 19:26:56 +0800 2025
user1            pts/1                     四 5月 15 20:07:54 +0800 2025
user2                                      **从未登录过**
user3                                      **从未登录过**

看到感觉有帮助的,动动发财的小手给博主点个赞,你们的支持是我最大的创作动力

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值