为什么 fdisk 和 df 显示的可用空间不同?

为什么 fdisk 和 df 显示的可用空间不同?

基本上是标题。我从 32GB live USB 运行 MX Linux。当我运行时fdisk -l,我看到以下内容:

[...]
Disk /dev/sda: 29.88 GiB, 32080200192 bytes, 62656641 sectors
Disk model: Flash Drive     
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x0067f9ad

Device     Boot   Start      End  Sectors  Size Id Type
/dev/sda1  *       2048  6033541  6031494  2.9G  c W95 FAT32 (LBA)
/dev/sda2       6033542 62656618 56623077   27G 83 Linux
                                           
[...]

然而,有了df -lh, mysda2突然变小了:

Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1       2.9G  2.9G   53M  99% /live/boot-dev
/dev/loop0      1.8G  1.8G     0 100% /live/linux
/dev/loop1      474M  417M   29M  94% /live/persist-root
/dev/sda2       474M  417M   29M  94% /
/dev/loop2      201M  164M   23M  88% /home
[...]

为什么会发生这种情况以及如何解决它?

答案1

fdisk显示总数磁盘块, 尽管df显示可用空间文件系统这是在该设备上设置的。文件系统有开销,即留出部分磁盘来提高性能——这是你永远看不到的。其中一些是保留给用户,某些(取决于文件系统)可能会单独计算 inode 资源。

fdisk 和 df 都查看大小,但前者查看分区(实际磁盘块),而后者查看文件系统(在分区中构建)。挂载程序将显示正在使用的文件系统类型。有些是有限的(但 474M 相当小)。它可以由指定大小的脚本创建(请参阅mkfs手动的),

MKFS[选项][-t 类型] [fs-选项]设备[尺寸]

或复制(使用dd)来自介质上的主图像。

进一步阅读:

相关内容