异常断电文件损坏docker服务异常处理

news2024/9/28 23:32:13

问题场景

  • 我们在某地部署信控平台,当初是在产品研发早期,采取的还是Windows服务器部署虚拟机的方式
  • 使用virtualbox导入centos7虚拟机,虚拟机里运行docker服务,使用docker-compose统一管理
  • 客户今天上午反馈,昨天断电了两次,平台没有自动重启没有启动起来,收到执行启动命令也卡主不动
  • 卡主的位置,对应的一条语句是docker network create signal-network,创建网络
    在这里插入图片描述

解决

container

  • 看着页面卡主了,检查了下内存占用和磁盘空间,都没问题,重复执行还是卡主
  • 首先让维保人员,把虚拟机关掉,又重启了一次,毕竟重启解决大部分问题
  • 重启后,还是不行,然后怀疑docker服务有问题,执行docker -v 发现也没反应,还是卡主,确定是docker服务有问题了
    在这里插入图片描述
  • 执行docker服务的重启命令systemctl restart docker,还是不行
  • 想着要先想办法把docker关掉,再启动试试,于是试着分开命令执行,还是不行
systemctl stop docker
systemctl stop docker.socket
systemctl stop docker.service
systemctl stop docker
systemctl restart docker
  • 使用 journalctl - xe查看报错信息,发现containerd没启动起来,使用命令systemctl status containerd也是一样,加上-l查看详细信息
    在这里插入图片描述
  • 这个时候知道事情不简单了,感觉应该是断电导致文件损坏了,先去网上搜索下,解决这个containerd
  • 异常断电,文件损坏,一般都是正在读写的文件,于是按照搜索结果,删除containerd的文件夹里的文件执行命令,containerd 可以了
