1-10-RHEL7-Linux系统进程管理


时间:2018-05-30 姓名:魏文应


一、进程

  • 程序与进程:程序是静态的(文件),进程是动态的(运行的程序)。
  • 进程和线程:一个程序至少有一个进程,一个进程至少有一个线程。
  • 进程之间内存是独立 。
  • 线程之间内存共享 ,高并发好一些 。 安全性差一些。

查看进程命令:pstree (显示内容Redhat7版本之后 ,和Redhat6以前的版本不一样):

  • 进程树

程序和进程的区别

  • 程序是静态的,它只是一组指令的集合,不具有任何的运行意义。本身作为一次软件资源长期保存;而进程是程序执行的动态过程.它是动态概念,有一定的生命周期,它是动态产生和消亡的。

  • 进程和程序并不是一一对应的关系,相同的程序运行在不同的数据集上就是不同的进程;一个程序可以由多个进程公用

  • 进程还具有并发性和交往性,而程序却是封闭的。

进程和线程的区别

  • 一个进程可以拥有多个线程,而一个线程同时只能被一个进程所拥有。

  • 线程不能单独执行,但是每一个线程都有程序的入口、执行序列以及程序出口。它必须组成进程才能被执行。

进程属性

  • 进程ID(PID): 是唯一的数值,用来区分进程。
  • 父进程的ID(PPID): 启动进程的用户ID(UID)和所归属的组(GID)。
  • 进程状态: 状态分为运行R、休眠S、僵尸Z。
  • 进程执行的优先级
  • 进程所连接的终端名:以哪个终端登录的。
  • 进程资源占用: 比如占用资源大小(内存、CPU占用量)。

二、进程管理工具:ps

进程查看命令:ps 。常用参数(选项):

参数 说明
-a 显示所有用户的进程
u 显示用户名和启动时间
-x 显示没有控制终端的进程
-e 显示所有进程,包括没有控制终端的进程
-l 长格式显示,详细信息显示
-w 宽行显示,可以使用多个w进行加宽显示

我们常用的选项组合是 -aux

查看进程信息

查看隶属于 自己进程 详细信息,也就是当前用户的进程(不包括其它用户启动的进程)。

  • 显示 用户名启动时间ps u

  • ps u 命令显示的信息
标识 说明
USER 用户名
PID 程进ID
%CPU 占用CPU时间和总时间的百分比
%MEM 占用内存与系统内存总量的百分比
VSZ 进程的虚拟大小
RSS 驻留集的大小,也可以理解为内存中页的数量
TTY 进程启动的终端,也就是这个进程是由哪个终端启动的
STAT 进程当前状态(S休眠状态,D不可中断的休眠状态,R运行状态,Z僵死状态,T停止)
START 进程的启动时间,指出进程是什么时候启动的
TIME 进程自从启动以后启用CPU的总时间
COMMAND/CMD 进程的命令名
UID 用户的id
PPID 父进程的进程号
NI 进程优先级

其中 STAT 除了显示进程当前状态,还经常 追加显示 下面的一些其它参数:

状态符号 说明
< 高优先级
N 低优先级
L 有些页被锁进内存
S 包含子进程
+ 位于后台的进程组
l 多线程

**单独显示某个进程:ps -l | grep bash

  • 单独显示某个进程
  • BSD显示风格标准显示风格ps aux | grep bashps -el | grep bash

  • 显示风格

三、top命令工具:实时显示进程状态

实时显示进程状态top (动态显示),主要用来查看CPU使用情况、内存使用情况、以及系统运行状态等信息。前五行是整个系统的整体信息:

  • 第一行显示的内容(系统信息):

  • top命令内容意思第一行
显示 说明
22:04:01 当前时间
up 1 day, 16:46 系统运行时间
3 users 当前登录用户数
load average: 0.26, 0.22, 0.16 系统负载,即任务队列的平均长度。 三个数值分别为 1分钟、5分钟、15分钟前到现在的平均值。
  • 第二行显示的内容(进程信息,多个CPU的时候,这里可以是多行):

  • top命令内容意思第二行
显示 说明
Tasks: 256 total 进程总数
1 running 正在运行的进程数
255 sleeping 睡眠的进程数
0 stopped 停止的进程数
0 zombie 僵尸进程数
  • 第三行显示的内容(CPU信息,多个CPU的时候,这里可以是多行):

  • top命令内容意思第三行
显示 说明
6.6.0% us 系统用户进程使用CPU百分比
4.3% sy 内核中的进程占用CPU百分比
0.0% ni 用户进程空间内改变过优先级的进程占用CPU百分比
89.1% id 空闲CPU百分比
0.0%wa IO等待占用CPU的百分比
0.0%hi 硬中断(Hardware IRQ)占用CPU的百分比
0.1%si 软中断(Software Interrupts)占用CPU的百分比
0.0%st Steal Time 切片时间CPU占比。CPU资源是切换使用的,比如这个进程用一会,那个进程用一会。Steal Time 反映虚拟CPU等待实际CPU响应的情况,如果等待时间为100%时,说明虚拟CPU得不到实际CPU分配的资源,这是一种糟糕的情况。当系统运行在虚拟机上时,这个值可以关注。
    • 第四、五行显示的内容(物理内存和swap交换区):
  • top命令内容意思第四、五行

top工具内部快捷键

当你使用 top 命令,查看内存时,可以使用一些快捷键:

