zoukankan      html  css  js  c++  java
  • 7.12-7.19 id、w、who、last、lastb、lastlog

    7.12 id:显示用户与用户组的信息

    id命令能够显示指定用户真实有效的用户ID(UID)和组ID(GID)等信息。
     
    id [option] [username]
     
    -g    显示用户组ID
    -G    显示用户所属附加群组的ID
    -n    显示用户,所属群组或附加群组的名称,不显示数字
    -r    显示实际ID
    -u    显示用户ID
     
    [root@doit ~]# id
    uid=0(root) gid=0(root) groups=0(root)
    [root@cs6 ~]# id lewen
    uid=901(lewen) gid=801(sa) groups=801(sa)
     
    [root@cs6 ~]# id lewen
    uid=901(lewen) gid=801(sa) groups=801(sa)
    [root@cs6 ~]# id -g
    0
    [root@cs6 ~]# id -gn
    root
    [root@cs6 ~]# id -u
    0
    [root@cs6 ~]# id -un
    root 

    7.13 w:显示已登录用户信息

        w命令可以显示已经登录系统的用户,并显示用户正在执行的命令。
     
    w [option] [user]
     
    user参数是显示指定用户的信息。
     
    -h    不显示前两行标题信息
    -u    忽略执行程序的名称,以及CPU时间的信息
    -s    使用短输出格式
     
    [root@cs6 ~]# w
    13:16:55 up 19:20,  2 users,  load average: 0.00, 0.00, 0.00
    USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
    root     pts/0    10.0.0.1         13:16    6.00s  0.03s  0.03s -bash
    root     pts/1    10.0.0.1         10:50    0.00s  0.10s  0.03s w
     
    以下是上述范例命令输出结果的格式说明。
    上面的第1行输出依次显示了当前的系统时间、系统从启动到现在已经运行的时间、登录到系统中的用户数和系统平均负载。平均负载是指在lmin、5min、15min内系统的负载状况。
    USER:表示登录系统的用户。
    TTY:表示用户使用的TTY名称。
    FROM:表示用户从哪里登录进来,一般显示远程登录主机的IP地址或主机名。
    LOGIN@:用户登录的日期和时间。
    IDLE:显示终端的空闲时间。
    JCPU:表示该终端上的所有进程及子进程使用系统的总时间。
    PCPU:当前活动进程使用的系统时间。
    WHAT:当前用户执行的进程名称和选项。
     
    [root@cs6 ~]# w -h
    root     pts/0    10.0.0.1         13:16    1:26   0.03s  0.03s -bash
    root     pts/1    10.0.0.1         10:50    0.00s  0.07s  0.00s w -h

    7.14 who:显示已登录用户信息

        who命令能够显示已经登录系统的用户,以及系统的启动时间等信息。
    -a    显示所有信息,相当于-b -d -login -p -r -t -T -u
    -b    显示系统的启动时间
    -d    显示已死的进程
    -H    显示标题,默认不显示
    -l    显示登录进程
     
    [root@cs6 ~]# who
    root     pts/0        2019-05-12 10:34 (10.0.0.1)
    root     pts/1        2019-05-12 10:50 (10.0.0.1)
    [root@cs6 ~]# who -b    #<=显示启动时间。
             system boot  2019-05-11 17:56
    [root@cs6 ~]# who -d
             pts/0        2019-05-12 13:11              2506 id=ts/0  term=0 exit=0
    [root@cs6 ~]# who -l    #<—显示登录的进程
    LOGIN    tty1         2019-05-11 17:56              1483 id=1
    LOGIN    tty2         2019-05-11 17:56              1485 id=2
    LOGIN    tty3         2019-05-11 17:56              1487 id=3
    LOGIN    tty4         2019-05-11 17:56              1489 id=4
    LOGIN    tty5         2019-05-11 17:56              1491 id=5
    LOGIN    tty6         2019-05-11 17:56              1493 id=6
    [root@cs6 ~]# who -H
    NAME     LINE         TIME             COMMENT
    root     pts/1        2019-05-12 10:50 (10.0.0.1)

    显示最全的登录用户的信息

    [root@cs6 ~]# who -H -a
    NAME       LINE         TIME             IDLE          PID COMMENT  EXIT
               system boot  2019-05-11 17:56
               run-level 3  2019-05-11 17:56
    LOGIN      tty1         2019-05-11 17:56              1483 id=1
    LOGIN      tty2         2019-05-11 17:56              1485 id=2
    LOGIN      tty3         2019-05-11 17:56              1487 id=3
    LOGIN      tty4         2019-05-11 17:56              1489 id=4
    LOGIN      tty5         2019-05-11 17:56              1491 id=5
    LOGIN      tty6         2019-05-11 17:56              1493 id=6
               pts/0        2019-05-12 13:11              2506 id=ts/0  term=0 exit=0
    root     + pts/1        2019-05-12 10:50   .          2533 (10.0.0.1)
    一般情况下,who命令的输出格式为:
    名称 [状态] 线路时间 [活动] [进程标识](主机名)
    其中各项的说明如下。
    名称:用户的登录名。
    状态:表明线路对用户是否都是可写的。
    线路:类似于pts/1、pts/2等,此线路标识在/dev目录中可以找到。
    时间:用户登录系统的时间。
    活动:某个用户在自己的线路上最后一次活动发生以来到现在的时间。如果此项是个“.”,就表示一分钟内的线路活动;如果线路保持静止已经超过24小时,或者自从系统启动以来还没有使用过,那么此项标记为“old”。
    进程标识:用户登录Shell的进程id。
    主机名:登录到Linux系统上的客户端机器标识。 

    7.15 users:显示已登录用户

        users命令可以显示已经登录系统的用户。如果是同一用户登录多次,则登录几次就会显示几次用户名。
     
    [root@cs6 ~]# users
    root root

    7.16 whoami:显示当前登录的用户名

        whoami命令用于显示当前登录的用户名,这个命令可以看作英文短句who ami的简写。
    显示当前登录的用户名称例子。
    [root@cs6 ~]# whoami
    root
     

    7.17 last:显示用户登录列表

        last 命令能够从日志文件/var/log/wtmp读取信息并显示用户最近的登录列表。
    显示用户最近登录的列表。
    [root@cs6 ~]# last -10
    root     pts/1        10.0.0.1         Sun May 12 10:50   still logged in   
    root     pts/0        10.0.0.1         Sun May 12 10:34   still logged in   
    root     pts/0        10.0.0.1         Sun May 12 06:23 - 10:25  (04:01)    
    root     pts/1        10.0.0.1         Sat May 11 20:37 - 10:25  (13:47)    
    root     pts/0        10.0.0.1         Sat May 11 17:57 - 20:43  (02:46)    
    reboot   system boot  2.6.32-754.el6.x Sat May 11 17:56 - 13:04  (19:07)    
    root     pts/0        10.0.0.1         Sat May 11 17:08 - down   (00:48)    
    reboot   system boot  2.6.32-754.el6.x Sat May 11 17:07 - 17:56  (00:48)    
    root     pts/1        10.0.0.1         Sat May 11 15:31 - down   (01:35)    
    root     pts/0        10.0.0.1         Sat May 11 12:46 - down   (04:21)    
     
    wtmp begins Sun May  5 23:13:36 2019
     
     
    [root@cs6 ~]# last lewen    # 显示用户登录情况
     
    wtmp begins Sun May  5 23:13:36 2019
     

    7.18 lastb:显示用户登录失败的记录

        lastb命令可以从日志文件/var/log/btmp中读取信息,并显示用户登录失败的记录,用于发现系统登录异常。
     
    -num    指定显示结果的行教*
    -n num
     
    [root@cs6 ~]# lastb
    vagrant  ssh:notty    10.0.0.1         Sun May  5 23:20 - 23:20  (00:00)    
    vagrant  ssh:notty    10.0.0.1         Sun May  5 23:20 - 23:20  (00:00)    
    vagrant  ssh:notty    10.0.0.1         Sun May  5 23:19 - 23:19  (00:00)    
    vagrant  ssh:notty    10.0.0.1         Sun May  5 23:19 - 23:19  (00:00)    
     
    btmp begins Sun May  5 23:19:47 2019

    7.19 lastlog:显示所有用户的最近登录记录

     lastlog命令从日志文件/var/log/lastlog中读取信息,并显示所有用户的最近登录记录,用于查看系统是否有异常登录。  
    显示所有用户的最近登录记录。
     
    [root@cs6 ~]# lastlog
    Username         Port     From             Latest
    root             pts/1    10.0.0.1         Sun May 12 10:50:00 +0800 2019
    bin                                        **Never logged in**
    daemon                                     **Never logged in**
    adm                                        **Never logged in**
    lp                                         **Never logged in**
    sync                                       **Never logged in**
    shutdown                                   **Never logged in**
    halt                                       **Never logged in**
    mail                                       **Never logged in**
    uucp                                       **Never logged in**
    operator                                   **Never logged in**
    games                                      **Never logged in**
    gopher                                     **Never logged in**
    ftp                                        **Never logged in**
    nobody                                     **Never logged in**
    vcsa                                       **Never logged in**
    saslauth                                   **Never logged in**
    postfix                                    **Never logged in**
    sshd                                       **Never logged in**
    ntp                                        **Never logged in**
    ett                                        **Never logged in**
    lewen                                      **Never logged in**
    inca                                       **Never logged in**
    kevin                                      **Never logged in**
     
     
     
    #<=当从不登录的系统用户突然登录了,就要怀疑是否有用户侵入系统了。
     
  • 相关阅读:
    pgspider sqlite mysql docker 镜像
    pgspider docker 镜像
    pgspider基于pg 的高性能数据可视化sql 集群引擎
    diesel rust orm 框架试用
    golang 条件编译
    Performance Profiling Zeebe
    bazel 学习一 简单java 项目运行
    一个好用node http keeplive agnet
    gox 简单灵活的golang 跨平台编译工具
    mailhog 作为smtp server mock工具
  • 原文地址:https://www.cnblogs.com/wenyule/p/12214044.html
Copyright © 2011-2022 走看看