如何查看Linux系统中的文件系统及磁盘使用情况?代码举例讲解

在Linux中,可以通过以下几种方式查看文件系统及磁盘使用情况:

  1. 查看文件系统:
  • df -h :显示文件系统磁盘空间使用情况,-h参数显示人性化格式。
  • du -sh /home :显示/home目录的磁盘使用情况。
  • mount :显示已挂载的文件系统。
    例如:
# 显示文件系统使用情况
df -h
Filesystem      Size  Used Avail Use% Mounted on
udev            7.8G     0  7.8G   0% /dev
tmpfs           1.6G   11M  1.6G   1% /run
/dev/sda2        30G  2.2G   26G   8% /
/dev/sda1       511M   44M  468M   9% /boot
...
# 显示/home目录使用情况 
du -sh /home  
12G    /home
# 显示已挂载文件系统  
mount    
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
udev on /dev type devtmpfs (rw,nosuid,relatime,size=10240k,nr_inodes=256611,mode=755) 
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
  1. 查看磁盘IO:
  • iostat :显示CPU使用率和磁盘IO次数。
  • iotop :实时显示磁盘IO使用最高的进程。
    例如:
# 每2秒显示一次IO情况 
iostat 2
Linux 5.0.0-23-generic (workstation)     12/28/2019     _x86_64_    (2 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle   
           0.50    0.00    0.50    0.00    0.00   99.00

Device:         tps    kB_read/s    kB_wrtn/s    kB_read    kB_wrtn 
sda              0.00         0.00         0.00       102       568
# 实时显示IO最高进程
iotop
Total DISK READ: 7.12 K/s | Total DISK WRITE: 55.67 K/s
  TID  PRIO  USER     DISK READ  DISK WRITE  SWAPIN   IO>    COMMAND
 3733 be/4 root        6.77 K/s    46.21 K/s  0.00 % 27.89 % [kworker/0:3-events]