美文网首页
Linux系列七之常用命令整理(四):进程管理、内存监控、网络管

Linux系列七之常用命令整理(四):进程管理、内存监控、网络管

作者: Cehae | 来源:发表于2019-05-12 10:59 被阅读0次

    一、进程管理类命令

    进程是正在执行的一个程序或命令,每一个进程都是一个运行的实体,都有自己的地址空间,并占用一定的系统资源。

    1-1、查看进程:ps

    功能:查看系统中所有进程

    用法:ps -aux

    例如:

    图片.png

    字段说明:

    • USER:该进程是由哪个用户产生的
    • PID:进程的ID号
    • %CPU:该进程占用CPU资源的百分比,占用越高,进程越耗费资源
    • %MEM:该进程占用物理内存的百分比,占用越高,进程越耗费资源
    • VSZ:该进程占用虚拟内存的大小,单位KB
    • RSS:该进程占用实际物理内存的大小,单位KB
    • TTY:该进程是在哪个终端中运行的。其中tty1-tty7代表本地控制台终端,tty1-tty6是本地的字符界面终端,tty7是图形终端。pts/0-255代表虚拟终端。
    • STAT:进程状态。常见的状态有:
      • R:运行
      • S:睡眠
      • T:停止状态
      • s:包含子进程
      • +:位于后台
    • START:该进程的启动时间
    • TIME:该进程占用CPU的运算时间,注意不是系统时间
    • COMMAND:产生此进程的命令名

    关于虚拟内存和物理内存请参考其他文章

    1-1-1、查看某一个进程:
    ps -aux | grep pid
    
    图片.png
    1-1-2、ps -aux、ps aux、
    1. ps -aux和ps aux
      ps -aux不同于ps aux。POSIX和UNIX的标准要求”ps -aux”打印用户名为”x”的用户的所有进程,以及打印所有将由-a选项选择的过程。如果用户名为”x”不存在,ps的将会解释为”ps aux”,而且会打印一个警告。这种行为是为了帮助转换旧脚本和习惯。它是脆弱的,即将更改,因此不应依赖。

    如果你运行ps -aux >/dev/null,那么你就会得到下面这行警告信息

    Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html 
    

    综上: 使用时两者之间直接选择ps aux

    1. ps aux和ps -ef
      两者的输出结果差别不大,但展示风格不同。aux是BSD风格,-ef是System V风格。这是次要的区别,一个影响使用的区别是aux会截断command列,而-ef不会。当结合grep时这种区别会影响到结果。

    综上:以上三个命令推荐使用:ps -ef

    图片.png

    1-2、查看系统健康状态:top

    用法:top [参数选项]

    参数选项:

    • -d N:指定top命令每隔N秒更新。默认是3秒在top命令的交互模式当中可以执行的命令
    • -i:使top不显示任何闲置或者僵死进程
    • -p:通过指定监控进程ID来仅仅监控某个进程的状态
    • -s : 使top命令在安全模式中运行,这将去除交互命令所带来的潜在危险

    操作选项:

    • P:以CPU使用率排序,默认就是此项
    • M:以内存的使用率排序
    • N:以PID排序
    • q:退出top

    功能说明:

    图片.png

    第一行为任务队列信息:

    任务队列信息

    第二行为进程信息:

    进程信息

    第三行为CPU信息:

    CPU信息

    第四行为物理内存信息:

    物理内存信息

    第五行为交换分区(swap)信息:

    交换分区(swap)信息

    1-3、查看进程树:pstree

    功能:
    Linux pstree命令将所有行程以树状图显示,树状图将会以 pid (如果有指定) 或是以 init 这个基本行程为根 (root),如果有指定使用者 id,则树状图会只显示该使用者所拥有的行程。

    用法:pstree [参数选项]

    参数选项:

    • -a :显示该行程的完整指令及参数, 如果是被记忆体置换出去的行程则会加上括号
    • -c:如果有重覆的行程名, 则分开列出(预设值是会在前面加上 *)
    • -p:显示进程的PID
    • -u:显示进程的所属用户
    图片.png

    1-4、终止进程:kill

    功能:
    发送指定的信号到相应进程。不指定型号将发送SIGTERM(15)终止指定进程。如果任无法终止该程序可用“-KILL” 参数,其发送的信号为SIGKILL(9) ,将强制结束进程,使用ps命令可以查看进程号。root用户将影响用户的进程,非root用户只
    能影响自己的进程。

    用法:kill [参数选项] [进程号]

    例如:kill -9 pid:结束指定pid的进程

    参数选项:

    • -l:信号,若果不加信号的编号参数,则使用“-l”参数会列出全部的信号名称
    • -a:当处理当前进程时,不限制命令名和进程号的对应关系
    • -p:指定kill 命令只打印相关进程的进程号,而不发送任何信号
    • -s:指定发送信号
    • -u:指定用户

    输出所有信号量:kill -l

    图片.png

    只有第9种信号(SIGKILL)才可以无条件终止进程,其他信号进程都有权利忽略。 下面是常用的信号:

    • HUP:1,终端断线
    • INT:2,中断(同 Ctrl + C)
    • QUIT:3,退出(同 Ctrl + \)
    • TERM:15,终止
    • KILL:9,强制终止
    • CONT:18,继续(与STOP相反, fg/bg命令)
    • STOP:19,暂停(同 Ctrl + Z)

    二、内存监控类命令

    2-1、显示内存使用情况:free

    功能:显示系统使用和空闲的内存情况,包括物理内存、交互区内存(swap)和内核缓冲区内存。共享内存将被忽略。

    用法:free [参数选项]

    参数选项:

    • -h:-human,自动将数值转换为人类易读形式
    • -b:以Byte为单位显示内存使用情况
    • -k:以KB为单位显示内存使用情况
    • -m:以MB为单位显示内存使用情况
    • -g:以GB为单位显示内存使用情况
    • -o:不显示缓冲区调节列
    • -s<间隔秒数>:持续观察内存使用状况
    • -t:显示内存总和列
    • -V:显示版本信息

    例如:

    图片.png

    说明:

    我们分别使用total1、used1、 free1、total2、used2、free2 等名称来代表上面统计数据的各值,1、2 分别代表第一行(不考虑标题行)和第二行(不考虑标题行)的数据。

    第一行数据:代表内核角度的统计

    • total1:表示物理内存总量
    • used1:表示已使用(已分配出去)的物理内存总量,包括真正已使用和分配给缓存(包含buffers 与cached)的数量
    • free1:未被分配的物理内存
    • shared1:共享内存,一般系统不会用到,这里也不讨论
    • buffers1: 系统分配给buffers 的内存大小
    • cached1:系统分配给cached 的内存数量。buffer 与cache 的区别见后面

    第二行数据:代表应用角度的统计

    • used2:实际使用内存总量
    • free2:系统当前实际可用内存,包括未被分配的内存以及分配给buffers 与cached 的内存之和

    三、网络管理类命令

    3-1、显示网络统计信息:netstat

    用法:netstat -anp

    功能:
    用来显示整个系统目前的网络情况。例如目前的连接、数据包传递数据、或是路由表内容

    例如:

    [root@node000 ~]# netstat -anp | grep 50070
    tcp    0    0    0.0.0.0:50070    0.0.0.0:*    LISTEN    6816/java  
    

    四、后台服务管理类命令

    4-1、后台服务管理:service

    service命令用于对系统服务进行管理,比如启动(start)、停止(stop)、重启(restart)、查看状态(status)等。service命令本身是一个shell脚本,它在/etc/init.d/目录查找指定的服务脚本,然后调用该服务脚本来完成任务。service运行指定服务(称之为System V初始脚本)时,把大部分环境变量去掉了,只保留LANG和TERM两个环境变量,并且把当前路径置为/,也就是说是在一个可以预测的非常干净的环境中运行服务脚本。这种脚本保存在/etc/init.d目录中,它至少要支持start和stop命令。

    用法:
    service SCRIPT COMMAND [OPTIONS]

    功能:
    service命令用于启动、停止、重新启动和关闭系统服务,还可以显示所有系统服务的当前状态。

    常用操作:

    • service --status-all:查看系统中所有的后台服务
    • service network status:查看指定服务的状态
    • service network start:启动指定服务
    • service network stop:停止指定服务
    • service network restart:重启指定服务

    4-2、设置后台服务的运行级别:chkconfig

    功能:
    chkconfig用于查看、设置服务的运行级别。

    用法:
    chkconfig [服务] [参数选项]

    常用操作:

    • chkconfig --list:查看系统服务列表,以及每个服务的运行级别
    • chkconfig iptables on:开启指定服务的自动启动
    • chkconfig iptables off:关掉指定服务的自动启动

    4-3、查看服务是否自动启动:ntsysv

    功能:
    ntsysv用于直观方便的设置各个服务是否自动启动。

    用法:
    ntsysv

    常用操作:

    • ntsysv:以全屏幕文本界面设置服务开机时是否自动启动

    五、压缩解压类命令

    5-1、压缩解压:gzip/gunzip

    用法:

    • gzip+文件:压缩文件,只能将文件压缩为*.gz文件
    • gunzip+文件.gz:解压文件

    注意:gzip压缩文件时

    • 只能压缩文件不能压缩目录
    • 不保留原来的文件

    5-2、压缩解压:zip/unzip

    用法:

    • zip + 参数 + XXX.zip + 将要压缩的内容 :压缩文件和目录的命令,window/linux通用且可以压缩目录且保留源文件
    • unzip + 压缩文件:解压文件

    5-3、压缩解压:tar

    linux下最常用的打包程序就是tar了,使用tar程序打出来的包我们常称为tar包,tar包文件的命令通常都是以.tar结尾的。生成tar包后,就可以用其它的程序来进行压缩。

    用法:
    tar + 参数 + XXX.tar.gz + 将要打包进去的内容(可以是多个文件):打包目录,压缩后的文件格式.tar.gz

    格式:tar[必要操作][可选参数][必要参数][文件]

    必要操作:

    • -c: 压缩
    • -x:解压
    • -t:查看内容
    • -r:向压缩归档文件末尾追加文件
    • -u:更新原压缩包中的文件

    这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个。下面的参数是根据需要在压缩或解压档案时可选的。

    可选参数:

    • -z:有gzip属性的
    • -j:有bz2属性的
    • -Z:有compress属性的
    • -v:显示所有详细过程
    • -O:将文件解开到标准输出

    必要参数:

    • -f: 使用档案名字。切记,这个参数是最后一个参数,后面只能接档案名

    例如:

    压缩文件:

    tar  -zcvf  XXX.tar.gz  目录:压缩目录
    tar  -zcvf  XXX.tar.gz  n1.txt  n2.txt:压缩文件
    

    解压文件:

    tar  -zxvf  XXX.tar.gz:解压到当前目录
    tar  -zxvf  XXX.tar.gz  -C  指定目录:解压到指定目录
    

    六、定时任务类命令

    6-1、系统定时任务设置:crontab

    crontab是系统定时任务设置,想要使用crontab,首先要开启系统定时任务服务crond,开启服务:

    service crond start
    

    crontab用法:crontab [参数选项]

    参数选项:

    • -e:编辑crontab定时任务,可以添加和删除任务
    • -l:查询crontab任务
    • -r:删除当前用户所有的crontab任务

    定时语句说明:

    图片.png 图片.png 图片.png

    相关文章

      网友评论

          本文标题:Linux系列七之常用命令整理(四):进程管理、内存监控、网络管

          本文链接:https://www.haomeiwen.com/subject/pcbqaqtx.html