面试说本身平时在 Linux 系统进行开发,了解一些 Linux 经常使用命令,而后就开始问,可是不会问经常使用的一些简单命令,都是结合应用场景来进行提问。并且基本上是和进程管理结合的。抽时间进行一个全面的总结面试
主要就是若是你使用 Linux 操做系统,那么服务器若是是个很忙碌的系统,你确定要知道如何定位最耗资源的那个进程,而后可以将其杀死;此外,若是某个程序产生了一个有问题的进程在内存中,你又该如何找出并将其删除;若是有五六项工做在系统中运行,但其中有一项工做才是最重要的,你怎么定位并使其优先执行?bash
指将某个时间点的进程运行状况选取下来服务器
ps -ef |grep ^ 列出须要进程
ps -aux 显示进程信息,包括无终端的(x)和针对用户(u)的进程
-e 显示全部进程。
-f 全格式。
-a 显示终端上的全部进程,包括其余用户的进程。
-r 只显示正在运行的进程。
-u 以用户为主的格式来显示程序情况。
-h 不显示标题。
-l 长格式。
-w 宽输出。
复制代码
leader@leader:~$ ps aux | egrep '(cron|syslog)'
复制代码
范例一: 列出目前系统上全部进程树的相关性ui
leader@leader:/tmp$ pstree -A
复制代码
范例二:同时显示 PID 和 usersspa
leader@leader:/tmp$ pstree -Aup
复制代码
动态查看进程的变化
范例一:每两秒更新依次 top,查看总体信息操作系统
leader@leader:~$ top -d 2
复制代码
范例二:将 top 的信息进行 2 次,而后将结果写入到 /tmp/top.txtcode
leader@leader:~$ top -b -n 2 > /tmp/top.txt
复制代码
htop 与 top 相似,可是 htop 是交互式的文本模式的进程查看器。它经过文字图形化地显示每个进程的 CPU 和内存使用量、swap 使用量。 使用上下光标键选择进程,F7 和 F8 改变优先级,F9 杀死进程进程
用于设置和改变进程的优先级。(提升一个进程的优先级,内核会分配更多CPU时间片给这个进程。) 默认状况下,进程以 0 的优先级启动。进程优先级能够经过top命令显示的 NI(nice value)列查看。内存
进程优先级值的范围从-20到19。值越低,优先级越高。 (sudo)nice <优先值> <进程名> 经过给定的优先值启动一个程序资源
renice命令能够改变正在运行的进程优先值,用户只能改变属于他们本身的进程的优先值。
renice -n 4 -p 3806 改变指定进程的优先值
//初始优先值为0的3806号进程优先值已经变成了 4 .
sudo renice -3 -u/-g mint 经过指定用户和组来改变进程优先值
//用户为 mint 的全部进程优先值变为 -3。
复制代码
强制杀死进程,使用-9参数。
若是不知道进程PID(进程 ID 号)或者打算用名字杀死进程时候,使用 killall。
kill <pid>
kill -9 <pid>
killall -9    杀死全部拥有一样名字的进程
若是你使用kill,你须要知道进程ID号。pkill是相似的命令,但使用模式匹配,如进程名,进程拥有者等。
复制代码
使用‘bg’命令能够将任务放在后台执行,而用‘fg’能够调到前台来使用。
咱们能够经过‘&’在后台启动一个程序:
find .-name *iso >/tmp/res.txt &
正在运行的程序,能够经过“CTRL+Z”和“bg”命令组合放到后台运行。
可使用‘jobs’命令列出全部后台进程。
使用‘fg’命令能够将后台程序调到前台执行。
fg %进程id
复制代码