• Centos7常用基本命令使用(进程管理类、网络状态类、系统定时类)


    1. 进程管理类

    1.1 ps

    process status,默认只显示和当前用户、当前终端相关联的进程

    语法:ps 选项

    选项功能
    a列出带有终端(非后台)的所有用户的进程
    x列出当前用户的所有进程,再列出没有终端(非后台)的进程
    u面向用户友好的显示风格
    -e列出所有进程
    -u 用户名列出某个用户关联的所有进程
    -f显示完整格式的进程列表

    示例:

    1. 查看系统中所有进程(BSD风格)
    [root@bigdata001 ~]# ps aux
    USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
    root         1  0.0  0.0 199352  3220 ?        Ss   4月30  30:15 /usr/lib/systemd/systemd --switched-root --system --deserialize 22
    root         2  0.0  0.0      0     0 ?        S    4月30   0:03 [kthreadd]
    ......省略部分......
    [root@bigdata001 ~]#
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    各字段解析如下:

    • USER:该进程是由哪个用户产生的
    • PID:进程的ID
    • %CPU:该进程占用CPU资源的百分比
    • %MEM:该进程占用物理内存的百分比
    • VSZ:该进程占用虚拟内存的大小,单位KB。一些长时间未使用的会放到虚拟内存
    • RSS:该进程占用实际物理内存的大小,单位KB
    • TTY:该进程是在哪个终端中运行的。对于CentOS来说,tty1是图形化终端, tty2-tty6 是本地的字符界面终端。pts/0-255代表虚拟终端
    • STAT:进程状态。常见的状态有:R-运行状态、S-睡眠状态、T-暂停状态、 Z-僵尸状态(未清理干净的)、s-包含子进程、l-多线程、±前台显示、-:进程优先级很高、N-进程优先级很高
    • START:该进程的启动时间
    • TIME:该进程占用CPU的运算时间,注意不是系统时间
    • COMMAND:产生此进程的命令。kthreadd负责内核所有线程的管理
    1. 查看父子进程之间的关系(Unix标准风格)
    [root@bigdata001 ~]# ps -ef
    UID        PID  PPID  C STIME TTY          TIME CMD
    root     18911 18908  0 22:13 pts/0    00:00:00 -bash
    [root@bigdata001 ~]#
    
    • 1
    • 2
    • 3
    • 4

    各字段解析如下:

    • UID:用户ID
    • PID:进程ID
    • PPID:父进程ID
    • C:CPU用于计算执行优先级的因子。数值越大,表明进程是CPU密集型运算, 执行优先级会降低;数值越小,表明进程是I/O密集型运算,执行优先级会提高
    • STIME:进程启动的时间
    • TTY:完整的终端名称
    • TIME:CPU时间
    • CMD:启动进程所用的命令和参数

    1.2 kill

    通过进程号杀死进程:kill -9 PID
    通过指定进程名称杀死多个进程,会将包含指定进程名称的所有进程都杀死:killall 进程名称

    可以通过kill -l查看所有支持的kill -数字参数 PID

    1.3 pstree

    查看进程树

    安装依赖包

    [root@bigdata001 ~]# yum install -y psmisc
    
    • 1

    使用

    [root@bigdata001 ~]# pstree -p -u
    systemd(1)─┬─NetworkManager(678)─┬─{NetworkManager}(691)
               │                     └─{NetworkManager}(693)
               ├─agetty(919)
               ├─auditd(638)───{auditd}(639)
               ├─chronyd(671,chrony)
               ├─crond(687)
               ├─dbus-daemon(666,dbus)───{dbus-daemon}(673)
               ├─lvmetad(501)
               ├─master(1082)─┬─pickup(1089,postfix)
               │              └─qmgr(1090,postfix)
               ├─polkitd(662,polkitd)─┬─{polkitd}(675)
               │                      ├─{polkitd}(681)
               │                      ├─{polkitd}(684)
               │                      ├─{polkitd}(685)
               │                      ├─{polkitd}(686)
               │                      └─{polkitd}(689)
               ├─rsyslogd(911)─┬─{rsyslogd}(921)
               │               └─{rsyslogd}(923)
               ├─sshd(908)───sshd(971)───bash(1135)───pstree(1198)
               ├─systemd-hostnam(695)
               ├─systemd-journal(480)
               ├─systemd-logind(679)
               ├─systemd-udevd(511)
               └─tuned(907)─┬─{tuned}(1189)
                            ├─{tuned}(1190)
                            ├─{tuned}(1192)
                            └─{tuned}(1194)
    [root@bigdata001 ~]# 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • -p:显示进程的PID
    • -u:显示进程所属的用户,如果用户和父进程一样,则不会显示

    1.4 top

    执行top命令,会持续(默认3秒,可通过-d参数指定)的监控系统的进程状态

    top - 21:51:11 up 79 days,  4:15,  2 users,  load average: 0.42, 0.31, 0.31
    Tasks: 418 total,   2 running, 416 sleeping,   0 stopped,   0 zombie
    %Cpu(s):  2.1 us,  2.2 sy,  0.0 ni, 95.6 id,  0.0 wa,  0.0 hi,  0.1 si,  0.0 st
    KiB Mem : 16266480 total,   911960 free,  7466176 used,  7888344 buff/cache
    KiB Swap:  8257532 total,  5658620 free,  2598912 used.  7422656 avail Mem 
    
      PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND                                                                                                                   
     5256 root      20   0    9.9g 863088 608848 S  13.2  5.3   5912:53 clickhouse-serv
     ......省略部分......
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    各部分含义如下:

    • 第一行:当前时间 系统启动了多久 当前多少个用户在使用 过去1分钟、5分钟、10分钟的平均负载(小于0.7负载小,大于1负载大)
    • 第二行:当前正在运行的进程数 运行进程数 睡眠进程数 停止进程数 僵尸进程数
    • 第三行:用户进程(没有更改用户优先级的用户进程)占用CPU时间 系统进程占用CPU时间 nice命令(给进程指定优先级,值越低优先级越高)设定用户优先级的用户进程占用CPU时间 CPU空闲率 等待I/O操作的时间占比 硬件中断请求的时间占比 软件中断请求的时间占比 被虚拟机占用的时间占比
    • 第四行:内存占用情况
    • 第五行:swap内存占用情况
    • 第六行字段说明:PID 用户 任务调度的优先级 用户指定的nice值 虚拟内存占用大小 物理内存占用大小 共享内存占用大小 进程状态 CPU运行时间占比 内存占比 运行占CPU总时间 生成当前进程的命令

    默认按CPU运行时间占比(P)降序排列,可以按M按内存占比降序排序,按N按PID降序排列。按u再输入用户,只查看指定用户的进程。按k再输入进程PID,再输入9,杀死进程

    按上下键进行滚动,按Page Up和Page Down进行翻译,按q退出

    选项:

    • -i:使top不显示任何闲置或僵尸进程
    • -p:指定进程PID进行监控

    2. 网络状态类

    2.1 netstat

    netstat 选项

    • -a:显示所有正在监听(listen)和未监听的套接字(socket)
    • -n:拒绝显示别名,能显示数字的全部转化成数字
    • -l:仅列出在监听的服务状态
    • -p:表示显示哪个进程在调用

    示例:
    查看该进程网络信息:netstat -anp | grep 进程号
    查看网络端口号占用情况:netstat -nlp | grep 端口号

    Active Internet connections (servers and established)
    Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
    tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1110/sshd 
    ......省略部分......
    
    • 1
    • 2
    • 3
    • 4

    各字段含义如下:

    • Proto:网络协议
    • Recv-Q:已经接收但还未拷贝的字节数
    • Send-Q:已经发送,但远程主机还未确认收到的字节数
    • Local Address:本地地址。0.0.0.0表示服务器所有地址。端口范围为0~65535
    • Foreign Address:远程地址
    • State:状态

    3. 系统定时类

    3.1 crontab

    crontab命令由crond服务提供

    crontab -r:删除当前用户所有的crontab任务

    crontab编辑定时语法:* * * * * 执行的任务
    注意:几号和星期几最好不要同时出现,会混乱

    项目含义范围
    第一个“*”一小时当中的第几分钟0-59
    第二个“*”一天当中的第几小时0-23
    第三个“*”一个月当中的第几天1-31
    第四个“*”一年当中的第几月1-12
    第五个“*”一周当中的星期几0-7(0和7都代表星期日)

    特殊符号:

    特殊符号含义
    *代表任何时间
    代表不连续的时间
    -代表连续的时间范围
    */n代表每隔多久执行一次
  • 相关阅读:
    【深度神经网络(DNN)】实现车牌识别
    进度条小程序
    数据结构:交换排序
    硬科技企业社区“曲率引擎”品牌正式发布
    如何使用国际站腾讯云服务器进行手机测速
    redis基础1——发展历程+源码安装及配置+基本常识
    vue-simple-uploader实现多文件/文件夹以及可拖拽上传
    受众分析与卸载分析全面升级,HMS Core分析服务6.6.0版本上新
    构建未来交通:香橙派OPI Airpro上的智能交通监管系统
    JavaWeb开发之——SQL简介&通用语法及分类(05)
  • 原文地址:https://blog.csdn.net/yy8623977/article/details/125838195