linux df
Linux df 命令用于显示目前在Linux系统上的文件系统的磁盘使用情况统计。
参数
文件-a, --all 包含所有的具有 0 Blocks 的文件系统
文件--block-size={SIZE} 使用 {SIZE} 大小的 Blocks
文件-h, --human-readable 使用人类可读的格式(预设值是不加这个选项的...)
文件-H, --si 很像 -h, 但是用 1000 为单位而不是用 1024
文件-i, --inodes 列出 inode 资讯,不列出已使用 block
文件-k, --kilobytes 就像是 --block-size=1024
文件-l, --local 限制列出的文件结构
文件-m, --megabytes 就像 --block-size=1048576
文件--no-sync 取得资讯前不 sync (预设值)
文件-P, --portability 使用 POSIX 输出格式
文件--sync 在取得资讯前 sync
文件-t, --type=TYPE 限制列出文件系统的 TYPE
文件-T, --print-type 显示文件系统的形式
文件-x, --exclude-type=TYPE 限制列出文件系统不要显示 TYPE
文件-v (忽略)
文件--help 显示这个帮手并且离开
文件--version 输出版本资讯并且离开
实战
查看信息
$ df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/vda1 41152832 3491024 35548324 9% /
devtmpfs 1930632 0 1930632 0% /dev
tmpfs 1940960 0 1940960 0% /dev/shm
tmpfs 1940960 536 1940424 1% /run
tmpfs 1940960 0 1940960 0% /sys/fs/cgroup
/dev/vdb1 103079864 27745036 70075616 29% /app
tmpfs 388192 0 388192 0% /run/user/3001
tmpfs 388192 0 388192 0% /run/user/3003
tmpfs 388192 0 388192 0% /run/user/3002
$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/vda1 40G 3.4G 34G 9% /
devtmpfs 1.9G 0 1.9G 0% /dev
tmpfs 1.9G 0 1.9G 0% /dev/shm
tmpfs 1.9G 536K 1.9G 1% /run
tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup
/dev/vdb1 99G 27G 67G 29% /app
tmpfs 380M 0 380M 0% /run/user/3001
tmpfs 380M 0 380M 0% /run/user/3003
tmpfs 380M 0 380M 0% /run/user/3002
第一列指定文件系统的名称,第二列指定一个特定的文件系统1K-块1K是1024字节为单位的总内存。
用和可用列正在使用中,分别指定的内存量。
使用列指定使用的内存的百分比,而最后一栏”安装在”指定的文件系统的挂载点。
所有信息
$ df --total -h
Filesystem Size Used Avail Use% Mounted on
/dev/vda1 40G 3.4G 34G 9% /
devtmpfs 1.9G 0 1.9G 0% /dev
tmpfs 1.9G 0 1.9G 0% /dev/shm
tmpfs 1.9G 536K 1.9G 1% /run
tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup
/dev/vdb1 99G 27G 67G 29% /app
tmpfs 380M 0 380M 0% /run/user/3001
tmpfs 380M 0 380M 0% /run/user/3003
tmpfs 380M 0 380M 0% /run/user/3002
total 147G 30G 110G 22% -
chat
Q1-详细介绍一下 linux df 命令
df
(磁盘空间)命令是用于显示文件系统的磁盘空间使用情况的Linux命令。
以下是df
命令的详细介绍:
命令格式:
df [选项] [文件/目录]
常用选项:
-h
:以人类可读的格式显示磁盘使用情况,以K、M、G等单位。-T
:显示文件系统类型。-a
:显示所有文件系统,包括虚拟文件系统。--total
:显示所有文件系统的总计。
示例:
-
基本用法:显示所有挂载点的磁盘使用情况。
df
-
以人类可读的格式:使用
-h
选项,以更易读的单位显示磁盘使用情况。df -h
-
显示文件系统类型:使用
-T
选项,显示文件系统的类型。df -T
-
显示所有文件系统:使用
-a
选项,显示所有文件系统,包括虚拟文件系统。df -a
-
显示所有文件系统的总计:使用
--total
选项,显示所有文件系统的总计。df --total
输出解释:
df
命令的输出包括以下列:
- 文件系统:文件系统的设备或者远程资源。
- 1K-块:文件系统的总块数,每个块大小为1K。
- 已用:已经使用的块数。
- 可用:还剩下多少块可用。
- 已用%:已用块数占总块数的百分比。
- 挂载点:文件系统被挂载到的目录。
示例输出:
文件系统 1K-块 已用 可用 已用% 挂载点
/dev/sda1 2048000 918120 1029880 48% /
tmpfs 102400 0 102400 0% /dev/shm
/dev/sdb1 10240000 121500 10036800 2% /mnt/data
上述输出中,/dev/sda1
是一个文件系统,已用48%,挂载在根目录/
下。
tmpfs
是一个虚拟文件系统,挂载在/dev/shm
下。
/dev/sdb1
是另一个文件系统,已用2%,挂载在/mnt/data
下。
Q2-实际测试例子
下面是一个实际测试的例子,对应的
$ df -haT
Filesystem Type Size Used Avail Use% Mounted on
none tmpfs 3.9G 4.0K 3.9G 1% /mnt/wsl
none 9p 120G 99G 22G 83% /usr/lib/wsl/drivers
none overlay 3.9G 0 3.9G 0% /usr/lib/wsl/lib
/dev/sdc ext4 1007G 1.4G 955G 1% /
none tmpfs 3.9G 88K 3.9G 1% /mnt/wslg
/dev/sdc ext4 1007G 1.4G 955G 1% /mnt/wslg/distro
rootfs rootfs 3.9G 1.9M 3.9G 1% /init
none devtmpfs 3.9G 0 3.9G 0% /dev
sysfs sysfs 0 0 0 - /sys
proc proc 0 0 0 - /proc
devpts devpts 0 0 0 - /dev/pts
none tmpfs 3.9G 920K 3.9G 1% /run
none tmpfs 3.9G 0 3.9G 0% /run/lock
none tmpfs 3.9G 0 3.9G 0% /run/shm
none tmpfs 3.9G 0 3.9G 0% /dev/shm
none tmpfs 3.9G 0 3.9G 0% /run/user
binfmt_misc binfmt_misc 0 0 0 - /proc/sys/fs/binfmt_misc
tmpfs tmpfs 4.0M 0 4.0M 0% /sys/fs/cgroup
cgroup2 cgroup2 0 0 0 - /sys/fs/cgroup/unified
cgroup cgroup 0 0 0 - /sys/fs/cgroup/cpuset
cgroup cgroup 0 0 0 - /sys/fs/cgroup/cpu
cgroup cgroup 0 0 0 - /sys/fs/cgroup/cpuacct
cgroup cgroup 0 0 0 - /sys/fs/cgroup/blkio
cgroup cgroup 0 0 0 - /sys/fs/cgroup/memory
cgroup cgroup 0 0 0 - /sys/fs/cgroup/devices
cgroup cgroup 0 0 0 - /sys/fs/cgroup/freezer
cgroup cgroup 0 0 0 - /sys/fs/cgroup/net_cls
cgroup cgroup 0 0 0 - /sys/fs/cgroup/perf_event
cgroup cgroup 0 0 0 - /sys/fs/cgroup/net_prio
cgroup cgroup 0 0 0 - /sys/fs/cgroup/hugetlb
cgroup cgroup 0 0 0 - /sys/fs/cgroup/pids
cgroup cgroup 0 0 0 - /sys/fs/cgroup/rdma
cgroup cgroup 0 0 0 - /sys/fs/cgroup/misc
none overlay 3.9G 72K 3.9G 1% /mnt/wslg/versions.txt
none overlay 3.9G 72K 3.9G 1% /mnt/wslg/doc
none tmpfs 3.9G 88K 3.9G 1% /tmp/.X11-unix
drvfs 9p 120G 99G 22G 83% /mnt/c
drvfs 9p 340G 87G 254G 26% /mnt/d
cgroup cgroup 0 0 0 - /sys/fs/cgroup/systemd
hugetlbfs hugetlbfs 0 0 0 - /dev/hugepages
mqueue mqueue 0 0 0 - /dev/mqueue
debugfs debugfs 0 0 0 - /sys/kernel/debug
tracefs tracefs 0 0 0 - /sys/kernel/tracing
fusectl fusectl 0 0 0 - /sys/fs/fuse/connections
/dev/sdc ext4 1007G 1.4G 955G 1% /snap
snapfuse fuse.snapfuse 128K 128K 0 100% /snap/bare/5
snapfuse fuse.snapfuse 73M 73M 0 100% /snap/core22/607
snapfuse fuse.snapfuse 92M 92M 0 100% /snap/gtk-common-themes/1535
snapfuse fuse.snapfuse 54M 54M 0 100% /snap/snapd/18933
snapfuse fuse.snapfuse 151M 151M 0 100% /snap/ubuntu-desktop-installer/967
none tmpfs 3.9G 88K 3.9G 1% /run/user/1000
snapfuse fuse.snapfuse 74M 74M 0 100% /snap/core22/864
snapfuse fuse.snapfuse 132M 132M 0 100% /snap/ubuntu-desktop-installer/1272
Q2.1-介绍一下 df 中常见 Filesystem 和 Type
在df
命令的输出中,常见的两列是”Filesystem”和”Type”,它们分别表示文件系统和文件系统类型。
下面对它们进行详细介绍:
-
Filesystem(文件系统):
- 这一列显示了磁盘空间使用情况的文件系统。
文件系统是一种组织和存储数据的方法,通常与硬盘或分区相关联。
在Linux系统中,常见的文件系统包括ext4、ext3、ext2、XFS、Btrfs等。
- 示例:
/dev/sda1
、tmpfs
、/dev/sdb1
。
-
Type(类型):
- “Type”列显示了相应文件系统的类型。不同的文件系统有不同的特性和用途。常见的文件系统类型包括:
- ext2, ext3, ext4:Linux的标准文件系统,分别为第二、第三、第四扩展文件系统。
- tmpfs:临时文件系统,通常用于存储临时文件。
- xfs:高性能文件系统,适用于大容量磁盘和文件。
- btrfs:B-tree文件系统,支持快照和其他先进特性。
- swap:Linux中用于交换空间的文件系统类型。
- nfs:网络文件系统,用于在网络上共享文件。
- 示例:
ext4
、tmpfs
、xfs
。
- “Type”列显示了相应文件系统的类型。不同的文件系统有不同的特性和用途。常见的文件系统类型包括:
在df -T
命令中,你可以看到”Filesystem”列的输出还包括文件系统类型,而在df
命令的基本输出中,你只会看到文件系统。
这两列的信息对于了解系统中不同文件系统的使用情况和特性都是很有帮助的。