Linux之进程管理

程序是保存在外部存储设备(如硬盘)中的可执行机器代码和数据的集合。而进程是在CPU及内存中处于动态执行状态的计算机程序。每个程序启动后会产生一个或多个进程,如httpd程序,当有大量用户访问Web页面时,httpd程序会产生多个进程来提供服务。

一 查看进程

1 ps:查看静态的进程信息

选项:a    显示当前终端下所有的进程信息

u    使用以用户为主的格式输出进程信息

x    显示当前用户在所有终端下的进程信息

-e   显示系统内所有进程信息

-l   使用长格式显示进程信息

-f   使用完整的格式显示进程信息

[[email protected] ~]# ps                            #只显示当前用户会话中打开的进程

PID TTY          TIME CMD

2838 pts/0    00:00:00 bash

5252 pts/0    00:00:00 ps

[[email protected] ~]# ps aux                        #以列表的形式显示出进程信息

[[email protected] ~]# ps -elf                       #使用长格式显示进程的详细信息

[[email protected] ~]# ps aux | grep mysqld          #查看mysqld进程信息

2 top:查看进程动态信息

[[email protected] ~]# top

3 pgrep:查询特定进程信息

选项:-l    长格式输出,查询所有匹配进程的名称和进程ID

-U    查询特定用户的进程

[[email protected] ~]# pgrep -l "my"                 #查询名称中包含"my"的进程信息

5531 mysqld_safe

5633 mysqld

[[email protected] ~]# pgrep -l -U root              #查询root用户的进程名称和ID号

4 pstree:查看进程树

选项:-a    列出完整的命令信息

-u    显示对应的用户名

-p    显示进程ID号

[[email protected] ~]# pstree                        #显示进程树

[[email protected] ~]# pstree -aup                   #显示进程树详细信息,包括PID,用户、命令

[[email protected] ~]# pstree -aup mysql             #指定用户,列出由用户mysql打开的进程结构

mysqld,5633 --basedir=/usr --datadir=/var/lib/mysql --user=mysql --log-error=/var/log/mysqld.log --pid-file=/var/run/mysqld/mysqld.pid --socket=/var/lib/mysql/mysql.sock

├─{mysqld},5635

├─{mysqld},5636

├─{mysqld},5637

├─{mysqld},5638

├─{mysqld},5645

├─{mysqld},5646

├─{mysqld},5647

├─{mysqld},5648

└─{mysqld},5649

二 管理进程

1 &:后台启动进程

[[email protected] ~]# cp -R /etc/ ./ &                    #进程后台启动

[[email protected] ~]# jobs -l                             #查看后台运行的进程,-l显示PID号

2 终止进程

ctrl+c:中断进程,向进程发出SIGINT信号

使用命令中止进程:

kill:使用kill终止进程时需要PID号作为参数

[[email protected] ~]# kill 5633                           #终止PID为5633的进程

[[email protected] ~]# kill -9 7582                        #-9意味着强行终止,慎用

[[email protected] ~]# kill -s QUIT 7849                   #向进程发送QUIT信号,从容停止

killall:可以通过进程名来终止进程

[[email protected] ~]# killall master                      #终止进程,后面是进程名称

[[email protected] ~]# killall -9 master                   #-9:强行终止

[[email protected] ~]# killall -s QUIT mysqld              #从容停止某项服务

pkill:可以根据进程的名称、运行该进程的用户等属性终止该进程

[[email protected] ~]# pkill mysqld                        #终止进程

[[email protected] ~]# pkill -U "zwj"                      #终止用户zwj启动的进程,-9强制终止

时间: 2024-08-10 02:08:38

Linux之进程管理的相关文章

Linux之进程管理及Shell脚本

