所以啰,一个称职的系统管理员,必须要熟悉½程的管理流程才行,否则当系统发生问题时,还真是
很难½决问题呢!
底下我们会先½绍如何观察½程与½程的状态,然后再加以½程控制啰!
16.3.1
½程的观察
既然½程这么重要,那么我们如何查阅系统上面正在运作当中的½程呢?很简单啊!
利用静态的
ps
或者是动态的
top
,还能以
pstree
来查阅½程树之间的关系喔!
.
ps
:½某个时间点的½程运作情况撷取下来
[root@study ~]#
ps aux
<==
察系
所有的
½
[root@study ~]#
ps
-
lA
<==
也是能
够观
察所有系
[root@study ~]#
ps axjf
<==
同部分
½
树状态
选项
参数
-
A
:所有的
process
示出
,与
-
e
具有同
的效用;
-
a
:不与
terminal
的所有
process
-
u
:有效使用者
(effective user)
process
x
:通常与
a
这个参数
一起使用,可列出
½
完整信息。
出格式
划:
l
½长
½详细
½该
PID
的的信息列出;
j
:工作的格式
(jobs format)
-
f
:做一
完整的
出。
鸟哥个人认为
ps
这个指令的
man page
不是很好查阅,因为很多不同的
Unix
都使用这个
ps
来查
阅½程状态,
为了要符合不同版本的需求,所以这个
man page
写的非常的庞大!因此,通常鸟哥
都会½议你,直½背两个比½不同的选项,
一个是只能查阅自己
bash
½程的『
ps -l
』一个则是可
以查阅所有系统运作的½程『
ps aux
!注意,你没看错,是『
ps aux
』没有那个减号
(-)
!先
来看看关于自己
bash
½程状态的观察:
o
½观察自己的
bash
相关½程:
ps -l
范例一:
½
目前
于您自己
次登入的
PID
与相
信息列示出
(
只与自己的
bash
)
[root@study ~]#
ps
-
l
F S UID PID
PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD
4 S 0 14830 13970 0 80 0
-
52686 poll_s pts/0 00:00:00 sudo
4 S 0 14835 14830 0 80 0
-
50511 wait pts/0 00:00:00 su
4 S 0 14836 14835 0 80 0
-
29035 wait pts/0 00:00:
00 bash
0 R 0 15011 14836 0 80 0
-
30319
-
pts/0 00:00:00 ps
#
还记
说过
,非必要不要使用
root
直½登入吧?
从这个
ps
-
l
的分析,你也可以
发现
#
哥其
是使用
sudo
root
的身份~否
则连测试
机,
哥都是使用一般
账号
登入的!
系统整体的½程运作是非常多的,但如果使用
ps -l
则½列出与你的操作环境
(bash)
有关的½程
而已,
亦即最上层的父½程会是你自己的
bash
而没有延伸到
systemd (
后续会½待!
)
这支½程
去!那么
ps -l
秀出来的资料有哪些呢?
我们就来观察看看: