挂载点下隐藏文件夹的大小

问题描述 投票:0回答:2

我试图猜测Linux系统上使用的磁盘。问题是,使用“du -kxa / |sort -g”等命令时,我发现使用的空间比文件系统报告的要少(19Gb 分区中的 8Gb)。我怀疑几个挂载点下有隐藏的文件和文件夹。我无法卸载磁盘,因为它是生产机器,无法轻易停止。

问题是:

在Linux上如何获取隐藏在挂载点下的文件夹和文件?有没有办法测量这个空间?

Linux版本:Redhat企业Linux服务器5.3。

linux storage local-storage mount
2个回答
14
投票

这是绑定安装的有用之处之一。假设我有两个独立的文件系统

/usr
/usr/local
,您可以执行以下操作来查看
/usr/local
是否隐藏了任何内容:

mkdir /tmp/usr
mount --bind /usr /tmp/usr
ls /tmp/usr/local
# clean up if necessary
umount /tmp/usr
rmdir /tmp/usr

-2
投票

隐藏文件(其名称以点开头)仅针对

ls
命令和 shell 文件扩展而存在。否则,它们只是名称以点开头的文件。

此外,如果文件没有更多名称,它仍然可以使用文件系统中的空间。当文件仍然被某个进程打开时,可能会发生这种情况,该进程 unlink(2)-ed 其姓氏。

您可以使用

lsof
找出哪些进程正在打开某些文件。您可以使用
/proc/1234/fd
来获取进程 1234 的打开文件。

要获取某个目录下的隐藏文件,您可以使用

 find /some/dir -name '.*' -ls

此外,文件使用的磁盘空间多于其数据所需的空间。详细了解 inode 指针结构inodes文件系统ext4碎片 ...通常,非常小的文件(十几个字节)会占用两个磁盘扇区(例如 1 KB)。

© www.soinside.com 2019 - 2024. All rights reserved.