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

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

我正在使用 Ubuntu 12.04 LTS,我想知道是否有一个命令可以使用终端来判断分区中使用的空间。比如我想使用 su 命令切换到名为 admin 的用户(它名为 admin)。所以我输入了:

su admin

输入密码

现在我想查看此分区使用的磁盘空间。那么.... 有命令可以做到这一点吗?

答案1

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% /

另外,尽管这仅列出了大小,而不是 %used:

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选项将“跳过不同文件系统上的目录”,如果您在分区的挂载点下嵌套了其他挂载点(通常/),这将很有用。

答案2

您可以使用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

答案3

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

有时,您可能会意外地通过您设置的一些自动化过程填满硬盘。当这种情况发生在我身上时,我需要找到大部分磁盘空间都去了哪里。以下命令对这项任务很有帮助:

$ cd /
$ sudo du -sh ./*

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

相关内容