文件 inode 与 no space left on device 异常

转载请注明出处:

文件inode

  在 Linux 文件系统中,每一个文件或目录都会有一个 inode,它是一个数据结构,用于存储文件的元数据,比如文件的权限、所有者、大小、创建和修改的时间等。inode 不包含文件的实际内容,只包含文件的元数据。当你在文件系统中创建、修改或者删除文件时,实际上是在修改或者删除这个文件的 inode。

  inode 的数量在文件系统创建时就被定义了,并且不能动态改变。一个文件系统的 inode 数量通常与文件系统的容量成正比,通常是 1:16 KB。如果你创建了大量的目录、符号链接和小文件,你可能会耗尽 inode。

  可以使用 df -i 命令来查看文件系统的 inode 使用情况。例如,如果文件系统挂载在 / 目录,你可以使用以下的命令来查看这个文件系统的 inode 使用情况:

复制代码
df -i /

  在这个命令中,-i 参数表示查看 inode 的使用情况,/ 参数表示查看挂载在 / 目录的文件系统的 inode 使用情况。

  运行这个命令后,会看到以下的输出:

复制代码
root@test:~# df -i /
文件系统          Inode 已用(I)  可用(I) 已用(I)% 挂载点
/dev/sda1      43753472 1192187 42561285       3% /
root@test:~#

  在这个输出中,Inodes 列表示文件系统的总的 inode 数量,IUsed 列表示已经使用的 inode 数量,IFree 列表示还没有使用的 inode 数量,IUse% 列表示已经使用的 inode 的百分比。

  需要注意的是,如果你的文件系统的 inode 用尽了,即使磁盘上的空间还有很多,你也无法在上面创建新的文件。这是因为每个新的文件都需要一个 inode 来存储它的元数据。因此,你应该定期检查你的文件系统的 inode 使用情况,以避免文件系统的 inode 用尽。

no space left on device

  解决方法:

 ** 1.通过df -h 查看磁盘空间。如果磁盘空间不足也会报这个错**

  如果磁盘空间总有存在 100% 的挂载,进行磁盘空间清理

 ** 2.通过df -i 查看可用的indoe。如果inode 使用也会报这个错:**

  如果存在100%,也进行冗余文件或相关文件清理,也能解决该错。

相关推荐
玖石书1 小时前
Ubuntu 24.04 UFW 全命令攻略:从入门到端口开放实战
linux·运维·ubuntu
xiaoqiMikko1 小时前
Linux 实战(七):useradd、sudoers、umask、SGID、软链 —— 三台真机实测
linux·centos
拂拉氏3 小时前
【知识讲解】 Linux之动静态库的了解
linux·运维·服务器·动静态库
Fcy6483 小时前
Linux下 五种IO模型的认识与⾮阻塞IO的实现
linux·服务器·io
Mikko74 小时前
Linux 重启后日志没了?进程被 OOM 杀了去哪看?logrotate 之后日志还往旧文件写?三台真机实测日志与性能排查
linux·运维·centos
书生执笔画浮沉4 小时前
分享一个开源小工具CAdapt
linux·c·gnu·glibc·kernel·升级·灵感
mounter6254 小时前
Linux 内核热升级(Live Update)技术详解:PCI、VFIO 与 IOMMU 子系统的演进与实战解析引言
linux·linux kernel·kernel·iommu·vfio
砚凝霜5 小时前
【软考信息安全】第十九章 Unix/Linux安全分析与防护
linux·安全·unix
creator_Li5 小时前
Linux 的 Page Cache
linux·page cache
KING-WU5127 小时前
Linux GDB 调试实战指南:从编译到断点调试
linux·运维·服务器