当前位置:文档之家› aix命令之fuser命令

aix命令之fuser命令

aix命令之fuser命令

aix命令之fuser命令的四步:
1.确认挂接点有那些进程需要杀掉

#fuser -cu /mount_point

2.向进程发出SIGKILL信号:

#fuser -ck /mount_point

3.确认看是否还有进程在访问挂接点

#fuser -c /mount_point

4.umount挂接点

#umount /mount_point



另附网上的一个人的学习笔记

今天跟系统的同事学了一个命令:fuser


AIX fuser用法(删除在设备和文件上的连接)

删除一个文件系统或者LV的时候,,需要unmount该文件系统, 可能有一些进程连接在上面,可以用fuser清除后做unmount

fuser 指令
用途
使用文件或文件结构识别进程。
语法
fuser [ -c | -d | -f ] [ -k ] [ -u ] [ -x ] [ -V ]文件 ...
说明
此 fuser 命令列出了本地进程的进程号,那些本地进程使用File 参数指定的本地或远程文件。对于阻塞特别设备,此命令列出了使用该设备上任何文件的进程。
每个进程号后面都跟随一个字母,该字母指示进程如何使用文件。
c 将此文件作为当前目录使用。
e 将此文件作为程序的可执行对象使用。
r 将此文件作为根目录使用。
s 将此文件作为共享库(或其它可装载对象)使用。
进程号被写入标准输出(在进程号之间有空格的行中)。一个换行符被写入标准错误(在每个文件操作数的最后一个输出之后)。其他所有输出被写入标准错误。
此 fuser 命令不会检测有 mmap 区域的进程,其中相关的文件描述符已从此被关闭。
标记
-c 包含 File的文件系统中关于任何打开的文件的报告。
-d 暗示使用了 -c 和 -x 标志。关于任何与文件系统(自父目录删除的)无链接的打开文件的报告。当与 -V 标志一起使用时,它也会报告被删除文件的节点号和大小。
-f 仅对文件的打开实例报告。
-k 将 SIGKILL 信号发送到每个本地进程。仅有根用户能终止另一用户的进程。
-u 为进程号后圆括号中的本地进程提供登录名。
-V 提供详细输出。
-x 与 -c 或 -f 连用,报告除标准 fuser 输出以外的可执行的和可载入的对象。
示例
若要列出使用 /etc/passwd 文件的本地进程的进程号,请输入:
fuser /etc/passwd要列出使用 /etc/filesystems 文件的进程的进程号和用户登录名,请输入:
fuser -u /etc/filesystems要终止全部使用给定的文件系统的进程,请输入:
fuser -k -x -u /dev/hd1 -OR-
fuser -kxuc /home任一命令都列出了进程号和用户名,然后终止每个正在使用 /dev/hd1 (/home) 文件系统的进程。仅有根用户能终止属于另一用户的进程。如果你正在试图卸下 /dev/hd1 文件系统,而一个正在访问 /dev/hd1 文件系统的进程不允许这样,您可能希望使用此命令。
要列出正在使用文件(已从给定文件系统

删除的文件)的全部进程,请输入:
fuser -d /usr文件
/dev/kmem 用于系统映象。
/dev/mem 也用于系统映象。
相关信息
killall 命令、mount 命令和 ps 命令。
有关用户识别和认证、任意访问控制、可信计算基础以及审计的更多信息,请参考《AIX 5L V5.2 安全指南》中的『独立的系统安全性』。



事情的起因是:一个同事启用了sql_trace,结果生成了一个超过2G的TRC文件,使得磁盘的使用率达到了100%,这很危险,需要立即清理该文件,释放磁盘空间,否则数据库有可能宕掉。另一位同事使用了如下命令来将这个trc文件移到了一个更大的磁盘下:

mv ******.trc /archivelog/udump/

结果命令成功之行了,可是发现磁盘的空间并没有释放,仍然使用率100%。请教系统的同事,被告知可能是使用哪个文件的进程仍然占有资源没有释放。可以使用fuser命令查看一下

