Linux进程管理

在Linux中每个执行的程序(代码)都被称为是一个进程。每个进程都分配一个ID号。

每一个进程都会对应一个父进程,而这个父进程可以复制多个子进程。例如www服务器。

每个进程都可能以两种方式存在:前台和后台。所谓前台进程就是用户目前的屏幕上可以进行操作的。后台进程则是实际在操作,但由于屏幕上无法看到的进程,通常使用后台方式执行。

一般系统的服务都是以后台进程的方式存在,而且都会常驻在系统中。直到关机才结束。

显示系统执行的进程

ps命令是用来查看目前系统中,有哪些正在执行,以及它们执行的状况。可以不加任何参数。

ps显示的信息选项:

字段 说明
PID 进程识别号
TTY 终端机号
TIME 此进程所消CPU时间
CMD 正在执行的命令或进程名
#显示当前终端的所有进程信息
ps -a
#以用户的格式显示进程信息
ps -u
#显示后台进程运行的参数
ps -x

第一列(USER)代表进程属于的用户。
第二列(PID)代表进程号/进程ID。
第三列(%CPU)表示进程占用的CPU的情况。
第四列(%MEM)代表进程占用内存的情况。
第五列(VSZ)代表进程占用的虚拟内存的情况。
第六列(RSS)代表进程占用的物理内存的情况。
第七列(TTY)代表进程使用的终端。
第八列(STAT)代表当前进程运行的状态。s表示休眠,r表示运行,N表示进程拥有比普通优先级更低的优先级,D表示短期等待,Z表示僵死进程,T表示被跟踪或者被停止。
第九列(START)代表进程的启动时间。
第十列(TIME)代表进程占用CPU的总计时间。
第十一列(COMMAND)代表进程在执行时的命令行,如果过长会被截断显示。

ps查看进程的父进程

ps -ef | more

指令说明:以全格式显示当前所有进程以及父进程。
-e代表显示所有进程,-f代表全格式。


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

终止进程

若是某个进程执行一半需要停止时,或者是已经消耗了很大的系统资源时,此时可以考虑体制该进程。使用kill命令来完成此项任务。
基本语法:

kill [选项] 进程号 (功能描述:通过进程号杀死进程)
killall 进程名称 (功能描述:通过进程名杀死进程,也支持通配符,这在系统因负载过大而变得很慢时很有用)

常用选项:
-9:表示强迫进程立即停止。
应用实例:

  1. 踢掉某个非法用户
#找到对应的进程号
ps -aux | grep sshd
#使用kill指令,踢走该用户
kill 4041

终止远程登录服务sshd,在适当的时候再次重启sshd服务。



终止多个gedit编辑器

killall gedit

强制杀掉一个终端


查看进程树pstree

基本语法:

pstree [选项],可以更加直观的查看进程信息。
常用选项:
-p:显示进程的PID。
-u:显示进程的所属用户。

服务(service)管理

服务(service)本质就是进程,但是是运行在后台的,通常都会监听某个端口,等待其它程序的请求,比如mysql,ssd防火墙等,因此我们又称为守护进程,是Linux中的重点。


service管理指令:

service 服务名 [start|stop|restart|reload|status]

在CentOS7.0之后不再使用service了,而是systemctl。

使用案例:
查看防火墙的状态

service iptables status

关闭防火墙

service iptables stop

启动防火墙

service iptables start

关闭或启用防火墙后,立即生效。可以使用telnet指令进行测试。这种方式只是临时生效,当重启系统后,还是回归以前对服务的设置。如果希望设置某个服务自启动或关闭永久生效,要使用chkconfig指令。

查看服务名:
方法一:使用setup -> 系统服务,就可以看到

系统服务

方法二:/etc/init.d/服务名称。用于列出系统有哪些服务。

运行级别:

查看或修改默认的运行级别:

vi /etc/inittab

Linux系统有7种运行级别(runlevel),常用的级别是3和5。

  • 运行级别0:系统停机状态,系统默认运行级别不能设为0,否则不能正常启动。
  • 运行级别1:单用户工作状态,root权限,用于系统维护,禁止远程登录。
  • 运行级别2:多用户状态(没有NFS),不支持网络。
  • 运行级别3:完全的多用户状态(有NFS),登录后进入控制台命令模式。
  • 运行级别4:系统未使用,保留。
  • 运行级别5:X11控制台,登录后进入图形GUI模式。
  • 运行级别6:系统正常关闭并重启,默认运行级别不能设为6,否则不能正常启动。

开机流程说明:

chkconfig指令:
通过chkconfig指令可以给每个服务的各个运行级别设置自启动/关闭。

  • 基本语法:

查看服务
chkconfig --list | grep 服务名
chkconfig 服务名 --list
chkconfig --level 5 服务名 on/off

使用实例

#将sshd服务在运行级别5下设置为不自动启动。
chkconfig --level 5 iptables off
#在所有运行级别下关闭防火墙。
chkconfig iptables off
#在所有运行级别下开启防火墙。
chkconfig iptables on

chkconfig重新设置服务后自启动或关闭,需要重启机器reboot才能生效。

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

推荐阅读更多精彩内容

  • 前言 只有光头才能变强 回顾前面: 看完这篇Linux基本的操作就会了 Linux用户和权限管理看了你就会用啦 这...
    Java3y阅读 708评论 0 8
  • 1. 显示系统执行的进程 ps ,一般来说使用的参数是ps -aux 显示参数: PID 进程识别号 MEM 占用...
    芒果奶油卷阅读 155评论 0 0
  • 在Linux中,每个执行程序(代码)都称为一个进程,每个进程都分配一个ID号。每一个进程都有一个父进程,而这个父进...
    Manfestain阅读 132评论 0 0
  • 1.显示系统执行的进程 参数说明:a 显示当前终端的所有进程信息u 以用户的格式显示进程信息x 显示后台进...
    封面丶苏凉阅读 337评论 0 0
  • Linux 进程管理与程序开发 进程是Linux事务管理的基本单元,所有的进程均拥有自己独立的处理环境和系统资源,...
    JamesPeng阅读 2,442评论 1 14