ls 命令如何计算空间使用量

当使用 ls 命令查看挂载到 UNIX 客户端的 FlexVol 卷的内容时,输出中显示的文件大小可能与该卷的配额报告中显示的空间使用量不相等,具体取决于文件的数据块类型。

ls 命令的输出仅显示某个文件的大小,并且不包括由该文件使用的间接块。 该文件的任何空数据块也会包含到命令的输出中。

因此,如果文件不包含空数据块,则由 ls 命令显示的大小可能小于由配额报告指定的磁盘使用量,因为配额报告中包括间接块。 相反,如果文件包含空数据块,则由 ls 命令显示的大小可能大于由配额报告指定的磁盘使用量。

ls 命令的输出仅显示某个文件的大小,并且不包括由该文件使用的间接块。 该文件的任何空数据块也会包含到命令的输出中。

ls 命令计算的空间使用量与配额报告计算的空间使用量之间的差别的示例

以下配额报告显示了为 qtree q1 实施的磁盘空间限制是 10 MB:
                                      ----Disk----  ----Files-----   Quota
  Volume   Tree      Type    ID        Used  Limit    Used   Limit   Specifier
  -------  --------  ------  -------  -----  -----  ------  ------   ---------
  vol1     q1          tree    user1   10MB  10MB        1       -   q1

...
从 UNIX 客户端使用 ls 命令进行查看时,存在于同一个 qtree 中的文件的大小可能会超过配额限制,如以下示例所示:
[user1@lin-sys1 q1]$ ls -lh
-rwxr-xr-x  1 user1 nfsuser  27M Apr 09  2013 file1