fuser -u ******.trc 查看使用这个文件的进程及用户

fuser -dV $ORACLE_BASE/admin/psdb/udump 查看这个目录中所有的占有资源的进程



结果终于找到了那个进程ID,通过id很容易找到了进程名。果然是oracle的trace进程,可是又不能直接kill掉。

最后在SQLPLUS环境下使用ORADEBUG SETOSPID ****

ORADEBUG CLOSE_TRACE

这两条命令,终于资源被释放了,磁盘使用率也下来了。

今天的收获有三点:

1。SQL 追踪极易产生超大的文件,所以要慎用。

2。FUSER 命令

3。ORADEBUG的一些知识。这是ORACLE没有再文档中写出的一个工具,关键时刻可能有用。

附:ORADEBUG的两个命令含义和用法,具体其他命令用法请参考相关文档。

CLOSE_TRACE command
To close the current trace file use

ORADEBUG CLOSE_TRACE
SETOSPID command
Before using ORADEBUG commands, a process must be selected. Depending on the commands to be issued, this can either be the current process or another process

Once a process has been selected, this will be used as the ORADEBUG process until another process is selected

The SETOSPID command selects the another process using the operating system PID as the ORADEBUG process

The syntax is

ORADEBUG SETOSPID pid
where pid is the operating system process ID of the target process For example

ORADEBUG SETOSPID 34345
The operating system process ID is the PID on Unix systems and the thread number on Windows NT/2000 systems

On Unix the PID of interest may have been identified using a top or ps command



fuser 指令

用途
使用文件或文件结构识别进程。

语法
fuser [ -c | -d | -f ] [ -k ] [ -u ] [ -x ] [ -V ]文件 ...

描述
此 fuser 命令列出了本地进程的进程号,那些本地进程使用File 参数指定的本地或远程文件。对于阻塞特别设备

,此命令列出了使用该设备上任何文件的进程。

每个进程号后面都跟随一个字母,该字母指示进程如何使用文件。

c 将此文件作为当前目录使用。
e 将此文件作为程序的可执行对象使用。
r 将此文件作为根目录使用。
s 将此文件作为共享库(或其它可装载对象)使用。

进程号被写入标准输出(在进程号之间有空格的行中)。一个换行符被写入标准错误(在每个文件操作数的最后一个输出之后)。其他所有输出被写入标准错误。

此 fuser 命令不会检测有 mmap 区域的进程,其中相关的文件描述符已从此被关闭。

标志

-c 包含 File的文件系统中关于任何打开的文件的报告。
-d 暗示使用了 -c 和 -x 标志。关于任何与文件系统(自父目录删除的)无链接的打开文件的报告。当与 -V 标志一起使用时,它也会报告被删除文件的节点号和大小。
-f 仅对文件的打开实例报告。
-k 将 SIGKILL 信号发送到每个本地进程。仅有 root 用户能终止另一用户的进程。
-u 为进程号后圆括号中的本地进程提供登录名。
-V 提供详细输出。
-x 与 -c 或 -f 连用,报告除标准 fuser 输出以外的可执行的和可载入的对象。

示例
1.要列出使用 /etc/passwd 文件的本地进程的进程号,请输入:

fuser /etc/passwd

2.要列出使用 /etc/filesystems 文件的进程的进程号和用户登录名,请输入:

fuser -u /etc/filesystems

3.要终止使用给定文件系统的所有进程,请输入:

fuser -k -x -u -c /dev/hd1 或者

fuser -kxuc /home

任一命令都列出了进程号和用户名,然后终止每个正在使用 /dev/hd1 (/home) 文件系统的进程。仅有 root 用户能终止属于另一用户的进程。如果您正在试图卸下 /dev/hd1 文件系统,而一个正在访问 /dev/hd1 文件系统的进程不允许这样,您可能希望使用此命令。

4.要列出正在使用已从给定文件系统删除的文件的全部进程,请输入:

fuser -d /usr



