站点图标 IDC铺

宝塔面板如何解决出现提示No space left on device且无法进入面板管理

如果我们有在使用云服务器的时候肯定会有遇到各种问题,比如今天上午小编再次遇到一个网友宝塔面板无法进入客户端的问题。且在检查服务器远程的时候有看到提示No space left on device,这个问题其实也是比较普遍的,包括我们在使用其他WEB环境也都有遇到过,就是磁盘满导致的。

小编看到他选择的一家云服务器商是50GB磁盘,但是实际上系统盘是10GB,挂载盘是40GB,只不过他开始没有挂载,而直接就使用到10GB系统盘,40GB挂载盘没有用,所以磁盘很容易满的,系统就有好几个GB存储,然后他网站都是图片。遇到这个问题我们就解决吧。

第一、清理部分文件让其恢复

这个部分我们可以清理一些没用的文件,比如日志缓存等,来让网站可以正常访问。

1、清理日志

cd /www/server/panel && python tools.pyc clear
2、清理回收站
rm -rf /www/Recycle_bin/*
3、清理数据库日志
    /etc/init.d/mysqld stop
    rm -f /www/server/data/ib_logfile*
    rm -f /www/server/data/mysql-bin.*
    /etc/init.d/mysqld start
这个时候我们可以看到服务器可以腾出2个GB出来,我们重启面板后就可以正常进入面板和网站。于是我让他备份数据到本地,后面需要重新挂载目录。

第二、检查是否有大文件删除

小编在帮他备份网站的时候发现他网站其实也就2GB左右,那肯定是还有大文件没有删除。

    #当目录下的大于1G、100MB、10MB的文件
    find . -type f -size +1024M
    find . -type f -size +100M
    find . -type f -size +10M
我们可以用到命令检查是否有无用大文件。

们需要检查是否有大文件然后删除。
    sudo du -s * | sort -nr | head #显示前10个占用空间最大的文件或目录 
    dudo du -hm --max-depth=2 | sort -nr | head -12 #显示前12个占用空间大的目录(包括二级目录)
或者用这个命令查看文件筛选出来。

第三、查看inode占用情况

其实有些时候不是磁盘占满,而是inode占满。

    #当前各大文件夹占用inode情况
    for i in /var/*; do echo $i; find $i |wc -l; done
    #排序
    sudo find . -xdev -type f | cut -d "/" -f 2 | sort | uniq -c | sort -n
然后我们用命令查看所在目录。

一般来说是内置的邮件导致inode占满。

apt-get remove sendmail*
yum remove sendmail
或者
yum remove postfix
sudo apt-get remove postfix
sudo apt-get remove --auto-remove postfix
理论上inode一般来说是用不完的,除非是程序产生大量的日志,如果是/var/spool/postfix/maildrop/ 中有大量的文件,而且我们还在使用postfix的话,可以确定是因为postfix运行不正常导致的。当然如果sendmail或者postfix正常运行,则会在/var/mail目录下也会堆积大量的邮件。

我们可以关停这个功能。

退出移动版