`

linux的du和df命令

阅读更多
linux的du和df命令

      今天也有同学问我Linux下查看目录大小的命令,现在也将前阵子学习到du/df两个命令总结一下吧。
前阵子测试工作中有遇到过由于磁盘空间满导致程序无法执行到情况,所以使用了df和du两个命令。
du查看目录大小,df查看磁盘使用情况。
我常使用的命令(必要时,sudo使用root权限),
1.查看某个目录的大小:du -hs /home/master/documents
  查看目录下所有目录的大小并按大小降序排列:sudo du -sm /etc/* | sort -nr | less
2.查看磁盘使用情况(文件系统的使用情况):sudo df -h
  df --block-size=GB
-h是使输出结果更易于人类阅读;du -s只展示目录的使用总量(不分别展示各个子目录情况),-m是以MB为单位展示目录的大小(当然-k/-g就是KB/GB了)。
更多信息,还是man du 和 man df 来获得吧。
du - estimate file space usage
Summarize disk usage of each FILE, recursively for directories.
df - report file system disk space usage
Show information about the file system on which each FILE resides, or all file systems by default.
df displays the amount of disk space available on the file system containing each file nameargument. If no file name is given, the space available on all currently mounted file systems is shown.


du
du的英文为:disk usage,含义是磁盘空间使用情况,功能是逐级进入指定目录的每一个子目录并显示该目录占用文件系统数据块的情况,如果没有指定目录,则对当前的目录进行统计。
du的命令各个选项含义如下:

a:显示全部目录和其次目录下的每个档案所占的磁盘空间
s:只显示各档案大小的总合
b:大小用bytes来表示
x:跳过在不同文件系统上的目录不予统计
a:递归地显示指定目录中各文件及子孙目录中各文件占用的数据块数
...
使用du进行查看
root@tech163:/home/htmlfile# du
16      ./test
60      ./bbb
84      .

其中第一列是以块为单位计的磁盘空间容量,第二列列出目录中使用这些空间的目录名称

1)查看当前目录包含子目录的大小
root@tech163:/home/htmlfile# du -sm .
1       .
其中的du -sm . 的“.”是代表当前目录。

2)查看当前目录以及子目录的大小
root@tech163:/home/htmlfile# du -h
16K     ./test
60K     ./bbb
84K     .
其中 -h 表示使用K,M,G的人性化形式显示。

3)看到当前目录下的bbb目录大小,但不想查看其他目录以及子目录
root@tech163:/home/htmlfile# du -ch bbb | tail -n 1
60K     total
使用了管道包含了du和tail两个命令,-c表示最后计算出所列目录的大小之和。

4)列出当前目录下所有目录和文件的大小
root@tech163:/home/htmlfile# du -ah bbb
4.0K    bbb/mysql.php
4.0K    bbb/index.htm
4.0K    bbb/p.php
28K     bbb/memcache.php
12K     bbb/.session.php.swp
4.0K    bbb/hello.html
60K     bbb
其中-a表示包含目录和文件

5)不换行列出目录以及子目录大小的信息
root@tech163:/home/htmlfile# du -0h
16K     ./test60K       ./bbb84K        .root@tech163:/home/htmlfile#
其中 -0 表示列出一条信息后不换行,接着输出第二条信息。

df
于du不同的是,du是面向文件的命令,只计算被文件占用的空间。不计算文件系统metadata 占用的空间。df则是基于文件系统总体来计算,通过文件系统中未分配空间来确定系统中已经分配空间的大小。df命令可以获取硬盘占用了多少空间,还剩下多少空间,它也可以显示所有文件系统对i节点和磁盘块的使用情况。

df命令各个选择的含义如下:

a:显示全部的档案系统和各分割区的磁盘使用情形
i:显示i -nodes的使用量
k:大小用k来表示 (默认值)
t:显示某一个档案系统的所有分割区磁盘使用量
x:显示不是某一个档案系统的所有分割区磁盘使用量
T:显示每个分割区所属的档案系统名称
....

使用df进行查看

Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/cciss/c0d0p1      2068156    611572   1351528  32% /
tmpfs                  1038080         4   1038076   1% /lib/init/rw
udev                     10240        64     10176   1% /dev
tmpfs                  1038080         4   1038076   1% /dev/shm
/dev/cciss/c0d0p9    130700120  44034236  86665884  34% /home
/dev/cciss/c0d0p7      2068156     68932   1999224   4% /tmp
/dev/cciss/c0d0p8      4132372   1760620   2161840  45% /usr
/dev/cciss/c0d0p6      2068156    330104   1632996  17% /var

第一行是文件系统对应的硬盘分区
第二行是分区包含的数据块的数据(1数据库为1024字节)
第三四行是已用和未用的数据块数组
第五行是普通用户空间使用的百分比
第六行是文件系统的安装点

其中第三四行已用和未用数据块相加并不等于第二行总数据块,这是因为分区留了少量空间提供给

系统管理员使用。

1)
chenyz@gzhouse:~$ df -h
文件系统              容量  已用 可用 已用% 挂载点
/dev/cciss/c0d0p1     2.0G  598M  1.3G  32% /
tmpfs                1014M  4.0K 1014M   1% /lib/init/rw
udev                   10M   64K   10M   1% /dev
tmpfs                1014M  4.0K 1014M   1% /dev/shm
/dev/cciss/c0d0p9     125G   42G   83G  34% /home
/dev/cciss/c0d0p7     2.0G   68M  2.0G   4% /tmp
/dev/cciss/c0d0p8     4.0G  1.7G  2.1G  45% /usr
/dev/cciss/c0d0p6     2.0G  333M  1.6G  18% /var
其中 -h 表示使用K,M,G的人性化形式显示。

2)
chenyz@gzhouse:~$ df -ia
文件系统               Inode (I)已用 (I)可用 (I)已用% 挂载点
/dev/cciss/c0d0p1     262752   60150  202602   23% /
tmpfs                 224142      10  224132    1% /lib/init/rw
proc                       0       0       0    -  /proc
sysfs                      0       0       0    -  /sys
procbususb                 0       0       0    -  /proc/bus/usb
udev                  224142     770  223372    1% /dev
tmpfs                 224142       3  224139    1% /dev/shm
devpts                     0       0       0    -  /dev/pts
/dev/cciss/c0d0p9    130763968 1972907 128791061    2% /home
/dev/cciss/c0d0p7     262752      54  262698    1% /tmp
/dev/cciss/c0d0p8     524832   35743  489089    7% /usr
/dev/cciss/c0d0p6     262752    4896  257856    2% /var
     所谓的 inode 是用来存放档案及目录的基本信息,包含时间、档名、使用者及群组等。在分割扇区时,系统会先做出一堆 inode 以供以后使用,inode 的数量关系着系统中可以建立的档案及目录总数。如果要存的档案大部分都很小,则同样大小的硬盘中会有较多的档案,也就是说需要较多的 inode 来挂档案及目录
分享到:
评论

相关推荐

    linux-du-df.rar_linux du

    在Linux操作系统中,`du`和`df`是两个非常重要的命令行工具,它们用于监控文件系统的磁盘使用情况。然而,在实际使用中,有时可能会遇到`du`和`df`显示的硬盘空间使用量不一致的情况。这通常是由于它们统计磁盘空间...

    CentOS中du和df 的区别

    ### CentOS中du和df命令的区别 在Linux操作系统中,尤其是CentOS版本中,用户经常会用到`du`和`df`这两个命令来查看文件系统或目录的磁盘使用情况。虽然这两个命令都能提供关于磁盘空间的信息,但它们之间存在明显...

    df_和_du_命令详解.docx

    `df` 和 `du` 是在类 Unix 系统(如 Linux 和 macOS)中常用的命令行工具,用于监控文件系统的磁盘空间使用情况。这两个命令对于系统管理员来说至关重要,因为它们提供了关于存储资源的关键信息。 **df 命令详解:*...

    Linux磁盘管理之df命令详细介绍和使用实例.docx

    同时,结合其他磁盘管理命令如`du`,可以更全面地了解和控制Linux系统的存储资源。例如,`du`命令可以查看单个文件或目录的具体大小,这对于定位占用大量空间的文件非常有用。当需要清理空间时,这些信息就显得尤为...

    linux查看目录大小及硬盘大小.docx

    Linux 查看目录大小及硬盘大小 ...du 命令和 df 命令是 Linux 系统中查看目录大小及硬盘大小的常用命令。了解 du 和 df 命令的区别和应用,可以帮助管理员和开发者更好地管理系统资源和优化系统性能。

    Linux学习 - 命令运行监测和软件安装

    在 Linux 中,df 命令可以用来查看系统硬盘大小和分配情况,du 命令可以用来查看文件或目录的大小。 df 命令的输出结果中,Filesystem 代表文件系统的名称,Size 代表文件系统的总大小,Used 代表当前已使用的大小...

    Linux基础课件查看磁盘容量df命令共9页.pdf.zi

    在Linux操作系统中,掌握基本的命令行工具是至关重要的,特别...因此,这份“Linux基础课件查看磁盘容量df命令”对初学者和经验丰富的用户都是宝贵的参考资料,它将帮助你更好地理解和运用df命令,提升Linux操作技能。

    磁盘满了,为啥du却显示还有很大空间

    这是因为 du 命令和 df 命令的结果不同。du 命令显示的是实际使用的磁盘空间大小,而 df 命令显示的是文件系统的磁盘空间使用情况。如果我们删除了一个正在写入的日志文件,du 命令的结果会把日志大小减去,而 df ...

    Linux常用命令 LINUX常用命令和系统管理

    本篇主要介绍Linux中的常用命令和系统管理,帮助用户更好地理解和掌握这一强大的操作系统。 1. **文件目录基本操作** - `cd`: 改变当前工作目录,例如`cd /home/user`进入用户主目录。 - `ls`: 列出目录内容,如`...

    最全Linux常用命令大全.pdf

    14. **du**:`du`命令用于查看文件和目录占用的磁盘空间大小。 15. **fsck**:`fsck`命令用于检查和修复Linux文件系统,确保文件系统的完整性。 这些命令构成了Linux系统管理的基础,熟练掌握它们能帮助用户高效地...

    Linux 命令每天必学(34)之du命令

    Linux du命令也是查看使用空间的,但是与df命令不同的是Linux du命令是对文件和目录磁盘使用的空间的查看,还是和df命令有一些区别的. du /bin和du -s /bin有什么区别呢? -s 就是summary, 显示该目录占用空间的...

    Linux 命令速查手册

    值得注意的是,尽管本书在出版之时可能已包含当时最新的命令和用法,但随着技术的发展和Linux版本的更新,部分命令或功能可能会发生变化。因此,读者在应用这些知识时,应当结合当前所使用的Linux发行版进行相应的...

    Linux内核分析及命令大全

    3. **文件系统命令**:如df、du、mount、umount,涉及文件系统的检查、挂载和空间使用情况。 4. **进程管理命令**:如ps、top、kill、pkill,用于监控和控制进程。 5. **网络命令**:如ifconfig、ping、netstat、...

    最全Linux常用命令大全-linux常用命令全集

    本文档对 Linux 中最常用的命令进行了详细的总结和说明,涵盖了文件和目录管理、磁盘空间管理等方面的命令。 文件和目录管理命令 1. `pwd` 命令:显示当前目录 `pwd` 命令的英文解释为 print working directory...

    Linux命令查询全集 chm

    磁盘维护方面,`df`显示磁盘空间使用情况,`du`用于检查目录或文件所占用的空间。`mkfs`系列命令用于格式化磁盘,`fdisk`或`gparted`用于磁盘分区管理。`fsck`则用于检查和修复文件系统的错误。 网络通讯相关的命令...

    Linux菜鸟入门级命令大全

    18. **du**:估算文件和目录占用的磁盘空间,`du -sh *`显示当前目录下所有文件和目录的大小。 19. **df**:查看磁盘空间使用情况,`df -h`以人类可读的格式显示磁盘空间。 20. **history**:显示过去的命令历史,...

    Linux操作命令九.doc

    本文将详细介绍 Linux 操作系统中六个重要命令:comm 命令、diff 命令、patch 命令、df 命令、du 命令和 time 命令。这些命令都是 Linux 系统中不可或缺的一部分,掌握这些命令对日常的系统维护和管理具有重要意义。...

    Linux常用的60个命令-精选

    Linux 操作系统是一个功能强大且灵活的操作系统,它提供了许多实用的命令来管理和维护系统。以下是 60 个常用的 Linux 命令,涵盖文件管理、磁盘管理、网络管理、系统管理、安全管理等方面。 文件管理命令 * file ...

Global site tag (gtag.js) - Google Analytics