快捷键 功能
空格键 手动刷新一下(默认3秒刷新一次)
M(大写) 按内存排序,内存使用高的排在上面
P(大写) 按CPU排序 ,CPU资源用得多的排在上面
h 帮助
q 退出

五、pgrep管理工具:查看单个进程

pgrep 用来查看指定进程,pgrep 相当于 ps aux | grep ,比如查看 httpd 服务:pgrep httpd

  • pgrep查看进程

你测试查看httpd时,应该先启动httpd:service start httpd。如果没有安装httpd,则安装httpd:yum -y install httpd。如果httpd 启动失败,80端口被占用:

  • httpd80端口被占用

解决方法,有两种方式可以使用:

  • 第一种方法是修改httpd的端口:

    vim /etc/httpd/conf/httpd.conf

  • httpd端口修改

然后就可以正常启动httpd服务了:

service httpd start

  • 第二种是停掉目前占用80端口的服务,让出端口给httpd使用:

  • 查看哪个服务占用了80端

六、pstree 管理工具:查看进程树

用来查看 进程树pstree

  • 进程树

七、网络管理

使用netstat工具

netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 。

  • 常用命令带参情况 netstat -anptu
参数 说明
-a或–all 显示所有连接中的接口
-c或–continuous 持续列出网络状态
-C或–cache 显示路由器配置的快取信息
-e或–extend 显示网络其他相关信息
-F或–fib 显示FIB
-g或–groups 显示多重广播功能群组组员名单
-h或–help 在线帮助
-i或–interfaces 显示网络界面信息表单
-l或–listening 显示监控中的服务器的接口
-M或–masquerade 显示伪装的网络连线
-n或–numeric 直接使用IP地址,而不通过域名服务器
-N或–netlink或–symbolic 显示网络硬件外围设备的符号连接名称
-o或–timers 显示计时器
-p或–programs 显示正在使用接口的程序识别码和程序名称
-r或–route 显示Routing Table
-s或–statistice 显示网络工作信息统计表
-t或–tcp 显示TCP传输协议的连接状况
-u或–udp 显示UDP传输协议的连接状况
-v或–verbose 显示指令执行过程
-V或–version 显示版本信息
-w或–raw 显示RAW传输协议的连线状况
-x或–unix 此参数的效果和指定”-A unix”参数相同
–ip或–inet 此参数的效果和指定”-A inet”参数相同

八、虚拟文件系统 /proc /sys

Linux一切皆文件,设备(文件)可以通过读写来操作。

/proc:在内存中的系统进程信息

比如,查看cpu信息:cat /proc/cpuinfo。在比如查看内存信息 : cat /proc/meminfo

  • 开启内核转发功能: linux可以作为一个路由器使用。我们可以开启路由转发功能,并设置iptables。

    往/proc/sys/net/ipv4/ip_forward这个文件中写入1,就开启了ip路由功能。
    echo "1" >/proc/sys/net/ipv4/ip_forward

  • /sys :系统内核以及驱动的信息。

九、Linux后台进程与前台进程

Linux后台进程:

  • 守护进程(Daemon),是运行在后台的一种特殊进程。
  • 守护的意思就是不受终端控制;
  • Linux的大多数服务器就是用守护进程实现的,比如,Web服务器httpd等。

Linux前台进程:

  • 用户使用的有控制终端的进程。

进程的前台与后台切换

  • 让命令后台运行[命令] & 。 比如:sleep 100 &&这个符号用在命令的最后,让sleep 100这个命令后台执行)。

  • 暂停前台命令,让其后台挂起: ctrl键 + z键

  • 查看所有后台进程: jobs (如果显示进程号PID,则jobs -l)。

  • 后台进程调到前台运行: fg

  • 启动运行后台暂停的进程,在后台运行: bg

  • 进程的前台与后台切换

十、kill和killall 终止进程

可以通过kill来 杀死进程,也就是 结束进程

  • 列出kill的信号列表: kill -l

  • kill信号列表
  • 杀死结束一个进程: kill 9 [进程号]

  • 杀死一组进程: killall [进程名],比如:killall httpd

十一、进程的优先级管理

优先级取值范围为(-20,19),越小优先级越高, 默认优先级是0。

指定进程优先级: nice -n 5 vim a.txt (使用优先级5执行vim a.txt产生的进程):

  • 进程优先级

修改进程优先级: nice -10 29155 (-10是进程优先级,29155是进程PID)。

十二、screen 命令工具:终端命令行暂存

screen 有什么用? 比如,你在命令行终端执行 ping www.baidu.com ,这时你关闭了终端命令行,那么 ping www.baidu.com 进程也会被终止,被杀死了。因为ping这个操作是由 终端派生的进程,终端进程退出了,子进程ping也会被杀死。但你不想ping结束呢?就可以用screen工具。

创建新窗口: screen 或者 screen -S name01 (“-S name01” 是给窗口命名,让你容易识别)。

窗口后台运行: 按下Ctrl键 + A键 + D键 。让screen创建的窗口后台运行,我们返回主窗口做其它操作。

查看srceen列表: screen -list 或者 screen -ls

切换到之前分离的窗口: screen -r name01(输入窗口名称或者ID号都可以)。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 213,186评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,858评论 3 387
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 158,620评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,888评论 1 285
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,009评论 6 385
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,149评论 1 291
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,204评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,956评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,385评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,698评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,863评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,544评论 4 335
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,185评论 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,899评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,141评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,684评论 2 362
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,750评论 2 351

推荐阅读更多精彩内容