Isilon:如何使用 fstat 命令列出节点上打开的文件

Summary: fstat命令可用于列出在特定进程中打开的节点上的打开文件。如果目录接近容量限制,打开的文件列表可帮助您监视写入大型文件的进程。

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Instructions

流程

 

  1. 在群集中的任意节点上打开 SSH 连接,然后使用“root”帐户登录。
  2. 执行以下任一项作:
    • 要列出节点上的打开文件,请运行以下命令:
       
      fstat

       
    • 要列出目录中打开的文件,请运行以下命令,其中 <目录> 是要检查的目录:
       
      fstat -f <directory>

       
    • 若要列出由特定进程打开的文件,请运行以下命令,其中 <pid> 是要检查的进程 ID:
       
      fstat -p <pid>

       

示例

在以下示例中, fstat 命令 用于对接近容量的 /var 目录进行故障处理。如果在 /var 目录中未找到大型文件,这可能表示文件已取消链接。取消链接的文件会继续占用磁盘空间,因为进程打开了该文件。您可以使用 fstat 查看这是否为 true。

  1. 在群集中的任意节点上打开 SSH 连接,并使用“root”帐户登录。
  2. 运行以下命令:
     
    fstat -f /var | grep /var


    grep命令从输出中删除套接字和管道,使输出更易于解释。如果进程保持文件打开状态,则会显示类似于以下内容的输出:
    root winbindd 98281 4 /var 69612 -rw------- 100120000 rw
     

    在此示例中, WinBindd 进程(进程 ID 98281)打开的文件约为 100 MB(100,120,000 字节)。该文件的索引节点编号为 69612。

  3. 运行以下命令以显示该文件的文件名:
     
    find -x /var -inum 69612 -print

     
  4. 如果某个进程持有一个大型文件打开状态,并且找不到信息节点,则该文件已取消链接。在这种情况下,您可以停止并重新启动使文件保持打开状态的一个或多个进程。有关如何停止和重新启动进程的更多信息,请参阅 通过使用 killall -9 用于停止进程的命令开始, 89421

 

谨慎:
在停止进程之前,请务必考虑是否可能产生负面后果。例如,停止 lwiod 进程可能会断开用户的连接并导致数据不可用。

Affected Products

Isilon

Products

PowerScale OneFS
Article Properties
Article Number: 000021402
Article Type: How To
Last Modified: 18 Aug 2025
Version:  6
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.