linux查看磁盘空间及处理方法

网站运行一段时间,经常遇到磁盘空间占满的情况。排查过程如下:

一、首先使用df -h 命令查看磁盘剩余空间,通过以下图看出/目录下的磁盘空间已经被占满。

2016021814435290

二、进入根目录,因为最近常用的目录就是usr目录,所以用du -bs命令看一下常用的usr目录大小,由下图可见/usr目录占据了11g。

其实可以直接运行find命令,见第三步

2016021815015353

三、进入usr目录用find 命令找到大文件

2016021815034292

把日志,压缩包什么的都清空一下

就可以了

常用参数有:

-a or -all  为每个指定文件显示磁盘使用情况,或者为目录中每个文件显示各自磁盘使用情况。

-b or -bytes 显示目录或文件大小时,以byte为单位。

-c or -total 除了显示目录或文件的大小外,同时也显示所有目录或文件的总和。

-D or -dereference-args 显示指定符号连接的源文件大小。

-h or -human-readable 以K,M,G为单位,提高信息的可读性。

-H or -si 与-h参数相同,但是K,M,G是以1000为换算单位,而不是以1024为换算单位。

-k or -kilobytes 以1024 bytes为单位。

-l or -count-links 重复计算硬件连接的文件。

-L<符号连接> or -dereference<符号连接> 显示选项中所指定符号连接的源文件大小。

-m or -megabytes 以1MB为单位。

-s or -summarize 仅显示总计,即当前目录的大小。

-S or -separate-dirs 显示每个目录的大小时,并不含其子目录的大小。

-x or -one-file-xystem 以一开始处理时的文件系统为准,若遇上其它不同的文件系统目录则略过。

-X<文件> or -exclude-from=<文件> 在<文件>指定目录或文件。

--exclude=<目录或文件> 略过指定的目录或文件。

--max-depth=<目录层数> 超过指定层数的目录后,予以忽略。

--help 显示帮助。

--version 显示版本信息。

使用du命令查看大小

简单使用

[root@lee ~]# du
16      ./.gnupg
4       ./公共的
68      ./Imaging-1.1.7/Scripts
372     ./Imaging-1.1.7/Docs
156     ./Imaging-1.1.7/Images
88      ./Imaging-1.1.7/Sane
2040    ./Imaging-1.1.7/PIL
28      ./Imaging-1.1.7/Tk
1464    ./Imaging-1.1.7/build/temp.linux-x86_64-2.7/libImaging
2156    ./Imaging-1.1.7/build/temp.linux-x86_64-2.7
1884    ./Imaging-1.1.7/build/lib.linux-x86_64-2.7
36      ./Imaging-1.1.7/build/scripts-2.7
4080    ./Imaging-1.1.7/build
596     ./Imaging-1.1.7/libImaging
7864    ./Imaging-1.1.7
264     ./jpeg-9/.deps
5512    ./jpeg-9/.libs
13272   ./jpeg-9
...

s 参数 ,不把子目录列出来

[root@lee ~]# du -s ./*
4       ./anaconda-ks.cfg
4       ./a.py
31148   ./freetype-2.4.12
2072    ./freetype-2.4.12.tar.gz
7864    ./Imaging-1.1.7
488     ./Imaging-1.1.7.tar.gz
56      ./install.log
12      ./install.log.syslog
13272   ./jpeg-9
968     ./jpegsrc.v9.tar.gz
4       ./main.py
235488  ./mongodb-linux-x86_64-2.4.1
92044   ./mongodb-linux-x86_64-2.4.1.tgz
6548    ./PIL-1.1.7
496     ./PIL-1.1.7.tar.gz
4       ./pyc.sh
4       ./sup.sh
12      ./test
4       ./test.py
12      ./test.tgz
4964    ./www.nihaoagent.com_2012_12_18.tar.bz2
4224    ./zlib-1.2.8
560     ./zlib-1.2.8.tar.gz
4       ./公共的
4       ./模板
4       ./视频
4       ./图片
4       ./文档
4       ./下载
4       ./音乐
4       ./桌面

h 参数,以K,M,G为单位,提高信息的可读性

[root@lee ~]# du -sh ./*
4.0K    ./anaconda-ks.cfg
4.0K    ./a.py
31M     ./freetype-2.4.12
2.1M    ./freetype-2.4.12.tar.gz
7.7M    ./Imaging-1.1.7
488K    ./Imaging-1.1.7.tar.gz
56K     ./install.log
12K     ./install.log.syslog
13M     ./jpeg-9
968K    ./jpegsrc.v9.tar.gz
4.0K    ./main.py
230M    ./mongodb-linux-x86_64-2.4.1
90M     ./mongodb-linux-x86_64-2.4.1.tgz
6.4M    ./PIL-1.1.7
496K    ./PIL-1.1.7.tar.gz
4.0K    ./pyc.sh
4.0K    ./sup.sh
12K     ./test
4.0K    ./test.py
12K     ./test.tgz
4.9M    ./www.nihaoagent.com_2012_12_18.tar.bz2
4.2M    ./zlib-1.2.8
560K    ./zlib-1.2.8.tar.gz
4.0K    ./公共的
4.0K    ./模板
4.0K    ./视频
4.0K    ./图片
4.0K    ./文档
4.0K    ./下载
4.0K    ./音乐
4.0K    ./桌面

a 参数,查看磁盘使用情况

[root@lee ~]# du -a ./*.gz
2072    ./freetype-2.4.12.tar.gz
488     ./Imaging-1.1.7.tar.gz
968     ./jpegsrc.v9.tar.gz
496     ./PIL-1.1.7.tar.gz
560     ./zlib-1.2.8.tar.gz

m 参数,以M为单位