使用!来调用过往命令 !! 重复执行上一条指令 !a 重复执行上一条以a为首的指令 !nubmer 重复执行上一条在history表中记录号码为number的指令 !-number重复执行前第number条指令 ailas abc='cd xxxxxxxxxxx/xxxxxxxx/xxxxxxxxxxxxx' unalias abc " "将一串字符当成字符串来看,可以转译特殊字符 ' '将一串字符当成字符串来看,无法转译特殊字符 ·能够返回命令执行的结果 echo `uname -a

Linux基础--进程管理相关命令介绍(2)

本文主要介绍了Linux中进程管理的相关命令,涉及到的主要命令有top,vmstat等. (1)top ①功能:用来查看CPU,内存以及进程的状态. ②用例: ③相关注释: load average表示负载,三个数值分别表示第1分钟,第5分钟,第10分钟 Cpu中us表示用户空间程序占用百分比,sy表示内核模式占用百分比,ni表示调整NICE值所占用的    CPU百分比,id表示CPU的空闲比例,wa表示等待磁盘IO完成所占用的时间比例,hi表示硬件中断占     据的百分比,si表示软中断所

linux系统-进程管理-基本概念和命令

linux系统-进程管理-基本概念和命令 一 基本概念 1 进程:是程序的执行过程,是动态的,有生命周期,动态产生和消亡,程序和进程不是一一对应的 2 父进程和子进程: 子进程是有一个进程产生的进程,产生这个进程的进程成为该进程的父进程 父进程是由linux系统中调用fork产生,fork复制的内容包括父进程的数据和堆栈段以及父进程的堆栈环境 3 父进程与子进程的关系 父进程终止子进程自然终止,如不终止,则为孤儿进程,父进程自动指向init进程 子进程终止父进程没有终止,这父进程成为僵死进程 4

linux系统-进程管理-计划任务

linux系统-进程管理-计划任务 一 计划任务命令 1 at 某一时刻执行任务 2 batch 在系统负载不重的时候执行 3 cron 周期性执行 二 at命令及使用 1 at [-f文件名]时间 2 at [-d删除任务] 3 at [-l查看任务] 4 绝对计时法:hh:mm MM/DD/YY at 17:30 4/18/15 5 交互方式:at 9:00 6 使用命令文件的方式:生成文件at.script 使用at命令 at -f at.srcipt 9:00 4/18/15 or at

Linux之进程管理(2)相关命令之三

Linux之进程管理(2)相关命令之三 (IPC)进程间通信及信号控制命令 kill  killall   kill 命令 kill - terminate a process,Inter Process Communication 进程通信工具,默认为发送终止信号 选项及用法: kill  -l  #显示所有信号CODE及名称 kill  [-SIGNAL]  pid...#指定发送信号给对应pid的进程,不指定信号代码默认为15信号 常见的信号:(注:可以使用man 7 signal打开帮助

Linux之进程管理(2)相关命令之四

Linux之进程管理(2)相关命令之四 设置或调整进程优先级命令: nice  rnice nice 命令 nice - run a program with modified scheduling priority 运行一个程序时修改调度其进程优先级 格式及用法: nice  [options]  [command [args]] -n  # :#表示要设置此程序nice值,-20到19,值越下,优先级越高 注:-20到19的每个nice值分别对应(Centos5中为100-139,CentO

Linux之进程管理(3)作业管理

Linux之进程管理(3)作业管理 Linux的作业控制介绍: 前台作业:通过终端启动,且启动后一直占据终端: 后台作业:可通过终端启动,但启动后转入后台运行(释放终端): 让进程作业运行在后台: 1.对运行中的进程:使用Ctrl+z 2.尚未启动的作业:COMMAND &  (在命令行的最后面加一个&符号) 后台作业与终端关系的处理: 后台作业虽然被送往后台允许,但其依然与终端相关:退出终端,将关闭后台作业.如果希望送往后台后,同时剥离与终端的关系.可以使用下面两种方法: 1.# noh

Linux之进程管理(1)基本介绍

Linux之进程管理(1)基本介绍 什么是进程: linux系统中,进程管理相当重要.所谓进程,就是相当于触发任何一个事件时,系统都会将此事件当成一个角色定义成为一个进程,并且给予这个进程一个IP,成为PID,同时依据启发这个进程的用户与相关属性关系,给予这个PID一组有效的权限设定.然后这个PID能够在linux上面进行的各种动作,这个PID代表一个角色. PID的产生: 在linux中执行此程序文件中,内核并不是马上进行执行,而是根据程序文件的执行者的选项和一些相应的属性等参数,然后包括其中

Linux之进程管理(2)相关命令之一

Linux之进程管理(2)相关命令之一 procps工具命令对进程管理的使用:   ps   pgrep  pidof  pkill  pstree ps  命令 ps  (Process State)  :report a snapshot of the current processes. 查看当前进程的快照信息表 此命令支持3种风格: 1.SysV风格:选项前必须加-符号,如ps  -ef 2.BSD风格:选项前可以不加-符号,如ps  aux 3.GUN风格:之前两个-符号,类似长选项,

Linux之进程管理(2)相关命令之二

Linux之进程管理(2)相关命令之二 进程监控工具命令使用:uptime  top  vmstat  pmap  dstat uptime  命令 uptime - Tell how long the system has been running. 显示当前已经运行的时长及cpu核心处理状态 说明:显示系统当前时间,系统运行时长,以及当前上线人数,系统平均负载(一般按1.5.10分钟的平均负载,一般不会超过1). 选项及用法: uptime  [option] -p, --pretty  :