Ubuntu 查看文件以及磁盘空间大小管理

(1)查看文件大小
查看当前文件夹下所有文件大小(包括子文件夹)
du -sh

du -h

15M ./package
16K ./.fontconfig
4.0K ./.cache
5.1M ./.rpmdb
20M .

查看指定文件夹下所有文件大小(包括子文件夹)

du -h ftp

3.8G ftp/sanya/doc
3.8G ftp/sanya
4.0K ftp/testftp/doc
1.4M ftp/testftp
875M ftp/platform/doc/002-录像
27M ftp/platform/doc/001-PDF
5.2M ftp/platform/doc/BBFlash
1.2G ftp/platform/doc/003-录音
2.1G ftp/platform/doc
2.1G ftp/platform
4.0K ftp/pmo/doc
20K ftp/pmo
36M ftp/uf/doc/innovate-201207
36M ftp/uf/doc
36M ftp/uf
446M ftp/code/doc
446M ftp/code
6.3G ftp

查看指定文件大小

du -h ./package/compat-libstdc+±33-3.2.3-69.el6.x86_64.rpm

184K ./package/compat-libstdc+±33-3.2.3-69.el6.x86_64.rpm

查看指定文件夹大小

du -hs ftp

6.3G ftp

用法:du [选项]… [文件]…
或:du [选项]… --files0-from=F
计算每个文件的磁盘用量,目录则取总用量。
长选项必须使用的参数对于短选项时也是必需使用的。
-a, --all 输出所有文件的磁盘用量,不仅仅是目录
–apparent-size 显示表面用量,而并非是磁盘用量;虽然表面用量通常会
小一些,但有时它会因为稀疏文件间的"洞"、内部碎
片、非直接引用的块等原因而变大。
-B, --block-size=大小 使用指定字节数的块
-b, --bytes 等于–apparent-size --block-size=1
-c, --total 显示总计信息
-D, --dereference-args 解除命令行中列出的符号连接
–files0-from=F 计算文件F 中以NUL 结尾的文件名对应占用的磁盘空间
如果F 的值是"-",则从标准输入读入文件名
-H 等于–dereference-args (-D)
-h, --human-readable 以可读性较好的方式显示尺寸(例如:1K 234M 2G)
–si 类似-h,但在计算时使用1000 为基底而非1024
-k 等于–block-size=1K
-l, --count-links 如果是硬连接,就多次计算其尺寸
-m 等于–block-size=1M
-L, --dereference 找出任何符号链接指示的真正目的地
-P, --no-dereference 不跟随任何符号链接(默认)
-0, --null 将每个空行视作0 字节而非换行符
-S, --separate-dirs 不包括子目录的占用量
-s, --summarize 只分别计算命令列中每个参数所占的总用量
-x, --one-file-system 跳过处于不同文件系统之上的目录
-X, --exclude-from=文件 排除与指定文件中描述的模式相符的文件
–exclude=PATTERN 排除与PATTERN 中描述的模式相符的文件
–max-depth=N 显示目录总计(与–all 一起使用计算文件)
当N 为指定数值时计算深度为N;
–max-depth=0 等于–summarize
–time 显示目录或该目录子目录下所有文件的最后修改时间
–time=WORD 显示WORD 时间,而非修改时间:
atime,access,use,ctime 或status
–time-style=样式 按照指定样式显示时间(样式解释规则同"date"命令):
full-iso,long-iso,iso,+FORMAT
–help 显示此帮助信息并退出
–version 显示版本信息并退出
[大小]可以是以下的单位(单位前可加上整数):
kB 1000,K 1024,MB 1000000,M 1048576,还有 G、T、P、E、Z、Y。

(2)Ubuntu 查看磁盘空间大小命令

df -h

Df命令是linux系统以磁盘分区为单位查看文件系统,可以加上参数查看磁盘剩余空间信息,命令格式:

df -hl

显示格式为: 
文件系统 容量 已用 可用 已用% 挂载点 
Filesystem Size Used Avail Use% Mounted on
/dev/hda2 45G 19G 24G 44% /
/dev/hda1 494M 19M 450M 4% /boot
/dev/hda6 4.9G 2.2G 2.5G 47% /home
/dev/hda5 9.7G 2.9G 6.4G 31% /opt
none 1009M 0 1009M 0% /dev/shm
/dev/hda3 9.7G 7.2G 2.1G 78% /usr/local
/dev/hdb2 75G 75G 0 100% /
/dev/hdb2 75G 75G 0 100% /
以上面的输出为例,表示的意思为:
HD硬盘接口的第二个硬盘(b),第二个分区(2),容量是75G,用了75G,可用是0,因此利用率是100%, 被挂载到根分区目录上(/)。
下面是相关命令的解释:
df -hl 查看磁盘剩余空间
df -h 查看每个根路径的分区大小
du -sh [目录名] 返回该目录的大小
du -sm [文件夹] 返回该文件夹总M数
更多功能可以输入一下命令查看:
df --help
du --help

(3)删除日志文件
公司的linux 服务器没放什么东西,但是已经使用了50%了,一查看原来是日志文件太大了,于是就手动删除了,
这个比较快
sudo /dev/null > /var/log/**.log

下面这个可以推荐使用
sudo find /var/log/ -type f -mtime +30 -exec rm -f {} ;
删除30天之前的旧文件

4. df

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字节)
第三四行是已用和未用的数据块数组
第五行是普通用户空间使用的百分比
第六行是文件系统的安装点

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

系统管理员使用。

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的人性化形式显示。

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

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值