王的愚蠢之程序管理

命令 & 把命令在背景中运行在这里插入图片描述
快捷键ctrl+z 暂停目前正在进行的工作
在这里插入图片描述
jobs 查看目前工作状态
-l 列出pid号码 -r 列出正在背景中进行的工作 -s 列出背景中暂停的工作
在这里插入图片描述
fg %工作号码 使暂停的工作拿到前景中继续运行
在这里插入图片描述
bg %工作号码 使暂停的工作在背景中继续运行
在这里插入图片描述
kill 选项 %工作号码 管理背景中的工作

-l 列出能使用的讯号 -9 强制删除
在这里插入图片描述

离线管理问题

如果你想要让在背景的工作在你登出后还能够继续的执行,那么使用nohup 搭配& 程序观察
ps aux:观察系统所有的程序资料
ps -1A:也是能够观察所有系统的资料
ps axjf:连同部分程序树的状态
选项与参数
-A:所有的process_均显示出来,与-e具有同样的效用;
-a:不与termina1有关的所有process;
-u :有效使用者(effective user)相关的process;
x:通常与a这个参数一起使用,可列出较完整资讯。
输出格式规划:
l:较长:较详细的将该PID的的资讯列出;
j :工作的格式(jobs.format)
-f:做一个更为完整的输出。
(1)将目前属于自己这次登入的PID与相关资讯列示出来
在这里插入图片描述
F:代表这个程序旗标(process flags),说明这个程序的总结权限,常见号码有:
若为4 表示此程序的权限为root ;
若为1则表示此子程序仅进行复制(fork)而没有实际执行(exec)。
S:代表这个程序的状态(STAT),主要的状态有:
R (Running):该程式正在运作中;
S (Sleep):该程式目前正在睡眠状态(idle),但可以被唤醒(signal)。
D :不可被唤醒的睡眠状态,通常这支程式可能在等待I/O 的情况(ex>列印)
T :停止状态(stop),可能是在工作控制(背景暂停)或除错(traced) 状态;
Z (Zombie):僵尸状态,程序已经终止但却无法被移除至记忆体外。
UID/PID/PPID:代表『此程序被该UID 所拥有/程序的PID 号码/此程序的父程序PID 号码』
C:代表CPU 使用率,单位为百分比;
PRI/NI:Priority/Nice的缩写,代表此程序被CPU所执行的优先顺序,数值越小代表该程序越快被CPU执行。详细的PRI与NI将在下一小节说明。
ADDR/SZ/WCHAN:都与记忆体有关,ADDR 是kernel function,指出该程序在记忆体的哪个部分,如果是个running 的程序,一般就会显示『 - 』 / SZ 代表此程序用掉多少记忆体/ WCHAN 表示目前程序是否运作中,同样的, 若为- 表示正在运作中。
TTY:登入者的终端机位置,若为远端登入则使用动态终端介面(pts/n);
TIME:使用掉的CPU 时间,注意,是此程序实际花费CPU 运作的时间,而不是系统时间;
CMD:就是command 的缩写,造成此程序的触发程式之指令为何。
(2)列出目前所有的的正在记忆体当中的程序
在这里插入图片描述
USER:该process 属于那个使用者帐号的。
PID :该process 的程序识别码。
%CPU:该process 使用掉的CPU 资源百分比;
%MEM:该process 所占用的实体记忆体百分比;
VSZ :该process 使用掉的虚拟记忆体量(Kbytes)。
RSS :该process 占用的固定的记忆体量(Kbytes)。
TTY :该process 是在那个终端机上面运作,若与终端机无关则显示,另外, tty1-tty6 是本机上面的登入者程序,若为pts/0 等等的,则表示为由网路连接进主机的程序。
STAT:该程序目前的状态,状态显示与ps -l 的S 旗标相同(R/S/T/Z)
START:该process 被触发启动的时间;
TIME :该process 实际使用CPU 运作的时间。
COMMAND:该程序的实际指令为何。

(3)以范例一的显示内容,显示出所有的程序
在这里插入图片描述
每个栏位与ps -1的输出情况相同,但显示的程序则包括系统所有的程序。
(4)列出类似程序树的程序显示
在这里插入图片描述
(5)找出与cron与rsyslog这两个服务有关的PID号码在这里插入图片描述

top 动态观察程序的变化

top [一d数字]l top [一bnp]选项与参数:
-d :后面可以接秒数,就是整个程序画面更新的秒数。预设是5秒;
-b :以批次的方式执行top ,还有更多的参数可以使用。通常会搭配资料流重导向来将批次的结果输出成为档案。
-n:与-b搭配,意义是:需要进行几次top的输出结果。
p:指定某些个PID来进行观察监测而已。

