如何检查并释放 VDS 服务器的剩余空间
当服务器磁盘空间被占用 100% 时,许多内部服务将无法正常运行。这是因为无法为服务创建临时文件。在这种情况下,通常无法通过控制面板查看空间,因此必须通过 SSH 连接到服务器。
SSH 是一种用于远程管理服务器和操作系统的网络协议。
要通过 SSH 连接到服务器,需要下载 SSH 客户端。您可以从以下链接下载 "PuTTY":https://putty.org.ru/download.html
运行 putty.exe,在窗口中输入服务器的 IP 地址,然后点击 "Open"(打开),如下图所示:
重要提示:如果您不知道服务器 IP,请登录 1host.kz 个人中心,在 "我的 VPS/VDS" 部分查看。
建议您找到订购服务时发送到邮箱的服务器设置邮件,其中包含远程登录所需的凭据。
点击“打开”后会出现一个黑色窗口,输入登录名和密码。登录名通常为 "root"。
请注意!输入密码时屏幕不会显示任何字符。无法使用 Ctrl+V 粘贴,请使用 Shift+Ins 或单击鼠标右键来粘贴复制的密码。
登录成功后将出现命令行。
现在在命令行中输入以下命令:
df -h (按回车键) — 显示服务器磁盘占用信息。
如图所示,"Use%" 字段显示空间占用已达 100%。
执行以下命令查找占用空间的文件夹:
cd / (回车) — 进入根目录;
du -sh * (回车) — 列出各目录及其占用的空间。
在此示例中,/var 文件夹占用了 9.2G。进一步检查该文件夹:
cd var/ (回车) — 进入 /var 文件夹;
du -sh * (回车) — 显示 /var 文件夹内的占用情况。
以此类推,进入 /var/log/ 文件夹:
cd log/ (注意此处不用斜杠,因为已在 /var 中)
du -sh *
我们可以看到 test.log (9.1 GB) 和 test2.log (3.3 GB) 占用了大量空间。
建议清空文件内容而不是直接删除,执行以下命令:
echo "" > test.log (回车) — 清空 test.log;
echo "" > test2.log (回车) — 清空 test2.log;
du -sh * (回车) — 再次查看空间。
现在这些文件各仅占 4 KB。使用 df -h 确认空间已释放。
最后输入 reboot 重启服务器,使所有服务恢复正常运行。
重要提示:这只是临时解决方案。恢复运行后,应检查日志文件中的错误原因并修复,以防止空间再次被填满。
警告:请勿删除以下系统关键目录中的文件:
- /bin, /boot, /dev, /lib, /lib64, /proc, /run, /sys, /sbin
- /usr — 仅在确定安全的情况下删除。
- /var/lib/ — 仅建议清理 .log 结尾的日志文件。
快速查找大文件的常用命令:
find / -size +1024M -print — 查找大于 1GB 的所有文件;
for i in $(du --exclude=/proc --exclude=/dev --exclude=/bin --exclude=/sbin --exclude=/sys -sh / | grep G | awk '{print $2}'); do for dir in $(find $i -type d); do du -sh $dir | grep G; done ; done — 查找占用空间最大的文件夹。