[转帖]十二 个经典 Linux 进程管理命令介绍

https://www.cnblogs.com/swordxia/p/4550825.html

接了 http referer 头 没法显示图片 可以去原始blog 里面去查看. 

随笔- 109  文章- 0  评论- 1

执行中的程序在称作进程。当程序以可执行文件存放在存储中,并且运行的时候,每个进程会被动态得分配系统资源、内存、安全属性和与之相关的状态。可以有多个进程关联到同一个程序,并同时执行不会互相干扰。操作系统会有效地管理和追踪所有运行着的进程。

为了管理这些进程,用户应该能够:

  • 查看所有运行中的进程
  • 查看进程消耗资源
  • 定位个别进程并且对其执行指定操作
  • 改变进程的优先级
  • 杀死指定进程
  • 限制进程可用的系统资源等

Linux提供了许多命令来让用户来高效掌控上述的操作。接下来,一个一个的来讲解下。

1. ps

‘ps’是Linux 中最基础的浏览系统中的进程的命令。能列出系统中运行的进程,包括进程号、命令、CPU使用量、内存使用量等。下述选项可以得到更多有用的消息。

ps -a - 列出所有运行中/激活进程

ps -ef |grep - 列出需要进程
ps -aux - 显示进程信息,包括无终端的(x)和针对用户(u)的进程:如USER, PID, %CPU, %MEM等

2. pstree

linux中,每一个进程都是由其父进程创建的。此命令以可视化方式显示进程,通过显示进程的树状图来展示进程间关系。如果指定了pid了,那么树的根是该pid,不然将会是init(pid: 1)。

3. top

‘top’是一个更加有用的命令,可以监视系统中不同的进程所使用的资源。它提供实时的系统状态信息。显示进程的数据包括 PID、进程属主、优先级、%CPU、%memory等。可以使用这些显示指示出资源使用量。

4. htop

htop与top很类似,但是htop是交互式的文本模式的进程查看器。它通过文字图形化地显示每一个进程的CPU和内存使用量、swap使用量。使用上下光标键选择进程,F7和F8改变优先级,F9杀死进程。Htop不是系统默认安装的,所以需要额外安装。

5. nice

通过nice命令的帮助,用户可以设置和改变进程的优先级。提高一个进程的优先级,内核会分配更多CPU时间片给这个进程。默认情况下,进程以0的优先级启动。进程优先级可以通过top命令显示的NI(nice value)列查看。

进程优先级值的范围从-20到19。值越低,优先级越高。

nice <优先值> <进程名> - 通过给定的优先值启动一个程序

上述命令例子中,可以看到‘top’命令获得了-3的优先值。

6. renice

renice命令类似nice命令。使用这个命令可以改变正在运行的进程优先值。注意,用户只能改变属于他们自己的进程的优先值。

renice -n -p - 改变指定进程的优先值

初始优先值为0的3806号进程优先值已经变成了4.

renice -u -g - 通过指定用户和组来改变进程优先值

上述例子中,用户为‘mint’的所有进程优先值变为‘-3’。

7. kill

这个命令用于发送信号来结束进程。如果一个进程没有响应杀死命令,这也许就需要强制杀死,使用-9参数来执行。注意,使用强制杀死的时候一定要小 心,因为进程没有时机清理现场,也许写入文件没有完成。如果我们不知道进程PID或者打算用名字杀死进程时候,killall就能派上用场。

kill <pid>
kill -9 <pid>
killall -9 - 杀死所有拥有同样名字的进程

如果你使用kill,你需要知道进程ID号。pkill是类似的命令,但使用模式匹配,如进程名,进程拥有者等。

pkill <进程名>

8. ulimit

该命令用于控制系统资源在shell和进程上的分配量。对于系统管理员是最有用的,可以管理重度使用和存在性能问题的系统。限制资源大小可以确保重要进程持续运行,其他进程不会占用过多资源。

