df -i 显示
Filesystem Inodes IUsed IFree IUse% Mounted on
udev 1745003 593 1744410 1% /dev
tmpfs 1760785 914 1759871 1% /run
/dev/sda1 5283840 5283840 0 100% /
tmpfs 1760785 225 1760560 1% /dev/shm
tmpfs 1760785 7 1760778 1% /run/lock
tmpfs 1760785 17 1760768 1% /sys/fs/cgroup
tmpfs 1760785 38 1760747 1% /run/user/1000
答案1
如何增加 Ubuntu Linux 中的磁盘 inode 数量?
这种情况并不经常发生,但有时 Linux 系统上的 inode 可能会用完。
要查找当前的 inode 使用情况,请运行
$ df -i
oracle@UBUNTU-H170N-WIFI:~$ df -i
Filesystem Inodes IUsed IFree IUse% Mounted on
udev 2033718 667 2033051 1% /dev
tmpfs 2039252 1311 2037941 1% /run
/dev/sda3 375360 25452 349908 7% /
/dev/sda4 1001712 181566 820146 19% /usr
tmpfs 2039252 87 2039165 1% /dev/shm
tmpfs 2039252 5 2039247 1% /run/lock
tmpfs 2039252 18 2039234 1% /sys/fs/cgroup
/dev/sda1 0 0 0 - /boot/efi
/dev/sda5 2752512 23171 2729341 1% /opt
/dev/sda6 1001712 41 1001671 1% /tmp
/dev/sda7 500960 11514 489446 3% /var
/dev/loop0 12819 12819 0 100% /snap/core/6673
/dev/sda8 670432 13657 656775 3% /home
/dev/loop2 35 35 0 100% /snap/canonical-livepatch/58
/dev/loop3 25385 25385 0 100% /snap/gtk-common-themes/1198
/dev/loop1 12816 12816 0 100% /snap/core/6350
/dev/loop7 27345 27345 0 100% /snap/gtk-common-themes/818
/dev/loop4 747 747 0 100% /snap/gnome-system-monitor/57
/dev/loop5 27631 27631 0 100% /snap/gnome-3-26-1604/82
/dev/loop6 27707 27707 0 100% /snap/gnome-3-28-1804/23
/dev/loop8 9862 9862 0 100% /snap/core18/782
/dev/sdb2 103911564 4040 103907524 1% /mnt/E030BF9830BF73DE
/dev/loop10 271 271 0 100% /snap/gnome-characters/206
/dev/loop9 27631 27631 0 100% /snap/gnome-3-26-1604/74
/dev/loop13 354 354 0 100% /snap/gnome-logs/57
/dev/loop11 1598 1598 0 100% /snap/gnome-characters/139
/dev/loop12 1269 1269 0 100% /snap/gnome-calculator/260
/dev/loop14 734 734 0 100% /snap/gnome-system-monitor/70
/dev/loop15 1720 1720 0 100% /snap/gnome-logs/45
/dev/loop16 1549 1549 0 100% /snap/gnome-calculator/352
/dev/sdb4 550191724 17424 550174300 1% /mnt/F6A4656DA46530F3
/dev/sdb3 81743792 6932 81736860 1% /mnt/7842F1D742F199D8
tmpfs 2039252 25 2039227 1% /run/user/121
tmpfs 2039252 45 2039207 1% /run/user/54321
/dev/sde1 0 0 0 - /media/oracle/SANTACRUZ
/dev/sdd1 0 0 0 - /media/oracle/TRANSCEND
要了解有关 inode 的更多信息,请参阅维基百科有很好的描述。
可用 inode 为 0 的磁盘可能充满了非常小的文件,位于特定目录中的某个位置(应用程序、tmp 文件、pid 文件、会话文件等)。每个文件使用(至少)1 个 inode。数百万个文件将使用数百万个 inode。
如果您的磁盘的 inode 已满,如何增加它?
答案是,你可能不能。
系统上可用的 inode 数量在创建分区时决定。例如,EXT3/EXT4 的默认分区的字节数/inode 比率为每 16384 字节 (16 KB) 一个 inode。
10 GB 的分区大约有 622,592 个 inode。100 GB 的分区大约有 5,976,883 个 inode。
您想增加 inode 的数量吗?
完全增加磁盘容量或使用以下命令重新格式化磁盘:
$ sudo mkfs.ext4 -i <bytes-per-inode> # to manually overwrite the bytes-per-inode ratio.
每 inode 字节数是多少?
指定字节/inode 比率。'mkfs.ext4' 为磁盘上每个字节/inode 空间创建一个 inode。字节/inode 比率越大,创建的 inode 越少。此值通常不应小于文件系统的块大小,因为在这种情况下,创建的 inode 数量将超过可以使用的数量。请注意,在创建文件系统后,无法更改此比率,因此请谨慎确定此参数的正确值。请注意,调整文件系统大小会更改 inode 的数量以维持此比率。
要了解有关该命令的更多信息mkfs.ext4
,请使用以下命令查看手册页:
$ man mkfs.ext4
答案2
我不确定您是否可以修改现有ext4
文件系统中的 inode 数量。 中有一些选项tune2fs
,但手册中有关于此的警告。
但是,在创建文件系统时,可以(并且直接)增加 inode 的数量。请参阅man mkfs.ext4
,
-N number-of-inodes
Overrides the default calculation of the number of inodes that
should be reserved for the filesystem (which is based on the number
of blocks and the bytes-per-inode ratio). This allows the user to
specify the number of desired inodes directly.