记录一次宝塔系统硬盘清理过程,Linux目录/dev/vda2满了进行清理,删除/www/swap文件

今天程序出现file_put_contents(): write of 38 bytes failed with errno=28 No space left on, 查询发现是硬盘空间满了导致;

报错解释:

这个错误表示file_put_contents()函数在尝试写入数据到文件时失败了,因为磁盘空间不足。errno=28对应的错误是ENOSPC,即No space left on device,意味着没有足够的磁盘空间来完成写入操作。

解决方法:

  1. 检查磁盘空间:使用df -h命令查看当前磁盘空间使用情况。

  2. 清理磁盘空间:删除不必要的文件或移动到其他存储设备来释放空间。

  3. 如果是日志文件导致的,可以考虑清理或旋转日志文件,或者增加磁盘空间。

  4. 确保磁盘空间足够后,重新尝试执行写入操作。

     

进入服务器

df -H一看

/dev/vda2 满了

 

然后进行了一系列操作程序恢复了正常。

操作如下:

使用”cd /”命令切换根目录

cd /

使用”du -sh *”查看当前目录下每一个的目录和文件的大小汇总

[root@cs38 /]# du -sh *
8.1M    bin
61M    boot
4.0K    cgroup
4.4G    data
184K    dev
23M    etc
42G    home
306M    lib
27M    lib64
1.6M    Lib_Utils-1.00-09.noarch.rpm
148K    logs
16K    lost+found
4.0K    media
1.3M    MegaCli-8.02.21-1.noarch.rpm
0    misc
4.0K    mnt
0    net
45M    opt
4.0K    page.tar.gz
du: cannot access `proc/12515/task/12515/fd/4': No such file or directory
du: cannot access `proc/12515/task/12515/fdinfo/4': No such file or directory
du: cannot access `proc/12515/fd/4': No such file or directory
du: cannot access `proc/12515/fdinfo/4': No such file or directory
0    proc
15M    roo
2.5G    root
17M    sbin
4.0K    selinux
4.0K    srv
0    sys
98M    titan
1.5M    tmp
12K    tmp.target.cap
1.9G    usr
1.5G    var

然后查看哪个目录占用空间大,继续使用cd命令进入相应的目录,继续使用du命令进行查看,然后删除一下没用的文件,或者把它挂载到其他分区。

清理一波结束后我们再看下磁盘使用情况:

root@VM-8-12-ubuntu:~# df -H
Filesystem      Size  Used Avail Use% Mounted on
udev            985M     0  985M   0% /dev
tmpfs           207M  6.3M  201M   4% /run
/dev/vda2        43G  8.3G   33G  21% /
tmpfs           1.1G   41k  1.1G   1% /dev/shm
tmpfs           5.3M     0  5.3M   0% /run/lock
tmpfs           1.1G     0  1.1G   0% /sys/fs/cgroup
tmpfs           207M     0  207M   0% /run/user/1000

 

最后删除宝塔www目录下swap文件

问题一 :无法删除 swap 文件

rm: cannot remove ‘/www/swap’: Operation not permitted

此文件作用是交换分区(虚拟内存),当内存不够用时会临时使用交换分区,
可以执行以下两条命令清除:

swapoff /www/swap

rm -f /www/swap

问题二 :无法删除 .user.ini 文件

rm: cannot remove ‘../.user.ini’: Operation not permitted

.user.ini是lnmp文件,里面放的是你网站的文件夹路径地址。目的是防止跨目录访问和文件跨目录读取进入到’.user.ini’所在目录,执行一下 lsattr -a,查看文件下下边包含文件的属性,看到`.user.ini’有个’i’属性,代表不得任意更动文件或目录

可以执行命令以下命令去除’i’属性之后再删除文件:
chattr -i .user.ini

扫码领红包

微信赞赏支付宝扫码领红包

发表回复

后才能评论