一次虚拟机centos7系统崩溃恢复记录

      前两天,因为单独断开电源测试网络,结果不知道为什么,两台虚拟机中一台就出现紧急状态,看日志是下面情况

一次虚拟机centos7系统崩溃恢复记录_第1张图片

通过网上一些资料,说可以通过xfs_repair -v -L /dev/dm-0来修复,但这次我这里没有相关

看这个mapper也是dm-0

一次虚拟机centos7系统崩溃恢复记录_第2张图片

一次虚拟机centos7系统崩溃恢复记录_第3张图片

实际就是上面的情况

后来

使用安装光盘启动:进入救援模式
Troubleshooting -> Rescue a CentOS system
alt + tab 键显示终端
执行下面命令:
xfs_repair -v -L /dev/dm-0

 出现下面的错误

一次虚拟机centos7系统崩溃恢复记录_第4张图片

后来怎么弄也不行,跟网上的都不一样的现象,还是放弃了吧,重新安装了。

1、安装centos7

CentOS-7-x86_64-DVD-1511.iso 把这个作为虚拟机的启动iso,启动后使用最小安装,不安装图形界面,只安装字符界面的。

安装相对比较简单,傻瓜式的,只要配置好网络,设置好时区,设置好管理密码就可以了。

2、进入/etc/sysconfig/network-scripts 进行网络配置 ,我的配置如下:

[root@localhost network-scripts]# more ifcfg-eno16777736

TYPE=Ethernet

BOOTPROTO=none

DEFROUTE=yes

IPV4_FAILURE_FATAL=no

IPV6INIT=yes

IPV6_AUTOCONF=yes

IPV6_DEFROUTE=yes

IPV6_FAILURE_FATAL=no

NAME=eno16777736

UUID=25eb03a0-716b-485a-bd8a-bae421871187

DEVICE=eno16777736

ONBOOT=yes

IPADDR=192.168.199.151

PREFIX=24

GATEWAY=192.168.199.2

IPV6_PEERDNS=yes

IPV6_PEERROUTES=yes

IPV6_PRIVACY=no

DNS1=202.96.104.15

DOMAIN=114.114.114.114

3、安装必备的软件

yum install docker 是开发测试用,否则可以考虑用docker-ce版本

yum install java-1.8.0

java -version

yum list net-tools 安装网络工具

4、启动docker前的动作

需要编辑vi /etc/sysconfig/docker

将配置文件的“--selinux-enabled”改成“--selinux-enabled=false”,

service docker start

同时systemctl enable docker.service 让docker的服务系统启动后自动启动。

5、同时防火墙增加端口

firewall-cmd --add-port=3306/tcp --permanent

firewall-cmd --add-port=6379/tcp --permanent

firewall-cmd --reload

firewall-cmd --list-all

6、下载mysql与redis docker镜像

docker pull mysql:5.7.21

docker pull redis:3.2

7、安装运行docker mysql和redis

在相应地方建立目录

docker run -p 3306:3306 --name mastermysql -v /home/mydata/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=mastermysql -d mysql:5.7.21

docker run -p 6379:6379 --name masterredis -v /home/mydata/redis/data:/data -v /home/mydata/redis/conf/master.conf:/data/redis.conf --privileged=true -d redis:3.2 redis-server /data/redis.conf --requirepass "masterredis" --appendonly yes

8、配置mysql启动参数

通过进入mysql容量里

在/etc/mysql/mysql.conf.d里的mysqld.cnf增加下面参数

sql_mode = STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

lower_case_table_names=1

9、还原nbcio-boot.sql

还原会原来备份的nbcio-boot.sql文件

这样整个开发环境又恢复了。

更多功能看演示系统

gitee源代码地址

后端代码: https://gitee.com/nbacheng/nbcio-boot

前端代码:https://gitee.com/nbacheng/nbcio-vue.git

在线演示(包括H5) : http://122.227.135.243:9888
 

你可能感兴趣的:(linux,运维,服务器)