站长网 Linux 从lsof开始,深入研究Linux虚拟文件系统

从lsof开始,深入研究Linux虚拟文件系统

有时会出现这样的情况,磁盘空间显示已经被占满,但是在查看磁盘的具体文件占用情况时,发现磁盘仍然有很大的空余空间。 1.执行df命令查看磁盘使用情况,发现磁盘已经满了。 -bash-4.2$df-Th FilesystemTypeSizeUsedAvailUse%Mountedon /dev/vda1ext430G30

有时会出现这样的情况,磁盘空间显示已经被占满,但是在查看磁盘的具体文件占用情况时,发现磁盘仍然有很大的空余空间。

1.执行df命令查看磁盘使用情况,发现磁盘已经满了。

-bash-4.2$ df -Th  

Filesystem     Type      Size  Used Avail Use% Mounted on  

/dev/vda1      ext4       30G    30G 0      100% /  

devtmpfs       devtmpfs  489M     0  489M   0% /dev  

tmpfs          tmpfs     497M     0  497M   0% /dev/shm  

tmpfs          tmpfs     497M   50M  447M  11% /run  

tmpfs          tmpfs     497M     0  497M   0% /sys/fs/cgroup 

2.执行 du 命令查看各个目录的磁盘占用情况,把各个目录文件的大小相加,发现并没有占满磁盘,有10多G空间莫名失踪。

-bash-4.2$ du -h –max-depth=1 /home16M /home/logs11G /home/serverdog11G /home 

3.为何会出现这样的情况呢?

因为虽然文件已被删除,但是一些进程仍然打开这些文件,因此其占用的磁盘空间并没有被释放。执行lsof 命令显示打开已删除的文件。将有问题的进程重启(或,清空),磁盘空间就会得到释放。

-bash-4.2# lsof | grep deletemysqld     2470         mysql    4u      REG              253,1           0     523577 /var/tmp/ibfTeQFn (deleted)  

mysqld     2470         mysql    5u      REG              253,1           0     523579 /var/tmp/ibaHcIdW (deleted)  

mysqld     2470         mysql    6u      REG              253,1           0     523581 /var/tmp/ibLjiALu (deleted)  

mysqld     2470         mysql    7u      REG              253,1           0     523585 /var/tmp/ibCFnzTB (deleted)  

mysqld     2470         mysql   11u      REG              253,1           0     523587 /var/tmp/ibCjuqva (deleted) 

那么,Linux 的文件系统,到底为什么这么设计呢?要了解这些,就要先弄清楚并不容易,下面将从一些基本概念入手,一步步将这些梳理清楚:

 什么是虚拟文件系统(VFS:virtual filesystem)?

 什么是通用文件模型?

 超级块对象(superblock object)

 索引节点对象(inode object)

 文件对象(file object)

 目录项对象(dentry object)

 文件的概念

 文件的表达

 内存表达

 磁盘表达

 目录树的构建

 软链接 vs 硬链接

 文件 & 磁盘管理

 索引节点状态

 文件 & 进程管理

 操作:

打开&删除

虚拟文件系统(virtual filesystem)

下图显示了 Linux 操作系统中负责文件管理的基本组件。上半区域为用户模式,下半区域为内核模式。应用程序使用标准库libc来访问文件,库将请求映射到系统调用,以便进入内核模式。

本文来自网络,不代表站长网立场,转载请注明出处:https://www.zwzz.com.cn/html/server/linux/2021/0527/7015.html

作者: dawei

【声明】:站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。
联系我们

联系我们

0577-28828765

在线咨询: QQ交谈

邮箱: xwei067@foxmail.com

工作时间:周一至周五,9:00-17:30,节假日休息

返回顶部