当前位置: 首页>>技术教程>>正文


如何使用Ubuntu 12.04 LTS中的终端检查分区中使用的磁盘空间?

, ,

问题描述

我正在使用Ubuntu 12.04 LTS,我想知道是否有一个命令可以使用终端告诉分区中使用的空间。就像我想使用su命令更改为名为admin的用户(它名为admin)。所以我键入:

su admin

输入密码

现在我想查看此分区中使用的磁盘空间。所以……是否有命令?

最佳解决思路

su命令完全不相关。所有用户的磁盘使用情况都相同。无论如何,我的系统上的一些相关命令及其输出是:

terdon@oregano ~ $ df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda7              68G   23G   43G  35% /
udev                   10M     0   10M   0% /dev
tmpfs                 800M  1.6M  798M   1% /run
tmpfs                 5.0M     0  5.0M   0% /run/lock
tmpfs                 3.2G   12M  3.2G   1% /run/shm
/dev/sda6             290G  256G   20G  94% /home
tmpfs                 3.2G  992K  3.2G   1% /tmp
none                  4.0K     0  4.0K   0% /sys/fs/cgroup
/dev/sdc1             466G  379G   88G  82% /media/terdon/Iomega_HDD

对于特定分区:

terdon@oregano ~ $ df -h /dev/sda7
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda7              68G   23G   43G  35% /

或者,虽然这只列出了大小,但不是使用的百分比:

terdon@oregano ~ $ lsblk 
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0 465.8G  0 disk 
├─sda1   8:1    0  39.2M  0 part 
├─sda2   8:2    0  14.7G  0 part 
├─sda3   8:3    0  78.1G  0 part 
├─sda4   8:4    0     1K  0 part 
├─sda5   8:5    0     2G  0 part 
├─sda6   8:6    0 294.4G  0 part /home
├─sda7   8:7    0  68.7G  0 part /
└─sda8   8:8    0   7.8G  0 part [SWAP]
sdc      8:32   0 465.8G  0 disk 
└─sdc1   8:33   0 465.8G  0 part /media/terdon/Iomega_HDD
sr0     11:0    1  1024M  0 rom  

相反,您可以使用du命令打印目录大小,如果您在分区的挂载点上运行它,则会为您提供分区的磁盘使用情况:例如,du -xsch /home-x选项将“跳过不同文件系统上的目录”,如果您有其他挂载点嵌套在分区的挂载点(通常为/)下,这将非常有用。

次佳解决思路

您可以使用df -Th来获取分区的已用空间:

$ df -Th

Filesystem     Type      Size  Used Avail Use% Mounted on
/dev/sda9      ext4       22G   16G  4.8G  77% /
none           tmpfs     4.0K     0  4.0K   0% /sys/fs/cgroup
udev           devtmpfs  1.5G  4.0K  1.5G   1% /dev
tmpfs          tmpfs     297M  1.4M  295M   1% /run
none           tmpfs     5.0M  4.0K  5.0M   1% /run/lock
none           tmpfs     1.5G  616K  1.5G   1% /run/shm
none           tmpfs     100M   68K  100M   1% /run/user
/dev/sda5      fuseblk    53G   34G   19G  65% /media/Songs
/dev/sda7      fuseblk   103G   90G   14G  88% /media/Data
/dev/sda6      fuseblk    69G   34G   35G  50% /media/Movies
/dev/sda1      fuseblk    49G   36G   14G  72% /media/guru/0C64A7F864A7E326

如果要查看仅该分区的磁盘利用率,还可以为其提供特定分区:

$ df -Th /dev/sda9

Filesystem     Type  Size  Used Avail Use% Mounted on
/dev/sda9      ext4   22G   16G  4.8G  77% /

您还可以使用pydfdiscus在终端中获得更好的表示。如果要使用它,则需要安装它们。类型:

sudo apt-get install pydf在终端安装pydf

$ pydf  
Filesystem Size Used Avail Use%                                      Mounted on                  
/dev/sda9   22G  16G 4893M 72.7 [#########################.........] /                           
/dev/sda7  103G  90G   13G 87.2 [##############################....] /media/Data                 
/dev/sda6   69G  34G   35G 49.3 [#################.................] /media/Movies               
/dev/sda5   53G  34G   19G 64.5 [######################............] /media/Songs                
/dev/sda1   49G  35G   14G 71.9 [########################..........] /media/guru/0C64A7F864A7E326

第三种解决思路

您可以使用df -h轻松检查磁盘空间状态。

有时,您可能会通过您设置的某些自动化流程意外填满您的硬盘。当发生这种情况时,我需要找到大部分磁盘空间。以下命令对该任务很有用:

$ cd /
$ sudo du -sh ./*

这给出了当前目录中的文件和文件夹列表以及每个文件和文件夹的大小。如果目录大于它应该的目录,则cd到该目录并再次运行sudo du -sh ./*。重复,直到找到占用大部分磁盘空间的内容。

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/1189.html,未经允许,请勿转载。