Ubuntu 磁盘管理DF命令用法

Linux磁盘空间管理是系统运维中的核心环节,它直接影响到系统的稳定运行、数据的安全性和业务的连续性。

通过实施有效的磁盘空间管理策略,系统管理员可以确保系统的高效运作,满足不断变化的业务需求,并为用户提供可靠的服务。

因此,对Linux磁盘空间管理的重视和精通对于任何企业的IT运营都属于核心业务。

文章目录

DF命令用法

Linux df命令用于显示文件系统的磁盘空间使用情况。以下是一些常用的df命令参数:

  • -a--all: 显示所有文件系统,包括未挂载的和已被挂载多次的文件系统。

  • -h--human-readable: 以人类可读的格式(如K、M、G)显示磁盘空间大小。

  • -H--si: 类似于-h,但使用1000而不是1024作为基数来计算单位(例如,1MB = 1,000,000字节而不是1,048,576字节)。

  • -k--kilobytes: 使用千字节(KB)作为块大小单位。

  • -m--megabytes: 使用兆字节(MB)作为块大小单位。

  • -g--gigabytes: 使用千兆字节(GB)作为块大小单位。

  • -l--local: 只显示本地文件系统。

  • -i--inodes: 显示每个文件系统的inode使用信息。

  • -T--type=TYPE: 只显示指定类型的文件系统,例如"ext4"、"tmpfs"等。

  • -x--exclude-type=TYPE: 排除指定类型的文件系统。

  • -t--type=TYPE: 只显示指定类型的文件系统。

  • -B--block-size=SIZE: 指定块大小,例如-BM表示块大小为1,048,576字节。

  • FILE: 如果指定文件名,df将只显示包含该文件的文件系统的信息。

  • --output=FIELD_LIST: 自定义输出字段列表,例如--output=target,fstype,size,used,avail.

  • --help: 显示帮助信息。

  • --version: 显示df命令的版本信息。

这些参数可以根据需要组合使用,例如,要以人类可读的格式查看所有文件系统的磁盘空间使用情况,包括 inode 使用信息,可以使用以下命令:

bash 复制代码
df -ahi

请注意,不同的Linux发行版可能会有一些细微的差异,部分参数可能在某些版本中不可用。所以,在实际环境中,我们通常会先查看当前版本信息。

接下来我们会对DF命令参数进行实际演示:

  1. df命令参数-a
    显示所有文件系统,包括未挂载的和已被挂载多次的文件系统。-a 参数的可视性其实不是很好,因为默认也是用的千字节,大家根据自己的情况选择合适的方式。
bash 复制代码
 df -a
  1. df命令参数-h
    -h 参数的效果好一些,其看来很直观,也是我们常见的大小表达方式。
bash 复制代码
df -h
bash 复制代码
mirror@Ubuntu22:~$ df -h
Filesystem      Size  Used Avail Use% Mounted on
rootfs          237G   91G  147G  39% /
none            237G   91G  147G  39% /dev
none            237G   91G  147G  39% /run
none            237G   91G  147G  39% /run/lock
none            237G   91G  147G  39% /run/shm
none            237G   91G  147G  39% /run/user
tmpfs           237G   91G  147G  39% /sys/fs/cgroup
C:\             237G   91G  147G  39% /mnt/c
D:\             1.9T  301M  1.9T   1% /mnt/d
E:\             1.9T   35G  1.8T   2% /mnt/e
mirror@Ubuntu22:~$
  1. df命令参数-H
    -H参数使用1000而不是1024作为基数来计算单位(例如,1MB = 1,000,000字节而不是1,048,576字节),所以,实际显示出来的Size栏位数值要更大一些。
bash 复制代码
df -H
  1. df命令参数-k

使用千字节(KB)作为块大小单位来显示文件系统大小。

bash 复制代码
df -k
bash 复制代码
 mirror@Ubuntu22:~$ df -k
Filesystem      1K-blocks     Used  Available Use% Mounted on
rootfs          247655464 94374736  153280728  39% /
none            247655464 94374736  153280728  39% /dev
none            247655464 94374736  153280728  39% /run
none            247655464 94374736  153280728  39% /run/lock
none            247655464 94374736  153280728  39% /run/shm
none            247655464 94374736  153280728  39% /run/user
tmpfs           247655464 94374736  153280728  39% /sys/fs/cgroup
C:\             247655464 94374736  153280728  39% /mnt/c
D:\            1953513468   307968 1953205500   1% /mnt/d
E:\            1953513468 36510556 1917002912   2% /mnt/e
  1. df命令参数-m
    使用兆字节(MB)作为块大小单位来显示文件系统大小。
bash 复制代码
df -m
bash 复制代码
mirror@Ubuntu22:~$ df -m
Filesystem     1M-blocks  Used Available Use% Mounted on
rootfs            241852 92163    149689  39% /
none              241852 92163    149689  39% /dev
none              241852 92163    149689  39% /run
none              241852 92163    149689  39% /run/lock
none              241852 92163    149689  39% /run/shm
none              241852 92163    149689  39% /run/user
tmpfs             241852 92163    149689  39% /sys/fs/cgroup
C:\               241852 92163    149689  39% /mnt/c
D:\              1907728   301   1907428   1% /mnt/d
E:\              1907728 35655   1872074   2% /mnt/e
  1. df命令参数-l
    -l 参数只显示本地的文件系统,不会显示网络挂载的部分。
bash 复制代码
df -l

