{"msg":"操作成功","code":200,"data":{"createBy":"admin","createTime":"2024-08-15 14:42:41","updateBy":"admin","updateTime":"2024-08-15 14:42:41","remark":null,"id":86,"articleTitle":"每天一个Linux命令（十）df","articleUrl":"linux_df","articleThumbnail":"https://www.asumimoe.com/imgfiles/20250301/b95d839fa195428cb42fc7f104f50b0d.png","articleFlag":"0","draftStatus":"1","reprintStatement":"0","articleSummary":"df是 Linux/Unix 系统中用于显示文件系统的磁盘使用情况的命令（Disk Free），支持查看磁盘空间、挂载点、文件系统类型等信息。它是磁盘管理和空间监控中常用的工具之一。","articleContent":"`df` 是 Linux/Unix 系统中用于**显示文件系统的磁盘使用情况**的命令（Disk Free），支持查看磁盘空间、挂载点、文件系统类型等信息。它是磁盘管理和空间监控中常用的工具之一。\n\n---\n\n## 语法\n\n```bash\ndf [选项] [文件/目录...]\n```\n\n---\n\n## 常用选项\n\n| 选项      | 说明                                |\n| --------- | ----------------------------------- |\n| `-h`      | 以易读格式显示大小（如 KB、MB、GB） |\n| `-T`      | 显示文件系统类型                    |\n| `-i`      | 显示 inode 使用情况（而非磁盘空间） |\n| `-a`      | 显示所有文件系统（包括伪文件系统）  |\n| `--total` | 显示总计信息                        |\n| `-t`      | 仅显示指定类型的文件系统            |\n| `-x`      | 排除指定类型的文件系统              |\n| `-l`      | 仅显示本地文件系统                  |\n\n---\n\n## 输出字段说明\n\n| 字段         | 说明                   |\n| ------------ | ---------------------- |\n| `Filesystem` | 文件系统名称或挂载设备 |\n| `Size`       | 文件系统总大小         |\n| `Used`       | 已用空间               |\n| `Avail`      | 可用空间               |\n| `Use%`       | 使用百分比             |\n| `Mounted on` | 挂载点                 |\n\n---\n\n## 使用示例\n\n### 1. 显示所有文件系统的磁盘使用情况\n\n```bash\ndf\n```\n\n输出示例：\n\n```bash\nFilesystem     1K-blocks    Used Available Use% Mounted on\n/dev/sda1       10485760 5242880   5242880  50% /\ntmpfs             102400       0    102400   0% /dev/shm\n```\n\n---\n\n### 2. 以易读格式显示磁盘使用情况\n\n```bash\ndf -h\n```\n\n输出示例：\n\n```bash\nFilesystem      Size  Used Avail Use% Mounted on\n/dev/sda1        10G  5.0G  5.0G  50% /\ntmpfs           100M     0  100M   0% /dev/shm\n```\n\n---\n\n### 3. 显示文件系统类型\n\n```bash\ndf -T\n```\n\n输出示例：\n\n```bash\nFilesystem     Type  1K-blocks    Used Available Use% Mounted on\n/dev/sda1      ext4   10485760 5242880   5242880  50% /\ntmpfs          tmpfs    102400       0    102400   0% /dev/shm\n```\n\n---\n\n### 4. 显示 inode 使用情况\n\n```bash\ndf -i\n```\n\n输出示例：\n\n```bash\nFilesystem     Inodes IUsed IFree IUse% Mounted on\n/dev/sda1      655360 32768 622592    5% /\ntmpfs          256000     1 255999    1% /dev/shm\n```\n\n---\n\n### 5. 显示总计信息\n\n```bash\ndf -h --total\n```\n\n输出示例：\n\n```bash\nFilesystem      Size  Used Avail Use% Mounted on\n/dev/sda1        10G  5.0G  5.0G  50% /\ntmpfs           100M     0  100M   0% /dev/shm\ntotal            10G  5.0G  5.0G  50%\n```\n\n---\n\n### 6. 仅显示 ext4 文件系统\n\n```bash\ndf -t ext4\n```\n\n输出示例：\n\n```bash\nFilesystem     1K-blocks    Used Available Use% Mounted on\n/dev/sda1       10485760 5242880   5242880  50% /\n```\n\n---\n\n### 7. 排除特定文件系统类型\n\n```bash\ndf -x tmpfs\n```\n\n输出示例：\n\n```bash\nFilesystem     1K-blocks    Used Available Use% Mounted on\n/dev/sda1       10485760 5242880   5242880  50% /\n```\n\n---\n\n## 注意事项\n\n1. **伪文件系统**：如 `tmpfs`、`proc` 等，通常不占用实际磁盘空间\n2. **挂载点**：`df` 显示的是挂载点的磁盘使用情况\n3. **权限问题**：普通用户可能无法查看某些文件系统的信息\n\n---\n\n## 常见错误处理\n\n### 错误示例：文件系统不存在\n\n```bash\ndf non_existing_fs\n# 输出：df: 'non_existing_fs': No such file or directory\n```\n\n### 错误示例：权限不足\n\n```bash\ndf /root\n# 输出：df: '/root': Permission denied\n```\n\n---\n\n## 进阶技巧\n\n### 1. 显示特定目录的磁盘使用情况\n\n```bash\ndf -h /var/log\n```\n\n输出示例：\n\n```bash\nFilesystem      Size  Used Avail Use% Mounted on\n/dev/sda1        10G  5.0G  5.0G  50% /\n```\n\n---\n\n### 2. 结合 `grep` 过滤输出\n\n```bash\ndf -h | grep /dev/sda1\n```\n\n输出示例：\n\n```bash\n/dev/sda1        10G  5.0G  5.0G  50% /\n```\n\n---\n\n### 3. 显示磁盘使用率最高的文件系统\n\n```bash\ndf -h | sort -k5 -hr | head -n 1\n```\n\n输出示例：\n\n```bash\n/dev/sda1        10G  5.0G  5.0G  50% /\n```\n\n---\n\n### 4. 监控磁盘使用情况（实时刷新）\n\n```bash\nwatch -n 1 df -h\n```\n\n说明：每 1 秒刷新一次磁盘使用情况\n\n---\n\n### 5. 结合 `awk` 提取特定字段\n\n```bash\ndf -h | awk '{print $1, $5}'\n```\n\n输出示例：\n\n```bash\nFilesystem Use%\n/dev/sda1 50%\ntmpfs 0%\n```\n\n---\n\n### 6. 显示磁盘使用率超过 90% 的文件系统\n\n```bash\ndf -h | awk 'NR>1 && $5+0 > 90 {print $0}'\n```\n\n---\n\n### 7. 显示所有本地文件系统的磁盘使用情况\n\n```bash\ndf -l\n```","categoryId":1,"viewCount":58,"categoryName":"Linux","author":"球接子","authorAvatar":null,"tagIds":[10],"tagNames":["Linux基础"]}}