ulimit -a - 显示当前用户关联的资源限制

-f - 最大文件尺寸大小
-v - 最大虚拟内存大小(KB)
-n - 增加最大文件描述符数量
-H : 改变和报告硬限制
-S : 改变和报告软限制

浏览ulimit man页面获取更多选项。

9. w

w 提供当前登录的用户及其正在执行的进程的信息。显示信息头包含信息,如当前时间、系统运行时长、登录用户总数、过去的1,5,15分钟内的负载均衡数。

基于这些用户信息,用户在终止不属于他们的进程时要小心。

who是类似命令,提供当前登录用户列表、系统启动时间、运行级别等。

whoami 命令输出当前用户ID

10. pgrep

pgrep的意思是”进程号全局正则匹配输出”。该命令扫描当前运行进程,然后按照命令匹配条件列出匹配结果到标准输出。对于通过名字检索进程号是很有用。

pgrep -u mint sh

这个命令将会显示用户为‘mint’和进程名为‘sh’的进程ID。

11. fg , bg

有时,命令需要很长的时间才能执行完成。对于这种情况,我们使用‘bg’命令可以将任务放在后台执行,而用‘fg’可以调到前台来使用。

我们可以通过‘&’在后台启动一个程序:

find . -name *iso > /tmp/res.txt &

一个正在运行的程序也可以通过“CTRL+Z”和“bg”命令组合放到后台运行。

find . -name *iso > /tmp/res.txt &     -  启动一个程序
ctrl+z      -   挂起当前执行程序
bg   -  将程序放到后台运行

我们可以使用‘jobs’命令列出所有后台进程。

jobs

使用‘fg’命令可以将后台程序调到前台执行。

fg %进程id

12. ipcs

ipcs命令报告进程间通信设施状态。(共享内存,信号量和消息队列)

用-p参数联合-m、-s或-q使用,可以获得相关的进程间通信的进程ID。

ipcs -p -m

下面屏幕截图列出了最近访问了共享内存段的进程的创建者的ID和进程ID。

总结

总之 ,这些命令可以帮助管理员修复问题和改善性能。同样作为一名普通用户也需要解决进程出现的问题。所以,熟悉如此繁多的命令,从能有效管理进程是行之有效。

原文地址:https://www.cnblogs.com/jinanxiaolaohu/p/10710627.html

时间: 2024-10-10 23:49:20

[转帖]十二 个经典 Linux 进程管理命令介绍的相关文章

12个Linux进程管理命令介绍

12个Linux进程管理命令介绍 当程序可以执行文件存放在存储中,并且运行的时候,每个进程会被动态得分配系统资源.内存.安全属性和与之相关的状态.可以有多个进程关联到同一个程序,并同时执行不会互相干扰.Linux提供了许多命令来让用户来高效掌控上述的操作. 执行中的程序称作进程.当程序可以执行文件存放在存储中,并且运行的时候,每个进程会被动态得分配系统资源.内存.安全属性和与之相关的状态.可以有多个进程关联到同一个程序,并同时执行不会互相干扰.操作系统会有效地管理和追踪所有运行着的进程. 为了管

Linux 进程管理命令ps、top、kill、nice、fg、bg、vmstat、uptime

Linux 进程管理命令: ps process status 查看进行相关信息: system 风格:sysv  有-线引导 BSD风格:BSD ps a:显示所有跟终端有关的进程 u:显示更详细的字段 x:显示所有跟终端无关的进程 常用 ps ax 进程分类: 终端启动(相关)的进程:用户通过命令行启动的进程 跟终端无关的进程:系统启动就自己启动 进程状态: D: 表示不可中断的睡眠 R:表示就绪态 S:表示可中断的睡眠 T:停止 Z:僵死态 <:高优先级进程 N:低优先级进程 +:前台进程

Linux 进程管理命令