rm -rf /var/lib/containerd/*
systemctl restart containerd

在这里插入图片描述

docker服务

  • 继续执行docker服务的重启命令systemctl restart docker,还是不行,头大,卡在了启动过程systemctl docker activating (start) ,一直启动不起来
    在这里插入图片描述

  • 感觉像是启动过程中卡主卡死了,于是想着把进程ps -ef|grep docker直接干掉kill -9 xxx xxx ...,再启动试试,还是不行

  • 想着containerd 都解决了,也是实在不想重装虚拟机,就继续搜索解决。systemctl status docker -l继续查看详细报错信息
    -
    在这里插入图片描述

  • 想着是不是网络问题,搜索结果里也有些说是防火墙影响的,先关闭防火墙systemctl stop firewalld,重启虚拟机,再启动docker解决,我试了下,不行

  • 此时docker -v可以了,有输出了,以为好了,很高兴

  • 试了下其他命令如docker images,还是不行,会报错Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon
    在这里插入图片描述

  • systemctl status docker -l查看status,发现新的报错start request repeated too quickly for docker.service
    在这里插入图片描述

  • 使用journalctl -u docker.service继续查看更详细的日志,发现启动某个容器时报错了,就去把容器文件夹都删了,还是不行

  • 没招了,重装系统是不可能的,就把docker卸载了,然后重装,可以了

rm -rf /var/lib/docker

yum remove docker-ce docker-ce-cli containerd.io

rm -rf /etc/docker
rm -rf /etc/systemd/system/docker.service.d
  • 此处还有两个小插曲,一是可能没删干净,准备的rpm包,不能使用命令rpm -ivh *.rpm一次性安装完成,只能一个个执行
  • 第二是,这种重装会将已有的镜像和容器全部删干净,如果没有备份镜像或将可变数据映射到本地卷,数据就会丢失了
  • 我们所有要的数据,都映射到其他目录了,所以可以放心删除和重装,镜像也都有现成的,重新装载即可

数据库服务

  • docker搞定后,发现PostgreSQL数据库文件也损坏了,数据库启动不了,找不到 checkpoint
    在这里插入图片描述

  • 幸好,我每天都对数据库文件夹全量备份,删掉现有的,还原即可

  • 坑爹的是,第一次还原时,忘了把数据库停掉,还原的文件也不对,只好重来

  • 数据库关闭,文件夹情况,还原备份文件,搞定

后续

  • 异常断电,容易造成损坏,Windows服务器套虚拟机更是如此,一定要做好备份工作
    在这里插入图片描述
    在这里插入图片描述

  • 下次如果再出问题,导出一份数据库后,直接还原到这个日期就行

  • 再把数据库也导进去,就是最新状态了(其他缓存和队列里的数据无所谓)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1181522.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Pygame游戏实战四:打砖块

介绍模块 本游戏使用的是由Pycharm中的pygame模块来实现的,也可以在python中运行。通过Pygame制作一个打砖块,通过击打砖块来得到更多的分数,看看这个是你小时候玩的游戏吗? 最小开发框架 详情请看此文章:Pygame游戏…

界面组件Telerik UI for WinForms中文教程 - 如何自定义应用程序文件窗口?

Telerik UI for WinForms包含了一个高度可定制的组件,它取代了.NET中默认的OpenFileDialog。在下一个更新版本中,会发布一个向对话框浏览器提那家自定义位置的请求功能,本文演示了这个和另一个自定义功能,它可以帮助用户在浏览文件…

【题解】2023 DTS算法竞赛集训 第1次

比赛地址&#xff1a;https://www.luogu.com.cn/contest/143650 P1319 压缩技术 https://www.luogu.com.cn/problem/P1319 简单的签到模拟题 #include <iostream>//c标准库 using namespace std; int main(){int a,n,t0,i0,b,s0;//t判断有没有回车&#xff0c;i判断输…

分支限界法求解迷宫问题

问题描述 从入口出发&#xff0c;按某一方向向前探索&#xff0c;若能走通(未走过的&#xff09;&#xff0c;即某处可以到达&#xff0c;则到达新点&#xff0c;否则试探下一方向&#xff1b;若该点所有的方向均没有通路&#xff0c;则沿原路返回到前一点&#xff0c;换下一个…

一台抵得上多种测量仪器-B1500A半导体参数分析仪

一台抵得上多种测量仪器-B1500A半导体参数分析仪 B1500A 半导体器件分析仪 卓越的测量能力&#xff0c; 完美的一体化解决方案&#xff0c; 经济高效, 出色的软件。 #B1500A 3步表征设备 使用B1500A半导体参数分析仪或PC上随附的EasyEXPERT group 表征软件。EasyEXPERT …

如何卸载在linux下通过rpm安装的mysql

目录 1.先关闭MySQL服务并查看运行状态 2.使用 rpm 管道命令的方式查看已安装的mysql 3. 使用rpm -ev 命令移除安装 4. 删除MySQL数据库内容 1.先关闭MySQL服务并查看运行状态 如果之前安装过并已经启动&#xff0c;则需要卸载前请先关闭MySQL服务 systemctl stop mysqld…

Juniper Networks Junos OS EX远程命令执行漏洞(CVE-2023-36845)

Juniper Networks Junos OS EX远程命令执行漏洞&#xff08;CVE-2023-36845&#xff09; 免责声明漏洞描述漏洞影响漏洞危害网络测绘Fofa: body"J-web" || title"Juniper Web Device Manager" 漏洞复现1. 构造poc2. 查看文件3. 执行命令 免责声明 仅用于技…

【编译原理】LL(1)文法

文章目录 语法分析基本概念自上而下语法分析自上而下语法分析的问题 消除文法左递归消除直接左递归消除间接左递归消除左递归的算法 解决回溯问题FIRST集与提出公共左因子FIRST集提取左公共因子 FOLLOW集合 构造FIRST集和FOLLOW集构造FIRST集合构造每个文法符号的FIRST集合构造…

新书稿费终于下来了!你猜有多少?

我的新书《从零开始学ARM》从正式出版到现在已经有半年时间了&#xff01; 第一批印刷的几千册已经基本销售完&#xff0c; 第二版会对其中勘误进行修正&#xff0c;并继续继续印刷。 前两年写书、审稿&#xff0c; 所有业余时间都耗在这上面了&#xff0c; 在下面这篇文章…

人大金仓KingbaseES_V008R006C008B0014安装

人大金仓安装 一、安装前准备工作 1、硬件环境要求 KingbaseES支持通用X86_64、龙芯、飞腾、鲲鹏等国产CPU硬件体系架构。 2、软件环境要求 KingbaseES支持各种主流的Linux操作系统64位发行版本&#xff0c;包括CentOS、中标麒麟、银河麒麟、统信UOS、Deepin、凝思、中科方…

基于springboot+vue开发的教师工作量管理系

教师工作量管理系 springboot31 摘要 随着信息技术在管理上越来越深入而广泛的应用&#xff0c;管理信息系统的实施在技术上已逐步成熟。本文介绍了教师工作量管理系统的开发全过程。通过分析教师工作量管理系统管理的不足&#xff0c;创建了一个计算机管理教师工作量管理系…

EtherCAT转EtherNET/IP协议网关控制EtherCAT伺服驱动器的方法

只需一步&#xff0c;将你的EtherCAT协议设备转换为EthernetIP协议&#xff01; 捷米特JM-ECTM-EIP网关&#xff0c;这款专为EtherCAT协议设备设计的转接装置&#xff0c;可以轻松地将EtherCAT设备数据采集的数据转换成EthernetIP协议。而且&#xff0c;我们的网关接口非常灵活…

同星智能亮相2023北美汽车测试展,国产替代的前方是“星辰大海”!

01 圆满落幕 2023年10月24日至10月26日&#xff0c;为期三天的2023北美汽车测试展览会&#xff08;Automotive Testing Expo&#xff09;在美国密歇根 Surburban Collection Showplace 成功举行。同星智能作为一家具备全球影响力的中国工业软件企业亮相了本次展会&#xff0c;…

聊一聊 tcp/ip 在.NET故障分析的重要性

一&#xff1a;背景 1. 讲故事 这段时间分析了几个和网络故障有关的.NET程序之后&#xff0c;真的越来越体会到计算机基础课的重要&#xff0c;比如 计算机网络 课&#xff0c;如果没有对 tcpip协议 的深刻理解&#xff0c;解决这些问题真的很难&#xff0c;因为你只能在高层…

linux 安装 Anaconda3

文章目录 一、下载二、安装1.使用xftp把下载包拉到服务器上2.执行安装命令3、在安装时没有自动添加环境变量&#xff0c;这里手动设置3.1.1通过修改~/.bashrc来配置环境变量3.1.2 重新载入配置文件3.1.3 测试 一、下载 官网下载链接 二、安装 1.使用xftp把下载包拉到服务器上…

安装RabbitMQ

安装RabbitMQ 下载需要的两个包 # 这直接就可以安装了&#xff0c;下面 ‘上传对应的rmp包’ 操作 [rootrabbitmq-1 ~]# curl -s https://packagecloud.io/install/repositories/rabbitmq/erlang/script.rpm.sh | sudo bash [rootrabbitmq-1 ~]# yum install erlang-21.3.8.2…

linux继续循环案例测试ping网络,目录下的文件权限循环输出

第一&#xff1a;查看本机ip #ip addr 通过脚本访问本机ip1-100&#xff0c;是否可以ping通&#xff0c;并显示结果&#xff0c;上图 知识点 ping -c 数字1 -w 数字1&#xff0c;向目的ip发送1个数据包&#xff0c;等待1秒&#xff0c;无回复中止 &>/dev/null 知…

python 之生成器表达式,以及与列表推导式的区别

文章目录 生成器表达式基本结构示例生成一个简单的生成器遍历生成器并获取值使用条件过滤 优点 生成器表达式与列表推导式的区别1. 返回类型2. 生成方式3. 内存占用4. 访问方式示例总结 生成器表达式是一种在 Python 中用来创建生成器的高效方法。生成器表达式和列表推导式类似…

The valid characters are defined in RFC 7230 and RFC 3986

服務器通過Body 對象接收參數&#xff0c;而客戶端通過param 地址URL傳參數&#xff0c;不能解析。 return axiosHelper<Protocol<ABC[]>>({method: POST,url: ,data: _reqparams: {data: _req}}) public List<InvoiceItem> getAAAA(RequestBody Query quer…

Ubuntu 22.04.3 LTS中安装singularity

文章目录 概要背景知识什么是singularity ? 安装流程1. 安装Go2. 下载Singularity3. 编译Singularity源代码 4. 验证安装是否成功singularity的使用安装open structure 小结 概要 这里主要记录singularity的安装和使用&#xff0c;安装过程中会出现相关的错误&#xff0c;所以…