fuser就知查看那一个进程正在使用该文件系统,
哪么有没有一个命令是可以知道那一个文件系统正在被改进程使用?

例如我输入
nohup vmstat 2 >>/tmp/vmstat.log &

ps -ef |grep vmstat

只看到"vmstat 2"
知道它正在运行, 但是有什么办法可以看到这个命令正在使用/tmp/vmstat.log呢?

谢谢
procfiles -n pic


fuser命令四步骤
命令, fuser
(1)用fuser命令的四步:
1.确认挂接点有那些进程需要杀掉
#fuser -cu /mount_point

2.向进程发出SIGKILL信号:
#fuser -ck /mount_point

3.确认看是否还有进程在访问挂接点
#fuser -c /mount_point

4.umount挂接点
#umount /mount_point

AIX中如何解决不能释放光驱的问题 ?
#fuser -kxuc /dev/cd#
或#fuser /dev/cd# 列出当前访问此设备的进程,然后

使用kill -9 pid终止所有进程



AIX fuser用法(删除在设备和文件上的连接)


删除一个文件系统或者LV的时候,,需要unmount该文件系统, 可能有一些进程连接在上面,可以用fuser清除后做unmount

fuser 指令
用途
使用文件或文件结构识别进程。
语法
fuser [ -c | -d | -f ] [ -k ] [ -u ] [ -x ] [ -V ]文件 ...
说明
此 fuser 命令列出了本地进程的进程号,那些本地进程使用File 参数指定的本地或远程文件。对于阻塞特别设备,此命令列出了使用该设备上任何文件的进程。
每个进程号后面都跟随一个字母,该字母指示进程如何使用文件。
c 将此文件作为当前目录使用。
e 将此文件作为程序的可执行对象使用。
r 将此文件作为根目录使用。
s 将此文件作为共享库(或其它可装载对象)使用。
进程号被写入标准输出(在进程号之间有空格的行中)。一个换行符被写入标准错误(在每个文件操作数的最后一个输出之后)。其他所有输出被写入标准错误。
此 fuser 命令不会检测有 mmap 区域的进程,其中相关的文件描述符已从此被关闭。
标记
-c 包含 File的文件系统中关于任何打开的文件的报告。
-d 暗示使用了 -c 和 -x 标志。关于任何与文件系统(自父目录删除的)无链接的打开文件的报告。当与 -V 标志一起使用时,它也会报告被删除文件的节点号和大小。
-f 仅对文件的打开实例报告。
-k 将 SIGKILL 信号发送到每个本地进程。仅有根用户能终止另一用户的进程。
-u 为进程号后圆括号中的本地进程提供登录名。
-V 提供详细输出。
-x 与 -c 或 -f 连用,报告除标准 fuser 输出以外的可执行的和可载入的对象。
示例
若要列出使用 /etc/passwd 文件的本地进程的进程号,请输入:
fuser /etc/passwd要列出使用 /etc/filesystems 文件的进程的进程号和用户登录名,请输入:
fuser -u /etc/filesystems要终止全部使用给定的文件系统的进程,请输入:
fuser -k -x -u /dev/hd1 -OR-
fuser -kxuc /home任一命令都列出了进程号和用户名,然后终止每个正在使用 /dev/hd1 (/home) 文件系统的进程。仅有根用户能终止属于另一用户的进程。如果你正在试图卸下 /dev/hd1 文件系统,而一个正在访问 /dev/hd1 文件系统的进程不允许这样,您可能希望使用此命令。
要列出正在使用文件(已从给定文件系统删除的文件)的全部进程,请输入:
fuser -d /usr文件
/dev/kmem 用于系统映象。
/dev/mem 也用于系统映象。
相关信息
killall 命令、mount 命令和 ps 命令。
有关用户识别和认证、任意访问控制、可信计算基础以及审计的更多信息,请参考《AIX 5L V5.2 安全指南》中的『独立的系统安全性』。



相关主题
文本预览
相关文档 最新文档