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

Jat*_*ttt 95 command-line disk-usage

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

su admin
Run Code Online (Sandbox Code Playgroud)

输入了密码

现在我想查看这个分区中使用的磁盘空间。所以.... 是否有一个命令呢?

ter*_*don 157

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
Run Code Online (Sandbox Code Playgroud)

对于特定分区:

terdon@oregano ~ $ df -h /dev/sda7
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda7              68G   23G   43G  35% /
Run Code Online (Sandbox Code Playgroud)

或者,虽然这只列出了大小,而不是 %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  
Run Code Online (Sandbox Code Playgroud)

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

  • `-h` 代表人类,这使得我们人类可读,否则它将以字节为单位 ^^ (4认同)

g_p*_*g_p 35

您可以使用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
Run Code Online (Sandbox Code Playgroud)

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

$ df -Th /dev/sda9

Filesystem     Type  Size  Used Avail Use% Mounted on
/dev/sda9      ext4   22G   16G  4.8G  77% /
Run Code Online (Sandbox Code Playgroud)

您还可以使用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
Run Code Online (Sandbox Code Playgroud)

  • `pydf` 更容易阅读。6/7 的 `df -Th` 条目是令人困惑的垃圾。 (2认同)

Lok*_*nar 15

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

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

$ cd /
$ sudo du -sh ./*
Run Code Online (Sandbox Code Playgroud)

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