操作系统:CentOS-7.x
遇到问题:系统无法启动,需要把/data/server下面的数据拷贝出来
解决办法:使用CentOS-7.x光盘引导进入救援模式,拷贝数据
一、系统损坏无法启动,使用救援模式修复后可以正常启动
1、模拟故障,系统无法启动
#这个命令会删除系统引导文件,导致系统无法正常启动,可以使用救援模式修复系统
rm -rf /boot/grub2
shutdown -r now #重启后系统已经无法启动了
2、设置光盘引导重启系统
选择故障排除模式Troubleshooting
选择救援模式Rescue a CentOS system
选择1,继续
chroot /mnt/sysimage
3、修复系统
grub2-install /dev/sda
grub2-mkconfig -o /boot/grub2/grub.cfg
exit
reboot
现在可以正常进入系统了
二、系统损坏无法启动,无法修复,只能通过救援模式把里面的数据拷贝出来
1、模拟故障,系统无法启动
#这个命令会用零覆盖硬盘的第一个扇区,通常会影响硬盘的主引导记录(MBR),会导致系统无法启动。
dd if=/dev/zero of=/dev/sda bs=1 count=446
2、设置光盘引导重启系统
选择故障排除模式Troubleshooting
选择救援模式Rescue a CentOS system
选择1,继续
chroot /mnt/sysimage #挂载之前的系统
df -h #查看磁盘信息
cd /data/server
ls
#可以看到数据都在,现在需要把这个目录下的数据打包拷贝到同一局域网的其他服务器上面
3、在救援模式下设置ip地址、网关、DNS
ip地址:192.168.21.101
网关:192.168.21.2
DNS:8.8.8.8 8.8.4.4
3.1使用nmcli命令来设置
nmcli device status #查看网卡
nmcli con add type ethernet con-name my-connection ifname ens33 ip4 192.168.21.101/24
nmcli con mod my-connection ipv4.gateway 192.168.21.2
nmcli con mod my-connection ipv4.dns "8.8.8.8 8.8.4.4"
nmcli con up my-connection
ip addr show ens33
ip route
3.2使用ip命令来设置
#设置IP地址和网关
ipaddr #查看网卡
ip addr add 192.168.21.101/24 dev ens33
ip route add default via 192.168.21.2
ip addr show dev ens33
ip route show
#设置DNS
echo "nameserver 8.8.8.8" > /etc/resolv.conf
echo "nameserver 8.8.4.4" >> /etc/resolv.conf
systemctl restart NetworkManager #重启服务使配置生效
#CentOS-7默认没有ifconfig,如果是CentOS-6也可以使用ifconfig设置
ifconfig ens33 192.168.21.101 netmask 255.255.255.0 up
route add default gw 192.168.21.2
4、拷贝数据到其他服务器上面
cd /data
tar zcvf server.tar.gz server
scp server.tar.gz 192.168.21.141:/tmp
#如果数据比较大可以在后台执行
nohup scp server.tar.gz 192.168.21.141:/tmp &
#可以看到数据已经备份到其他服务器上了
#退出救援模式并重启系统
exit
reboot
至此,Linux系统进入救援模式备份数据完成。