df -ldf -m 比较久比较明显:

  1. df命令参数-i
    显示每个文件系统的inode使用信息。
bash 复制代码
df -i
bash 复制代码
mirror@Ubuntu22:~$ df -i
Filesystem     Inodes   IUsed   IFree IUse% Mounted on
rootfs            999 -999001 1000000     - /
none              999 -999001 1000000     - /dev
none              999 -999001 1000000     - /run
none              999 -999001 1000000     - /run/lock
none              999 -999001 1000000     - /run/shm
none              999 -999001 1000000     - /run/user
tmpfs             999 -999001 1000000     - /sys/fs/cgroup
C:\               999 -999001 1000000     - /mnt/c
D:\               999 -999001 1000000     - /mnt/d
E:\               999 -999001 1000000     - /mnt/e
  1. df命令参数-T
    直接用-T可以查看所有的文件系统类型,以下为只显示tmpfs文件类型,用--type=tmpfs来过滤
bash 复制代码
df -T

我们的演示主机有wslfs、tmpfs、drvfs三种文件系统

bash 复制代码
mirror@Ubuntu22:~$ df -T
Filesystem     Type   1K-blocks     Used  Available Use% Mounted on
rootfs         wslfs  247655464 94378312  153277152  39% /
none           tmpfs  247655464 94378312  153277152  39% /dev
none           tmpfs  247655464 94378312  153277152  39% /run
none           tmpfs  247655464 94378312  153277152  39% /run/lock
none           tmpfs  247655464 94378312  153277152  39% /run/shm
none           tmpfs  247655464 94378312  153277152  39% /run/user
tmpfs          tmpfs  247655464 94378312  153277152  39% /sys/fs/cgroup
C:\            drvfs  247655464 94378312  153277152  39% /mnt/c
D:\            drvfs 1953513468   307968 1953205500   1% /mnt/d
E:\            drvfs 1953513468 36510556 1917002912   2% /mnt/e

过滤一下tmpfs的文件系统类型

bash 复制代码
df -T --type=tmpfs
bash 复制代码
mirror@Ubuntu22:~$ df -T --type=tmpfs
Filesystem     Type  1K-blocks     Used Available Use% Mounted on
none           tmpfs 247655464 94379132 153276332  39% /dev
none           tmpfs 247655464 94379132 153276332  39% /run
none           tmpfs 247655464 94379132 153276332  39% /run/lock
none           tmpfs 247655464 94379132 153276332  39% /run/shm
none           tmpfs 247655464 94379132 153276332  39% /run/user
tmpfs          tmpfs 247655464 94379132 153276332  39% /sys/fs/cgroup
mirror@Ubuntu22:~$
  1. df命令参数-x
    -x参数用来排除指定类型的文件系统
bash 复制代码
df -x tmpfs

或者

bash 复制代码
 df --exclude-type=tmpfs
bash 复制代码
 mirror@Ubuntu22:~$ df --exclude-type=tmpfs
Filesystem      1K-blocks     Used  Available Use% Mounted on
rootfs          247655464 94371068  153284396  39% /
C:\             247655464 94371068  153284396  39% /mnt/c
D:\            1953513468   307968 1953205500   1% /mnt/d
E:\            1953513468 36510556 1917002912   2% /mnt/e
  1. df命令参数-t
    只显示指定类型的文件系统。方法如下:
bash 复制代码
df -t tmpfs 

或者

bash 复制代码
df --type=tmpfs
bash 复制代码
 mirror@Ubuntu22:~$ df -t tmpfs
Filesystem     1K-blocks     Used Available Use% Mounted on
none           247655464 94367632 153287832  39% /dev
none           247655464 94367632 153287832  39% /run
none           247655464 94367632 153287832  39% /run/lock
none           247655464 94367632 153287832  39% /run/shm
none           247655464 94367632 153287832  39% /run/user
tmpfs          247655464 94367632 153287832  39% /sys/fs/cgroup
mirror@Ubuntu22:~$
  1. df命令参数-B
    指定块大小,用 df -B 1024df -B 10240 比较会直观一些
  2. 查看指定文件大小
bash 复制代码
df -h file /etc
  1. 输出自定义的字段列表
    例如我们要查看/etc目录 used的字段信息,请参考如下命令:
bash 复制代码
df -h file /etc --output=used

以上希望帮助大家掌握df命令的常用方法。

推荐阅读

相关推荐
零意@10 分钟前
ubuntu切换不同版本的python
windows·python·ubuntu
饮啦冰美式3 小时前
22.04Ubuntu---ROS2使用rclcpp编写节点
linux·运维·ubuntu
wowocpp3 小时前
ubuntu 22.04 server 安装 和 初始化 LTS
linux·运维·ubuntu
wowocpp3 小时前
ubuntu 22.04 server 格式化 磁盘 为 ext4 并 自动挂载 LTS
服务器·数据库·ubuntu
Lign173143 小时前
ubuntu unrar解压 中文文件名异常问题解决
linux·运维·ubuntu
wowocpp11 小时前
ubuntu 22.04 硬件配置 查看 显卡
linux·运维·ubuntu
山河君11 小时前
ubuntu使用DeepSpeech进行语音识别(包含交叉编译)
linux·ubuntu·语音识别
knighthood200112 小时前
解决:ros进行gazebo仿真,rviz没有显示传感器数据
c++·ubuntu·ros
wowocpp1 天前
ubuntu 22.04 server 安装 anaconda3
linux·运维·ubuntu