其实,上面这些文件鸟哥在此½议您可以使用
cat
去查阅看看,不必深入了½,
不过,观看过文件
内容后,毕竟会比½有感觉啦!如果未来您想要自行撰写某些工具软件,
那么这个目录底下的相关
文件可能会对您有点帮助的喔!
16.4.3.
查询已开启
文件
或已执行½程开启之
文件
其实还有一些与½程相关的指令可以值得参考与应用的,我们来谈一谈:
.
fuser
:½由
文件
(
或文件系统
)
找出正在使用该
文件
的½程
有的时候我想要知道我的½程到底在这次启动过程中开启了多少文件,可以利用
fuser
来观察啦!
举
例来说,你如果卸除时发现系统通知:『
device is busy
』,那表示这个文件系统正在忙碌中,
表
示有某支½程有利用到该文件系统啦!那么你就可以利用
fuser
来追踪啰!
fuser
语法有点像这样:
[root@study ~]#
fuser [
-
umv] [
-
k [i] [
-
signal]] file/dir
选项
与
参数
:
-
u
:除了
½
程的
PID
之外,同
时
列出
该½
程的
拥
有者;
-
m
:后面½的那
个档
名
会
主
动
的上提到
该
文件系
统
的最
顶层
,
对
umount
不成功很有效!
-
v
:可以列出每
个
文件
与
½
程
还
有指令的完整相
关
性!
-
k
:找出使用
该
文件
/
目
录
的
PID
,并
试图
以
SIGKILL
这个讯号给
予
该
PID
;
-
i
:必
须
与
-
k
配合,在
删
除
PID
之前
会
先
询问
使用者意愿!
-
signal
:例如
-
1
-
15
等等,若不加的
话
,
预设
是
SIGKILL (
-
9)
啰
!
范例一:找出目前所在目
录
的使用
PID/
所
属账号
/
权
限
为
何?
[root@study ~]#
fuser
-
uv .
USER PID ACCESS COMMAND
/root: root 13888 ..c.. (root)bash
root 31743 ..c.. (root)bash
看到输出的½果没?他说『
.
』底下有两个
PID
分别为
13888, 31743
的½程,该½程属于
root
且指
令为
bash
。
比½有趣的是那个
ACCESS
的项目,那个项目代表的意义为:
.
c
:此½程在当前的目录下
(
非次目录
)
;
.
e
:可被触发为执行状态;
.
f
:是一个被开启的文件;
.
r
:代表顶层目录
(root directory)
;
.
F
:该文件被开启了,不过在等待回应中;
.
m
:可能为分享的动态函式库;
那如果你想要查阅某个文件系统底下有多少½程正在占用该文件系统时,那个
-m
的选项就很有帮
助了!
让我们来做几个简单的测试,包括实体的文件系统挂载与
/proc
这个虚拟文件系统的内容,
看
看有多少的½程对这些挂载点或其他目录的使用状态吧!
范例二:找到所有使用到
/proc
这个
文件系
统
的
½
程吧!