本方法以linux发行版RHEL7为例,Linux下使用PS命令结合相关参数可以查看linux当前系统下的所有进程、所有运行中的进程、所有非root运行的进程、所有指定用户运行的进程。
1桌面点击右键d出菜单选择“Open in Terminal”,打开命令行终端
以下 *** 作输入命令均在命令行终端输入
2在命令行终端执行ps的帮助命令“ps --helpa”查看ps命令参数列表
3根据参数显示,使用命令“ps -A”查看当前系统所有的进程
说明一下:从RHEL7开始服务的管理程序改为了systemd
4使用“ps-aux|less”,查看当前系统正在运行的所有进程all
使用q键退出
5使用“ps -U root -u root -N”,查看当前系统中非root运行的所有进程
6使用“ps –u sshd”,查看sshd用户运行的所有进程
sshd用户没有运行进程,也就是说明并没有启动ssh服务。
您好,linux查看进程方法
首先需要连接linux系统,我们不能像windows系统一样直接远程连接就可以了,因为我们还有需要输入命令查询等 *** 作,所以最好下载一个终端模拟软件,我这里就以Xshell5为例了,当然了使用大家顺手的软件就可以了。
Xshell5的下载安装我就不讲了,大家自行下载安装就可以了。接下来我们需要使用Xshell5连接到我们的linux服务器上,打开Xshell5,点击软件界面左上角的文件菜单下的新建功能。
在新建会话窗口中输入名称、主机和端口号,名称随便取,主机就是你的服务器的ip地址,端口号就是服务器设置的连接端口号,然后点击确定。
这样我们就新建了一个会话了,接下来就进入到了会话列表页面,点击我们建立的新会话,然后选择连接。
接下来就会d出窗口要我们输入登录用户名和密码,按要求输入就可以了,这样我们就正常的登陆连接到linux系统了。
接下来我们就要输入ps命令来查看linux的进程了,如图在窗口中输入命令ps aux,然后按回车键运行一下,就可以查看到linux所有运行中的进程了。
如果你输入ps空格一下,然后-A,因为这个字母敏感,所以我这么写了,需要和上面一样连起来的,那么就会显示所有的linux系统中的进程了。
ps命令用于查看系统中的进程状态,格式为:“ps [参数]”,
当您第一次执行这个命令时估计要惊呆下,这么多输出值怎么看的过来?其实把ps命令与管道符技术搭配使用,用于来抓取到某个指定服务进程所对应的PID号码,常见的ps命令参数包括有:
-a 显示所有的进程(包括其他用户的)
-u 用户以及其他详细信息
-x 显示没有控制终端的进程
Linux系统中时刻运行着许许多多的进程,如果能够合理的管理它们,绝对有益于对系统的性能优化,Linux系统中进程最常见的5种不同的状态是运行、中断、不可中断、僵死与停止,它们的含义分别是:
R(运行):正在运行或在运行队列中等待。
S(中断):休眠中, 在等待某个条件的形成或接收到信号。
D(不可中断):收到信号不唤醒和不可运行, 进程必须等待直到有中断发生。
Z:(僵死):进程已终止, 但进程描述符存在, 直到父进程调用wait4()系统调用后释放。
T:(停止):进程收到SIGSTOP, SIGSTP, SIGTIN, SIGTOU信号后停止运行。
当执行"ps aux"命令后通常会看到下面格式的进程状态,表格中只是列举了部分输出值,而且正常的输出值中不包括中文注释部分:
top命令用于动态的监视进程活动与系统负载等信息,格式为:“top”。
top命令可真的是太厉害了,它能够动态的查看系统运维状态,完全可以比喻成是“强化版的linuxprobediancom/chapter-02html#23任务管理器”。
top命令前面的五行为系统整体的统计信息:
第1行:系统时间,运行时间,登录终端数,系统负载(分别为1分钟、5分钟、15分钟的平均值,数值越小意味着负载越低)。
第2行:进程总数,运行中的,睡眠中的,停止的,僵死的。
第3行:用户占用资源,系统内核占用资源,改变过优先级的进程,空闲的资源,等待输入输出的时间。
此行数据均为CPU数据并以百分比格式显示,例如"992 id"意味着有992%的CPU处理器资源正在空闲中。
第4行:物理内存总量,使用量,空闲量,作为内核缓存的内存量。
第5行:虚拟内存总量,使用量,空闲量,已被提前加载的内存数据。
查看Linux中所有正在运行的进程 ,可以参考如下方法:
1、通过ps命令的-A或者-e参数来获取系统中所有的进程,这两个参数的作用一样的。
2、通过top命令来获取系统中所有的进程任务 。执行top命令后,在tasks一栏会看到总的任务数。
1)使用lsof命令lsof是一个非常强大的linux工具,她被用来查找哪些程序使用了那些文件。在linux系统下,基本上所有的东西都可以被当作文件来用。socket当然也是一种文件了。所以lsof可以用来查找谁用了某一个端口。具体方法:lsof -i :port_number grep "(LISTEN)"-i是用来查找和网络相关的文件,":"号是必须的,它是标志你查找的是一个端口。port_number就是你要查找的端口号,譬如你要查找是否 有程序占用了oracle的监听端口1521,就可以使用lsof -i :1521 |grep "(LISTEN)"。如果有程序已经占用了,那么下面打印的第二个字段就是该程序的进程id,第一个字段是进程的名字。如果只有losf -i :port_number可能会查到很多应用程序,但这些程序实际并没有占用你指定的端口,这些端口只是连接到本机器或者别的机器的该端口。所以要grep "(LISTEN)“,因为一个端口只可能被一个程序占用的,所以这种方法是可靠的。2)使用netstat 命令大家一定对这个命令比较熟悉了,可能你从没有想到用到来查找哪一个程序的占用了指定的端口。但是netstat -an 的确提供了这种功能。所以有问题了一定要想到先去查找man手册,不过说实话,某些man手册写得让中国人看不懂,那没有办法了,就googe或者 baidu一下吧。执行man netstat命令,你会发现netstat 提供了'-p'的选项,这个选项的功能是告诉你哪个程序占用了该端口,但是她提供的形式比较古怪是以pid/process_name提供的。pid当然 是进程id了,process_name是进程的命令,中间以'/'号分隔。和上面的原因一样,我们只查找listen的端口,netstat 给我们提供了-l的选项,这个选项不是默认的选项。下面以1521端口来看怎么查找到该程序,我们使用下面的命令:netstat -lnpawk 'BEGIN{prt=":1521$"}{if ($4 ~ prt) print $0}'在这里使用awk来匹配第4个字段的模式是为了避免误判。
你可以使用ps命令。它能显示当前运行中进程的相关信息,包括进程的PID。Linux和UNIX都支持ps命令,显示所有运行中进程的相关信息。ps命令能提供一份当前进程的快照。如果你想状态可以自动刷新,可以使用top命令。ps命令输入下面的ps命令,显示所有运行中的进程: # ps aux | less其中,-A:显示所有进程a:显示终端中包括其它用户的所有进程x:显示无控制终端的进程任务:查看系统中的每个进程。 # ps -A # ps -e任务:查看非root运行的进程 # ps -U root -u root -N任务:查看用户vivek运行的进程 # ps -u vivek任务:top命令top命令提供了运行中系统的动态实时视图。在命令提示行中输入top: # top输出:图1:top命令:显示Linux任务按q退出,按h进入帮助。任务:显示进程的树状图。pstree以树状显示正在运行的进程。树的根节点为pid或init。如果指定了用户名,进程树将以用户所拥有的进程作为根节点。 $ pstree输出示例:图2:pstree - 显示进程的树状图任务:使用ps列印进程树 # ps -ejH # ps axjf任务:获得线程信息输入下列命令: # ps -eLf # ps axms任务:获得安全信息输入下列命令: # ps -eo euser,ruser,suser,fuser,f,comm,label # ps axZ # ps -eM任务:将进程快照储存到文件中输入下列命令: # top -b -n1 > /tmp/processlog你也可以将结果通过邮件发给自己: # top -b -n1 | mail -s 'Process snapshot' you@examplecom任务:查找进程使用pgrep命令。pgrep能查找当前正在运行的进程并列出符合条件的进程ID。例如显示firefox的进程ID: $ pgrep firefox下面命令将显示进程名为sshd、所有者为root的进程。 $ pgrep -u root sshd向htop和atop说hellohtop是一个类似top的交互式进程查看工具,但是可以垂直和水平滚动来查看所有进程和他们的命令行。进程的相关 *** 作(killing,renicing)不需要输入PID。要安装htop输入命令: # apt-get install htop或 # yum install htop在命令提示行中输入htop: # htop输出示例:图3:htop - Interactive Linux / UNIX process vieweratop工具atop是一个用来查看Linux系统负载的交互式监控工具。它能展现系统层级的关键硬件资源(从性能角度)的使用情况,如CPU、内存、硬盘和网络。它也可以根据进程层级的CPU和内存负载显示哪个进程造成了特定的负载;如果已经安装内核补丁可以显示每个进程的硬盘和网络负载。
查看系统所有正在运行的进程,可以用ps aux命令(它的-a参数表示,不与终端有关的进程也显示出来)。还有一个和ps命令相似的命令是pstree,pstree命令用于列出正在运行的进程的进程树,所谓进程树就是显示有关系的进程的相关性,也就是显示父子进程之间的关系。pstree命令的常见用法是:pstree -Aup
-A参数表示:显示出来的进程树连接,用ASCII字符来显示
-u参数表示:列出进程的所属用户
-p参数表示:列出每个进程的PID
ps命令和pstree命令是选取一个时间点的进程状态,还有一个top命令可以持续检测进程运行状态,它显示的是动态的信息,有点像Windows的任务管理器(不过top命令是命令行),使用方法:
top -d 数字
-d参数后面接一个数字表示几秒更新一次显示,一般可以设置成2,表示2秒一更新。
以上就是关于Linux怎样查询出当前系统的所有进程全部的内容,包括:Linux怎样查询出当前系统的所有进程、如何查看linux进程状态、linux下怎么查看程序是否启动等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)