场景:
前几天在 Linux 服务器安装好了 小皮面板, 然后也成功的部署了PbootCMS项目, 今天突然在登陆小皮面板的时候报错 验证码不正确 (可是我输入的验证码是没问题的), 然后我就重新启动了小皮面板
输入命令 --> xp --> 3, 结果是报错了, 没有启动成功,
报错如下:
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
Error: failed to start containers: centos_env
查了一下资料, 是因为docker没有启动成功导致的, 于是我又重启了docker, 发现此时docker也启动不了, 报错 “No space left on device” , 我的天这又是什么问题 啊啊啊啊啊 !!!!!
于是我又找了一下资料, 发现是服务器的磁盘满了, 没有可用空间, 导致有些文件不能写入,
我用 df -i 命令查看了一下磁盘的使用情况, 发现当时/dev/vda1 已用47%, 那这个就不正常,
再用 df -i 命令查看Inode使用情况, 发现当时 /dev/vda1 已用 100%, 真是变态
因为/dev/vda1 这个是挂载在 / 根目录下的, 我们需要进行到根目录执行 du -sh * 命令,
我们不断的进入大文件夹使用 du -sh * 命令查看磁盘使用情况, 最终定位到具体的文件夹
发现罪魁祸首是我们部署的PbootCMS项目下的一个 runtime/session 的一个文件夹占用很高, 于是我们把session文件夹删除 使用 rm -rf session 命令
最后重新重启小皮面板就行了, 此时就可以登陆成功. 不会报验证码错误了.
最后总结一下解决方案:
方案1: 先重启docker, docker启动有问题的话使用 du -sh * 命令 或者 df -i 命令查询磁盘占用情况, 最后将大文件删除, 重新启动小皮面板 --> xp --> 3
方案2: 定位到大文件, 将其删除,
2.1: 卸载小皮面板 --> xp --> 98
2.2: 重新安装小皮面板 yum install -y wget && wget -O install.sh https://download.xp.cn/install.sh && sh install.sh (我这里使用的系统是 CentOS)
2.3: 重新部署pbootcms项目即可
温馨提示: pbootcms的这个runtime/session文件夹需要使用脚本取定时删除, 不然这个问题日后依然会出现, 具体的脚本可以参考我主页另外的博客