我有一个 VPS,磁盘空间有点不足。长期计划要求迁移到具有更大磁盘的系统,但与此同时,我需要查看当前的磁盘使用情况并清除不必要的东西(例如旧数据库转储)。
到目前为止,我一直在使用du -hc --max-depth=<n>
来查看目录,例如/var/www
和/home
,但这是一个相当密集的过程,并且并不总是容易找到能够发现磁盘使用情况的深度。我想找到类似磁盘清单 X它会向我展示一个占用空间的漂亮图表,并且 Linux 上有这样的工具,但是是否有一个可以通过 SSH 运行或获取一些数据(甚至可能来自大量du
运行)并离线可视化的工具?
答案1
我不知道有什么好的命令行磁盘使用可视化应用程序,但与 curses 或类似程序一起会是一个很好的项目 :)
我通常使用类似下面的方法,然后通过以下方式翻阅输出文件less
:
查找 / -type f -exec du -k {} + | sort -nr | cut -f2 | xargs -d'\n'du -sh > /tmp/usage.txt
文件从大到小排序,因此很容易找出罪魁祸首......
782M /ftp/1.zip 321M /ftp/2.zip 321M /ftp/3.zip 211M /ftp/4.zip 193M /ftp/5.wmv 183M /ftp/6.zip 175M /ftp/7.pdf 156M /ftp/8.MPG 133M /ftp/9.exe 111M /ftp/10.pdf 104M /ftp/11.MPG 96M /ftp/12.rvt
你甚至可以更进一步使用 grep 来获取某些文件类型:
grep "\.zip" /tmp/usage.txt
瞧:
782M /ftp/1.zip 321M /ftp/2.zip 321M /ftp/3.zip 211M /ftp/4.zip 183M /ftp/6.zip
答案2
如果你正在运行 Linux 桌面(或其他带有 X 服务器的设备),你可以尝试通过 SSH 运行你喜欢的 X 应用程序就像这样。这将有多高效和响应取决于离开服务器并进入您当前位置的带宽(和延迟)(除非服务器位于本地 LAN 上,在这种情况下带宽和延迟不会成为大问题)。您可能需要确保使用 SSH 客户端的压缩选项,因为我认为 X 协议默认不会压缩任何东西。
Windows 也有几种选项,你只需要安装一些额外的东西。你可以安装赛格威并使用我以前用过的 X 服务器和 SSH 客户端,或者你可以尝试Xming+puTTY我还没来得及尝试。
与通过 VNC 控制机器不同,您不需要在服务器上安装完整的 X - 您只需要运行工具所需的 X 客户端库。
答案3
交互的
du -x --max-depth 1 | sort -n
非常好。只需 cd 进入不同的目录即可。John T 的答案可以更快地找到大文件。如果您没有大文件(或者说没有很多大文件),这可能会更好。