在top执行过程当中可以使用的按键指令:
?:显示在top,当中可以输入的按键指令;
P:以cPu的使用资源排序显示:
M:以Memory.的使用资源排序显示,
N: 以PID来排序。
T :由该Process便用的CPu时间累积(TIME+)排序。
k :给子某个PID一个讯号(signal)
r :给予某个PID重新制订一个nice值。
q:离开top软体的按键。
(1)每两秒更新一次top,观察整体资讯。
在这里插入图片描述
在预设的情况下,每次更新程序资源的时间为5 秒,不过,可以使用-d 来进行修改。top 主要分为两个画面,上面的画面为整个系统的资源使用状态,基本上总共有六行,显示的内容依序是:
第一行(top…):这一行显示的资讯分别为:
目前的时间,亦即是00:53:59 那个项目;
开机到目前为止所经过的时间,亦即是up 6:07, 那个项目;
已经登入系统的使用者人数,亦即是3 users, 项目;
系统在1, 5, 15分钟的平均工作负载。我们在第十五章谈到的batch 工作方式为负载小于0.8就是这个负载啰!代表的是1, 5, 15分钟,系统平均要负责运作几个程序(工作)的意思。越小代表系统越闲置,若高于1得要注意你的系统程序是否太过繁复了!
第二行(Tasks…):显示的是目前程序的总量与个别程序在什么状态(running, sleeping, stopped, zombie)。比较需要注意的是最后的zombie 那个数值,如果不是0 !好好看看到底是那个process 变成僵尸了吧?
第三行(%Cpus…):显示的是CPU 的整体负载,每个项目可使用? 查阅。需要特别注意的是wa 项目,那个项目代表的是I/O wait, 通常你的系统会变慢都是I/O 产生的问题比较大!因此这里得要注意这个项目耗用CPU 的资源喔!另外,如果是多核心的设备,可以按下数字键『1』来切换成不同CPU 的负载率。
第四行与第五行:表示目前的实体记忆体与虚拟记忆体(Mem/Swap) 的使用情况。再次重申,要注意的是swap 的使用量要尽量的少!如果swap 被用的很大量,表示系统的实体记忆体实在不足!
第六行:这个是当在top 程式当中输入指令时,显示状态的地方。
至于top 下半部分的画面,则是每个process 使用的资源情况。比较需要注意的是:
PID :每个process 的ID 啦!
USER:该process 所属的使用者;
PR :Priority 的简写,程序的优先执行顺序,越小越早被执行;
NI :Nice 的简写,与Priority 有关,也是越小越早被执行;
%CPU:CPU 的使用率;
%MEM:记忆体的使用率;
TIME+:CPU 使用时间的累加;
top 预设使用CPU 使用率(%CPU) 作为排序的重点,如果你想要使用记忆体使用率排序,则可以按下『M』, 若要回复则按下『P』即可。如果想要离开top 则按下『 q 』吧!
如果你想要将top 的结果输出成为档案时, 可以这样做:
在这里插入图片描述
观察指定的单一程序:
我们自己的bash PID可由$$变数取得,使用top持续观察该PID
在这里插入图片描述
关于pstree
选项与参数:
-A:各程序树之间的连接以ASc1I字元来连接;
-U :各程序树之间的连接以万国码的字元来连接。在某些终端介面下可能会有错误。
-p :并同时列出每个process的PID :
-u:并同时列出每个process的所属帐号名称。
(1)列出目前系统上面所有的程序树的相关性
在这里插入图片描述
(2)承上题 ,同时秀出PID与users
在这里插入图片描述
可以加管道符号缩小范围
在这里插入图片描述
killall -signal 指令名称
kill -1 重启
  -9 强杀
  -15正常中断
grep -v表示去除包含grep的进程,awk '{$2}'表示输出第二个元素就是pid,如果改成1则输出root
killall 更方便的操作(针对服务的操作)
利用『下达指令的名称』来给予讯号
nice 选项 赋予指令新的nice值

nice -n -9 vim & 使指令vim 减少9
在这里插入图片描述
renice 选项 PID 对nice值的调整

renice -5 1310 使程序find的nice值减5
在这里插入图片描述
free 选项 查看内存
free -m 显示目前系统的记忆体容量
在这里插入图片描述
uname 选项 查看系统与核心的信息
uname -a 查看系统的基本信息
在这里插入图片描述
uptime 查看系统启动时间与工作负载在这里插入图片描述
netstat 选项 追踪网路或插槽档
netstat 查看已经建立的网路连线
在这里插入图片描述
netstat -tulnp 找出已在监听的网路
在这里插入图片描述
vmstat 选项 侦测系统资源变化
vmstat 1 3 统计CPU状态每秒1次,共计3次
在这里插入图片描述
fuser 选项 目录名 由档案找出正在使用该档案的程序
fuser -uv . 找出当前目录下的程序 u 列出程序拥有者 v 列出档案与程序的相关性
fuser -mvu /proc 找出proc目录下的程序 m 档名上提到档案系统最高层
在这里插入图片描述
lsof 选项 由程序找出正在使用的档案
lsof 列出所有已经被开启的档案
lsof -u root -a -U 列出关于root的被开启的档案
在这里插入图片描述
lsof +d /dev 列出所有被启动的周边装置在这里插入图片描述
pidof 选项 列出正在执行程序的PID
pidof vim find 列出vim与find的PID
在这里插入图片描述

©️2020 CSDN 皮肤主题: 书香水墨 设计师:CSDN官方博客 返回首页