VPS 服务因设备空间不足而停机?真的吗?

VPS 服务因设备空间不足而停机?真的吗?

我有一个运行了很长时间的 VPS。它用于一些小型网站以及我自己和家人的私人邮件。根据 directadmin 的说法,我只使用了 10 GB 的空间,而 VPS 应该有 50 GB。

上周我在测试 SQL 查询。昨天我遇到了第一个错误,phpmyadmin 无法执行一条 SQL,原因是:没有剩余空间。小查询确实有效。我将我的 VPS 计划从 50gb 更新为 150gb,并进行了更新:

yum check-update
yum update -y
/usr/local/directadmin/custombuild/build update
/usr/local/directadmin/custombuild/build update_versions
reboot

重启后,Apache、Exim、MariaDB 和 Named 停止运行。Directadmin 正在运行,所以我可以访问它,但我的所有网站和电子邮件现在都无法访问。

当我表演时:

[root@server domains]# systemctl status httpd.service
● httpd.service - The Apache HTTP Server
Loaded: loaded (/etc/systemd/system/httpd.service; enabled; vendor preset: disabled)
Active: failed (Result: resources)

Jun 20 21:53:32 server.intermagic.nl systemd[1]: httpd.service failed to run 'start' task: No space left on device
Jun 20 21:53:32 server.***.nl systemd[1]: Failed to start The Apache HTTP Server.
Jun 20 21:53:32 server.***.nl systemd[1]: Unit httpd.service entered failed state.
Jun 20 21:53:32 server.***.nl systemd[1]: httpd.service failed.
Jun 20 21:57:43 server.***.nl systemd[1]: httpd.service failed to run 'start' task: No space left on device
Jun 20 21:57:43 server.***.nl systemd[1]: Failed to start The Apache HTTP Server.
Jun 20 21:57:43 server.***.nl systemd[1]: httpd.service failed.

经过多次重启后我现在得到:

[admin@server tmp]$ systemctl status httpd.service
● httpd.service - The Apache HTTP Server
   Loaded: loaded (/etc/systemd/system/httpd.service; enabled; vendor preset: disabled)
   Active: failed (Result: resources)

这可能是什么原因造成的?真的是太多错误的 SQL 查询了吗?我该怎么办?我可以重新安装所有内容,但是……

编辑1:

Filesystem                          Size    Used    Avail  Use%   Mounted on 
devtmpfs                            1.9G    0       1.9G   0%     /dev
tmpfs                               1.9G    0       1.9G   0%     /dev/shm
tmpfs                               1.9G    89M     1.8G   5%     /run
tmpfs                               1.9G    0       1.9G   0%     /sys/fs/cgroup
/dev/mapper/vg_directadmin-lv_root  48G     20G     28G    42%    /
/dev/vda1                           497M    262M    236M   53%    /boot
/dev/mapper/vg_directadmin-lv_tmp   1014M   1014M   0      100%   /tmp

答案1

df -h输出中可以很容易地发现使用 100%可用性 0

您的/tmp已满。增加容量并/不能解决这个问题。

问题如何增加 directadmin tmp在 DirectAdmin 论坛上进行了讨论。

答案2

使用以下命令检查系统是否具有足够的可用范围(PFree列):

sudo pvs

如果您有足够的可用 LVM 扩展,您可以通过运行以下命令来扩展/tmp卷:300MB

sudo lvextend -L +300m --resizefs /dev/mapper/vg_directadmin-lv_tmp

如果没有足够的可用区:

  • 您需要查看哪个 /dev/vd[ab][0-9] 块设备上有 /tmp。lsblk将帮助您识别这一点。
  • 扩展存储 /dev/vd[ab][0-9] 块设备的虚拟机的磁盘。这可以在现代云和虚拟化平台中在线完成。
  • 让虚拟机重新扫描块设备以查看大小是否发生变化。以root用户身份运行以下命令,确保使用正确的vd...设备:echo 1 > /sys/block/vd..../device/rescan
  • 扩展LVM物理磁盘:pvresize /dev/vd....
  • 扩展 LV 和文件系统:lvextend -L +300m --resizefs /dev/mapper/vg_directadmin-lv_tmp
  • 无需重启

您还可以使用这个脚本asroot它将生成扩展/tmp卷的命令:sudo bash vol_resize.sh --block-device /dev/mapper/vg_directadmin-lv_tmp

相关内容