我知道如何检查剩余空间:
df -h
Run Code Online (Sandbox Code Playgroud)
我知道要检查文件夹的空间:
du -ch /path/to/folder/
Run Code Online (Sandbox Code Playgroud)
但是假设我有一个 500 GB 的硬盘,并且使用了 350 GB:
哪个是获取空间分布的最佳工具/命令?
我应该做du -ch /吗?(我认为这不是最佳的)
有什么特殊的工具/应用程序可以做到这一点?
我想要一个应用程序来存储空间在我的系统中的分布方式,即每个文件夹中占用的空间......
我想要像SpaceSniffer 这样的东西(你可以在这里查看 windows 工具)。它是一个Windows程序,可以检查您的硬盘并在一个简单而漂亮的 IU 中显示您的计算机上的空间是如何分布的
这种软件在您检查硬盘的那一天非常棒,看起来您已经“丢失”了数百 GB 并且不知道它们在哪里!
编辑
我试过baobab并在我的Ubuntu机器上完美运行/工作,我还测试了JDiskReport,在这里我必须解决一些问题,但它在Ubuntu和Windows 中工作
我假设JDiskReport可以在任何 安装了 Java 的操作系统中工作,这就是我选择作为正确答案的原因。我已经在 Ubuntu、Windows 8、Raspbian 和 CentOS 中尝试过这个,并且在所有这些中都可以使用(你必须安装 Java)
我不得不说,对于那些喜欢命令行的人来说,你的选择应该是ncdu,太棒了!!!
猴面包树IU:

我正在使用 Ubuntu 18.04 在 Windows 10 专业版主机上的 VM VirtualBox 上进行开发,我之前按照以下步骤压缩了虚拟硬盘:https : //www.howtogeek.com/312883/how-to-shrink- a-virtualbox-virtual-machine-and-free-up-disk-space/
除了通常的更新 - 我没有乱用它,(最近刚刚安装了 virtualbox gues 添加的更新)
以前,我只显示了一个 /dev/sda1 - 今天我有三个,当我尝试在其中任何一个上运行 zerofree 时,我发现该设备安装在 rw 中
我也按照这里的一些说明停止了一些服务并尝试重新安装 - 但它没有用
它仍然说挂载点很忙
我不确定这是不是因为最近的更新而发生的?我还通过卸载 vmware 来宾添加进行了测试 - 但它没有用
建议?
我的计算机中只有一个磁盘,一个 80 GB 的 SSD。它被格式化为单个 ext4 分区(无交换),并且所有常用文件夹都安装在其上(我在外部媒体上保留了大量数据,但 /home 和所有其他数据都在 SSD 上)。
今天我启动了它,我收到一条消息,说驱动器已满。我打开磁盘使用分析器来查看什么占用了空间。它坚持使用 67.8 GB 的磁盘,而 / 占用了 36.4 GB。这就引出了一个问题,如果文件系统上没有,那么缺少的 30 GB 在哪里?!
为了进行比较,我将 Nautilus 中列出的所有可读文件夹的所有大小添加为 / 的子文件夹(包括隐藏的)。我有 20.9 GB。垃圾箱无法读取,但我知道它有 16.2 GB,所以总和为 36.1 GB,与磁盘使用分析器报告的内容大致相同。有一些系统文件夹是不可读的,比如 proc,但我怀疑它们加起来最多 30 GB - 否则不可能在小磁盘上安装 Ubuntu,我已经看到它在 2.5 GB 上运行。我认为它们一定是我的计算和磁盘使用情况分析器报告之间的 0.3 GB 差异。
所以我想知道,是什么消耗了这 30 GB 的空间,我该如何释放它们?

编辑并回答 CYREX 的问题
从 Ubuntu 10.10 64 位 live CD 启动(与我的系统相同)。
fsck 结果:
root@ubuntu:~# fsck /dev/sda1
fsck from util-linux-ng 2.17.2
e2fsck 1.41.12 (17-May-2010)
/dev/sda1: clean, 265956/4890624 files, 18073343/19537408 blocks
Run Code Online (Sandbox Code Playgroud)从 SSD …
我只是想知道您是否可以拥有一个太大的交换分区。如果是,什么时候交换分区太大?交换分区太大有什么缺点/不良影响(即使我有足够的磁盘空间)?
如果不是,拥有超过推荐的交换空间有什么好处?
我在使用完整磁盘时遇到了一些问题。
根据df -k我在我的主文件夹中使用 47 GB 的数据,我不知道所有这些数据都藏在哪里。我尝试使用disk usage analyseraka,baobab但由于我的主目录已加密,因此我无法分析哪些文件夹正在使用所有数据(因为 $home 目录只是我加密数据的虚拟表示,更像是一个幻影视图,所以 baobab 只是一直无休止地扫描,而不当我问它来计算所有数据只扫描我的主目录)。
有谁知道分析我所有磁盘空间去哪里的好方法?
顺便说一句,有人对清理磁盘空间有什么好的建议吗?
我喜欢 Windows 10 任务管理器中的 UI:
我特别喜欢这样一个事实,即计算机上最重要的四个共享资源的显示没有虚假信息,并且颜色编码可以让我立即找出主要违规者。
我在 Linux 中看到了几个进程监视器和任务管理器,但没有一个能与此显示的清晰度相匹配。特别是,大多数任务管理器将自己限制在 CPU 和内存上。
是否有模拟此 GUI 的 Linux 进程管理器?
编辑以使问题更清楚:我正在寻找一个任务管理器,它可以清楚地显示这四列中的信息:处理器、内存、磁盘和网络使用按进程的分解,可能在一个整洁的 UI 中并且没有其他虚假信息。我可以在 Linux 上找到很多只显示该表前两列的系统监控工具。我还可以找到绘制总网络使用情况与时间关系的工具。两者似乎都不如 Windows 10 的任务管理器有效:它们不允许我立即确定四个中哪一个是我的系统瓶颈以及哪个进程占用了大部分资源。
每次我阅读安装 SDK、IDE、一些扩展等的提示时,它都会说,我应该将它们解压到/opt文件夹中。为什么我需要这样做?
当我安装 Ubuntu 时,我读到我应该只为/文件系统设置 10-20 GiB,为/home. 那么我应该扩展根文件夹的空间,还是将所有内容保留在/home?有什么区别吗?
当我收到软件更新消息并单击安装时,我收到一条消息“空间不足”,告诉我清空垃圾箱并使用sudo apt-get clean. 我已经清空了垃圾箱,但仍然收到相同的消息,并且不知道要删除哪些临时文件或删除哪些临时文件sudo apt-get clean。
我df -h过去常常查看格式化大小,但如何查看实际大小?
我相信我的一个磁盘是 3TB 但格式化为 2TB 但不确定是哪个。(它们很远,所以我看不到!)
我想要一种通过使用安装分区的目录来捕获特定分区的磁盘使用情况的方法。输出应该只是一个没有填充或跟随符号的整数,因为我想将它保存在一个变量中。
我使用过df --output=pcent /mount/point,但需要修剪输出,因为它有一个不必要的标题,值前有一个空格填充,值后面有一个 % 符号,如下所示:
Use%
83%
Run Code Online (Sandbox Code Playgroud)
在这种情况下,我想要的输出只是83. 我不知道使用 的输出有什么缺点df,但很高兴接受不依赖它的其他方法。
disk-usage ×10
partitioning ×3
16.04 ×1
18.04 ×1
apt ×1
bash ×1
cleanup ×1
command-line ×1
filesystem ×1
hard-drive ×1
indicator ×1
process ×1
ram ×1
remote ×1
scripts ×1
swap ×1
virtualbox ×1