欢迎各位兄弟 发布技术文章
这里的技术是共享的
bbbb-admin@bbbb-admindeMac ~ % df -lh Filesystem Size Used Avail Capacity iused ifree %iused Mounted on /dev/disk2s5s1 100Gi 22Gi 27Gi 45% 502068 281183720 0% / /dev/disk2s4 100Gi 1.0Mi 27Gi 1% 1 281183720 0% /System/Volumes/VM /dev/disk2s2 100Gi 257Mi 27Gi 1% 735 281183720 0% /System/Volumes/Preboot /dev/disk2s6 100Gi 100Mi 27Gi 1% 403 281183720 0% /System/Volumes/Update /dev/disk2s1 100Gi 50Gi 27Gi 65% 239529 281183720 0% /System/Volumes/Data /dev/disk3s3 15Gi 13Gi 2.2Gi 86% 1170 4294966109 0% /Volumes/Install macOS Monterey /dev/disk4 39Mi 8.2Mi 31Mi 21% 204 4294967075 0% /Volumes/Mounty for NTFS /dev/disk2s5 100Gi 22Gi 27Gi 45% 502390 281183720 0% /Volumes/Macintosh HD 1 /dev/disk5s1 58Gi 5.6Mi 58Gi 1% 124 611119200 0% /Volumes/未命名2 bbbb-admin@bbbb-admindeMac ~ % 详解
以下是针对您提供的 df -lh
输出的逐项详解,并结合 macOS 文件系统特点的分析:
字段 | 含义 |
---|---|
Filesystem | 存储设备或虚拟文件系统的标识符 |
Size | 总容量 |
Used | 已用空间 |
Avail | 用户可用的剩余空间(考虑配额限制) |
Capacity% | 已用空间百分比 |
iused | 已使用的 inode 数量(文件/目录计数) |
ifree | 剩余可用 inode 数量 |
%iused | inode 使用率 |
Mounted on | 挂载点路径 |
plaintext/dev/disk2s5s1 100Gi 22Gi 27Gi 45% 502068 281183720 0% /
设备标识:disk2s5s1
(APFS 卷组中的子卷)
特殊说明:
这是系统的根分区,采用 APFS 空间共享机制
实际总容量由容器(disk2
)动态分配给各卷
Avail
(27Gi)小于Size - Used
(100Gi-22Gi=78Gi)是因为保留空间
plaintext/dev/disk2s4 100Gi 1.0Mi 27Gi 1% 1 281183720 0% /System/Volumes/VM /dev/disk2s2 100Gi 257Mi 27Gi 1% 735 281183720 0% /System/Volumes/Preboot /dev/disk2s6 100Gi 100Mi 27Gi 1% 403 281183720 0% /System/Volumes/Update /dev/disk2s1 100Gi 50Gi 27Gi 65% 239529 281183720 0% /System/Volumes/Data
角色分工:
Preboot
:存放启动需要的内核和驱动
VM
:虚拟内存交换文件存放位置
Data
:用户数据卷(与系统卷分离,macOS 10.15+特性)
空间共享:所有卷共享APFS容器的100Gi物理空间
plaintext/dev/disk3s3 15Gi 13Gi 2.2Gi 86% 1170 4294966109 0% /Volumes/Install macOS Monterey
特点:
明显是 macOS 安装器的临时分区
ifree
异常大(4294966109)是因为使用HFS+文件系统
plaintext/dev/disk4 39Mi 8.2Mi 31Mi 21% 204 4294967075 0% /Volumes/Mounty for NTFS
第三方驱动:
使用Paragon/NTFS-3G等工具挂载的NTFS分区
小容量(39Mi)可能为驱动程序的控制卷
plaintext/dev/disk5s1 58Gi 5.6Mi 58Gi 1% 124 611119200 0% /Volumes/未命名2
特征:
未格式化的外置磁盘(可能是FAT32/exFAT)
超低inode使用率(124)表明几乎没有文件
APFS 空间分配问题:
所有系统卷显示相同的Avail
(27Gi),表明容器空间即将耗尽
建议清理 /System/Volumes/Data
(已用50Gi)
安装镜像残留:
bashdiskutil unmount /Volumes/Install\ macOS\ Monterey diskutil eject /dev/disk3
完成后可释放15Gi空间
外置磁盘异常:/dev/disk5s1
显示中文"未命名2",建议重新格式化:
bashdiskutil eraseDisk FAT32 NEWNAME /dev/disk5
高级检查命令:
bash# 查看APFS容器真实空间 diskutil apfs list # 分析大文件 sudo du -hd 1 /System/Volumes/Data
plaintextAPFS Container (disk2) ├── disk2s1 Data Volume (用户数据) ├── disk2s2 Preboot (启动文件) ├── disk2s4 VM (交换空间) ├── disk2s5 System Volume (系统文件) └── disk2s6 Update (系统更新)
建议优先处理系统卷空间不足的问题,避免影响系统稳定性。如需进一步分析某个特定分区,可使用 diskutil info /dev/diskXsY
获取详细参数。
/dev/disk2s5s1 100Gi 22Gi 27Gi 45% 502068 281183720 0% / 这里 100Gi 是什么意思,为什么不是 100G
在 macOS 的命令行输出中,文件系统容量显示的单位(如 Gi
和 G
)存在细微但重要的区别。这涉及到 二进制前缀(GiB)和十进制前缀(GB) 的差异:
单位 | 全称 | 换算关系 | 操作系统显示 |
---|---|---|---|
Gi | Gibibyte | 1 GiB = 1024 MiB = 1024×1024 KiB = 1024×1024×1024 B | macOS/Linux df -h |
G | Gigabyte | 1 GB = 1000 MB = 1000×1000 KB = 1000×1000×1000 B | 硬盘厂商标称 |
plaintext/dev/disk2s5s1 100Gi 22Gi 27Gi 45% ...
这里的 100Gi
表示:
实际二进制容量:1024³ × 100 ≈ 107,374,182,400 字节
相当于十进制:约 93.13 GB(因为 100 GiB ÷ 1.073741824 ≈ 93.13 GB)
100G
?技术准确性:
操作系统内核和文件系统管理使用 二进制计算(GiB/MiB/KiB)
这是 Unix/Linux 系统的传统标准
对比场景:
硬盘厂商标注的 500GB 实际在系统中显示为约 465GiB
当你在 macOS 中格式化磁盘时,diskutil
也会用 GiB 计算
历史原因:
早期计算机内存和存储严格按 1024 进制划分
后来硬盘厂商为营销改用 1000 进制,导致显示差异
bash# 查看精确字节数(验证 GiB 计算) diskutil info /dev/disk2s5s1 | grep "Disk Size"
输出示例:
plaintextDisk Size: 107374182400 Bytes (exactly 100 GiB)
场景 | 显示单位 | 示例 | 解释 |
---|---|---|---|
系统命令 | Gi/Mi/Ki | df -h | 二进制单位 |
硬盘包装 | GB/MB/KB | 1TB SSD | 十进制单位 |
磁盘工具GUI | GB | 图形界面 | 可能自动转换 |
如果你想看到 GB
显示,可以手动换算:
bashecho "100 GiB = $((100 * 1073741824 / 1000000000)) GB" # 输出:100 GiB = 107 GB
建议始终关注 Gi
单位的数值,这才是 macOS 系统管理的真实容量基准。