linux进程管理命令,大部分挺重要的,不过参数肯定不全,只写出几个比较常用的参数,如果用到其他的,可以去百度. accton  打开或关闭进程统计(打开进程统计,如果不加任何参数,则关闭进程统计) acction [-v][-h][filename] acct  是一个工具包 ,里面包含针对用户连接时间,进程执行情况进行统计包含下面一些命令 : ac   登录账号的简要信息 accton 打开或者关闭进程账号记录功能 last 显示曾经登陆过的用户 lastcomm 显示已经执行过的命令 sa

linux进程管理命令总结

linux进程管理的相关命令: 1.pstree  --以树状形式显示当前系统进程,和命令tree相似. 2.ps命令 命令格式:ps [options] 常用组合:aux: u:以用户为中心组织的进程状态信息显示 a:与终端相关的进程 x:与终端无关的进程 #ps aux USER : 用户名 PID : 进程号 %CPU :占用的cpu百分比 %MEM  :内存的使用率 VSZ :  virtual memory size ,虚拟内存集 RSS : resident size ,常驻内存集

linux进程管理命令 06

本文将阐述linux当中的进程管理命令. 1.操作环境 vmware 14.1 centos7 64 putty或者xshell 2.前提约束 已安装vmware vmware中已安装centos[注意,也可以直接就是一台linux机子,使用vmware是一个选项而已] 在本机能访问到centos[注意,本文中所涉及的linux服务器的ip是 192.168.100.192,请读者根据实际设置] 熟练使用putty或者xshell 在linux当中已经安装tomcat 3.ps查看进程 (1)

Linux进程管理命令浅析

在Linux上,一切皆文件.同样,系统的实时状态信息也通过文件的形式保存在文件系统上.在/proc/中,保存的就是内核中的状态信息,而在/proc/#中(#为PID)保存了进程的信息,我们可以通过调用工具来查看这些文件中保存的信息从而来管理系统的进程.本次,分析的命令有top.htop.dstat和ps共4个命令. 一.top命令的使用 查看系统进程的实时状态.其格式是 top [d|b|n] -d #:指定刷新时间间隔,默认为3秒 -b:以批次方式显示 -n #:显示多少批次 ~]# top

linux进程管理命令

进程管理类的命令: pstree,ps,top,vmstat,htop,pmap pstree:查看进程树 ps:显示系统当前进程状态的命令 进程: 跟终端相关的进程 跟终端无关的进程 a:所有跟终端相关的进程 ps a x:所有跟终端无关的进程 ps x STAT: S:可中断睡眠 D:不可中断睡眠 R:运行或可运行 T:停止 Z:僵死 s:session leader l:多线程进程 +:前台进程: N:低优先级进程 <:高优先级进程 COMMAND:由哪个命令发起的进程 []:内核线程 u

Linux进程管理命令之ps、dstat、top、htop

Linux的进程及cpu.内存等状况的监测是一件非常重要的事情.这里介绍几个比较常用的工具. 概述:ps命令.dstat命令.top命令.htop命令 一.ps命令 - 进程状态查看工具 工作机制:通过抽取内核提供的/proc/PID(每个进程的PID,有多个)目录下的各进程状态来显示给用户以供查看. 使用格式:ps [options] 选项有三种风格: 1.UNIX风格,选项可以组合在一起且前面跟一个短横线. 2.BSD风格,选项可以组合在一起且前面可以不跟一个短横线. 3.GNU风格,是长选

Linux进程管理命令详解

一.ps命令:只显示命令运行这一刻的进程的状态  (一) /proc/:内核中的状态信息:通过这个接口输出给用户        1. 内核参数:            可设置参数:可设置其值从而调整内核运行特性的参数:/proc/sys/            状态变量:其用于输出内核中统计信息或状态信息,仅用于查看:        2. 参数:参数被模拟成文件系统类型:  (二)进程: /proc/#:在proc目录下都有一个以进程号命名的目录,这个目录存放了进程当前状态的各种信息