IT袋

当前位置:主页 > 经验教程 > 建站编程 >

如何解决服务器存储inode耗尽的问题

如何解决服务器存储inode耗尽的问题

时间:2023-09-18 06:11:41 来源:IT袋 作者:苏晓敏
导读:如何解决服务器存储inode耗尽的问题,文章导读:如何解决服务器存储inode耗尽的问题的内容,如有不对的地方欢迎指正! 今天群里一朋友遇到这样一个问题,明明硬盘只用了 30% 左右的空间,但是却无法写入

如何解决服务器存储inode耗尽的问题

文章导读:如何解决服务器存储inode耗尽的问题的内容,如有不对的地方欢迎指正!

今天群里一朋友遇到这样一个问题,明明硬盘只用了 30% 左右的空间,但是却无法写入文件。

使用 df -iT命令查看文件系统使用情况时,发现根目录的 inode 使用率竟然是 100%。

后来通过聊天得知,原来他的服务器主要用于存储 1KB 左右的小文件,这一下就破案了。

如何解决服务器存储inode耗尽的问题

inode 主要用来记录文件的属性,及此文件的数据所在的块编号。

每一个文件会占用一个 inode,因此如果都是小文件的话,那么就会出现 inode 已经耗尽,但文件系统还有很大的空闲空间,从而无法写入新文件。

如何获得更多的 inode

其实在创建 ext4 文件系统时,我们可以使用-T small参数来获得更多的 inode,从而优化对小文件的存储。接下来我们通过一个示例来看看效果。

这是两块相同大小的硬盘:

root@debian:~# lsblk
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
sdb      8:16   0    1G  0 disk
└─sdb1   8:17   0 1023M  0 part
sdc      8:32   0    1G  0 disk
└─sdc1   8:33   0 1023M  0 part

首先使用默认参数给/dev/sdb1创建文件系统:

root@debian:~# /sbin/mkfs.ext4 /dev/sdb1
mke2fs 1.47.0 (5-Feb-2023)
Creating filesystem with 261888 4k blocks and 65536 inodes
Filesystem UUID: 8935c902-df71-4808-b547-c85b6fd37a46
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376
Allocating group tables: done
Writing inode tables: done
Creating journal (4096 blocks): done
Writing superblocks and filesystem accounting information: done

从输出中可见,该文件系统有 261888 个 4KB 大小的块和 65536 个 inode。

然后使用-T参数对/dev/sdc1创建文件系统:

root@debian:~# /sbin/mkfs.ext4 -T small /dev/sdc1
mke2fs 1.47.0 (5-Feb-2023)
Creating filesystem with 1047552 1k blocks and 262144 inodes
Filesystem UUID: f521096d-a5a1-41c9-bbf7-e6102e74e87a
Superblock backups stored on blocks:
        8193, 24577, 40961, 57345, 73729, 204801, 221185, 401409, 663553,
        1024001
Allocating group tables: done
Writing inode tables: done
Creating journal (16384 blocks): done
Writing superblocks and filesystem accounting information: done

从输出中可见,该文件系统有 1047552 个 1KB 大小的块和 262144 个 inode。

也可以通过以下方式对比两个文件系统的 inode 数量:

root@debian:~# mkdir default small
root@debian:~# mount /dev/sdb1 default/
root@debian:~# mount /dev/sdc1 small/
root@debian:~# df -iT
Filesystem     Type      Inodes IUsed   IFree IUse% Mounted on
/dev/sdb1      ext4       65536    11   65525    1% /root/default
/dev/sdc1      ext4      262144    11  262133    1% /root/small

相关阅读

  • 网络技术之接入层特点以及典型设备

    网络技术之接入层特点以及典型设备

    全面的为大家介绍网络技术之接入层特点以及典型设备的介绍,接下来小编为网友介绍。 接入层(也称为边缘层)是网络的最外层,它负责连接终端用户设备,如电脑、手机和其他网络设备。

  • 破天一剑手游攻略技巧 手游破天一剑官方网站

    破天一剑手游攻略技巧 手游破天一剑官方网站

    今天带来的IT技巧小经验破天一剑手游攻略技巧和手游破天一剑官方网站的介绍,接下来一起来看看吧。 自在逍遥江湖行,快意武林争霸路。2000万玩家翘首以盼的《破天一剑》手游,已于7月

  • 做平台网站需要多少钱 关于网页制作费用

    做平台网站需要多少钱 关于网页制作费用

    这些方法你知道吗?做平台网站需要多少钱和关于网页制作费用的IT小经验,一起来了解了解吧。 网站定制开发 的费用,取决于你想做什么样的网站,需要哪些功能,要解决哪些问题。网站建

  • 无法打开internet站点已中止操作 访问被禁止的网站原因

    无法打开internet站点已中止操作 访问被禁止的网站原因

    关于这方面的知识你知道吗?无法打开internet站点已中止操作和访问被禁止的网站原因IT技巧方面的经验,接下来IT袋小编就来介绍。 IE浏览器打开网页时提示Internet explorer无法打开站点,这是什