zoukankan      html  css  js  c++  java
  • Linux du

    linux中du与df的区别和联系

    1,两者区别 
    du,disk usage,是通过搜索文件来计算每个文件的大小然后累加,du能看到的文件只是一些当前存在 
    的,没有被删除的。他计算的大小就是当前他认为存在的所有文件大小的累加和。
    df,disk free,通过文件系统来快速获取空间大小的信息,当我们删除一个文件的时候,这个文件不 
    是马上就在文件系统当中消失了,而是暂时消失了,当所有程序都不用时,才会根据OS的规则释放掉已 
    经删除的文件, df记录的是通过文件系统获取到的文件的大小,他比du强的地方就是能够看到已经删除 
    的文件,而且计算大小的时候,把这一部分的空间也加上了,更精确了。
    当文件系统也确定删除了该文件后,这时候du与df就一致了。

    2,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了)。

    3,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 表示列出一条信息后不换行,接着输出第二条信息。

    4,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 来挂 
    档案及目录

  • 相关阅读:
    xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!
    xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!
    xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!
    xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!
    xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!
    Linux的压缩和解压命令
    RabbitMQ消费消息的两种模式:推和拉
    没有开启keepalive,接收消息会超时
    不止背锅!互联网大厂的运维都在干什么?30K的总监来告诉你
    tcp 开启keepalive
  • 原文地址:https://www.cnblogs.com/qiaoyanlin/p/11212215.html
Copyright © 2011-2022 走看看