[root@lee ~]# du -sm ./*
1       ./anaconda-ks.cfg
1       ./a.py
31      ./freetype-2.4.12
3       ./freetype-2.4.12.tar.gz
8       ./Imaging-1.1.7
1       ./Imaging-1.1.7.tar.gz
1       ./install.log
1       ./install.log.syslog
13      ./jpeg-9
1       ./jpegsrc.v9.tar.gz
1       ./main.py
230     ./mongodb-linux-x86_64-2.4.1
90      ./mongodb-linux-x86_64-2.4.1.tgz
7       ./PIL-1.1.7
1       ./PIL-1.1.7.tar.gz
1       ./pyc.sh
1       ./sup.sh
1       ./test
1       ./test.py
1       ./test.tgz
5       ./www.nihaoagent.com_2012_12_18.tar.bz2
5       ./zlib-1.2.8
1       ./zlib-1.2.8.tar.gz
1       ./公共的
1       ./模板
1       ./视频
1       ./图片
1       ./文档
1       ./下载
1       ./音乐
1       ./桌面

exclude 参数,排除指定文件

[root@lee ~]# du -s --exclude='zlib-1.2.8.tar.gz' ./* 
4       ./anaconda-ks.cfg
4       ./a.py
31148   ./freetype-2.4.12
2072    ./freetype-2.4.12.tar.gz
7864    ./Imaging-1.1.7
488     ./Imaging-1.1.7.tar.gz
56      ./install.log
12      ./install.log.syslog
13272   ./jpeg-9
968     ./jpegsrc.v9.tar.gz
4       ./main.py
235488  ./mongodb-linux-x86_64-2.4.1
92044   ./mongodb-linux-x86_64-2.4.1.tgz
6548    ./PIL-1.1.7
496     ./PIL-1.1.7.tar.gz
4       ./pyc.sh
4       ./sup.sh
12      ./test
4       ./test.py
12      ./test.tgz
4964    ./www.nihaoagent.com_2012_12_18.tar.bz2
4224    ./zlib-1.2.8
4       ./公共的
4       ./模板
4       ./视频
4       ./图片
4       ./文档
4       ./下载
4       ./音乐
4       ./桌面

c 参数,显示文件或者目录总和

[root@lee ~]# du -sch *
4.0K    anaconda-ks.cfg
4.0K    a.py
31M     freetype-2.4.12
2.1M    freetype-2.4.12.tar.gz
7.7M    Imaging-1.1.7
488K    Imaging-1.1.7.tar.gz
56K     install.log
12K     install.log.syslog
13M     jpeg-9
968K    jpegsrc.v9.tar.gz
4.0K    main.py
230M    mongodb-linux-x86_64-2.4.1
90M     mongodb-linux-x86_64-2.4.1.tgz
6.4M    PIL-1.1.7
496K    PIL-1.1.7.tar.gz
4.0K    pyc.sh
4.0K    sup.sh
12K     test
4.0K    test.py
12K     test.tgz
4.9M    www.nihaoagent.com_2012_12_18.tar.bz2
4.2M    zlib-1.2.8
560K    zlib-1.2.8.tar.gz
4.0K    公共的
4.0K    模板
4.0K    视频
4.0K    图片
4.0K    文档
4.0K    下载
4.0K    音乐
4.0K    桌面
391M    总用量

获取目录下所有文件的大小并倒序排列:

[root@lee ~]# du -sh * | sort -hr
230M    mongodb-linux-x86_64-2.4.1
90M     mongodb-linux-x86_64-2.4.1.tgz
31M     freetype-2.4.12
13M     jpeg-9
7.7M    Imaging-1.1.7
6.4M    PIL-1.1.7
4.9M    www.nihaoagent.com_2012_12_18.tar.bz2
4.2M    zlib-1.2.8
2.1M    freetype-2.4.12.tar.gz
968K    jpegsrc.v9.tar.gz
560K    zlib-1.2.8.tar.gz
496K    PIL-1.1.7.tar.gz
488K    Imaging-1.1.7.tar.gz
56K     install.log
12K     test.tgz
12K     test
12K     install.log.syslog
4.0K    桌面
4.0K    音乐
4.0K    下载
4.0K    文档
4.0K    图片
4.0K    视频
4.0K    模板
4.0K    公共的
4.0K    test.py
4.0K    sup.sh
4.0K    pyc.sh
4.0K    main.py
4.0K    a.py
4.0K    anaconda-ks.cfg

网上有不少人再做这个需求时,是按n排序的,结果:

[root@lee ~]# du -sh * | sort -nr
968K    jpegsrc.v9.tar.gz
560K    zlib-1.2.8.tar.gz
496K    PIL-1.1.7.tar.gz
488K    Imaging-1.1.7.tar.gz
230M    mongodb-linux-x86_64-2.4.1
90M     mongodb-linux-x86_64-2.4.1.tgz
56K     install.log
31M     freetype-2.4.12
13M     jpeg-9
12K     test.tgz
12K     test
12K     install.log.syslog
7.7M    Imaging-1.1.7
6.4M    PIL-1.1.7
4.9M    www.nihaoagent.com_2012_12_18.tar.bz2
4.2M    zlib-1.2.8
4.0K    桌面
4.0K    音乐
4.0K    下载
4.0K    文档
4.0K    图片
4.0K    视频
4.0K    模板
4.0K    公共的
4.0K    test.py
4.0K    sup.sh
4.0K    pyc.sh
4.0K    main.py
4.0K    a.py
4.0K    anaconda-ks.cfg
2.1M    freetype-2.4.12.tar.gz

 

原文:linux查看磁盘空间及处理方法 ,未经许可,禁止转载。
来源:前端开发博客 (http://caibaojian.com/linux-df.html)