引导程序中出现的错误解决
鉴于系统中的不确定性,安全性,服务器linux开机的启动过程为:开机自检,mbr引导,GRUB菜单,加载内核,init的初始化,可能会儿被病毒或者出现异常,而导致开不了机,那么如何解决那,大部分都是进入安装镜像文件进入急救模式,
进入急救模式
进入光盘启动:
选择1,进入一个shell界面
MBR扇区故障处理
由于病毒或者木马的破坏的错误,找不到引导程序,无法加载操作系统,开机后黑屏等等
解决思路,提前备份好文件夹,安装光盘引导进入急救模式,从备份文件夹中恢复
实例:通过备份文件修复MBR故障
mkdir /tmp/local
mount /dev/sdb1 /tmp/local/
dd if=/dev/sda of=/tmp/local/test bs=512 count=1 备份
dd if=/dev/zero of=/dev/sda bs=512 count=1 制作故障
[root@localhost ~]# sync
[root@localhost ~]# sync
[root@localhost ~]# sync 多写几次到磁盘
[root@localhost ~]# reboot 重启
进入修复模式
mkdir /backlocal
mount /dev/sdb1 /backlocal 挂载
dd if=/backlocal/test of=/dev/sda bs=512 count=1 修复故障
exit 退出,从本地硬盘启动,
GRUB菜单故障的修复
故障原因:MBR中的GRUB引导程序遭到破坏,其中/boot/grub2/grub.conf文件丢失,引导配置错误,系统会儿停留到grub>界面无法完成进一步的系统启动过程
方法一:
通过进入修复模式,grub2-mkconfig命令修复grub.cfg文件丢失或配置错误故障
rm -rf /boot/grub2/grub.cfg 模拟故障
进入修复模式:
chroot /mnt/sysimage 进入本地硬盘
grub2-mkconfig > /boot/grub2/grub.cfg 命令修复
方法二:
通过备份文件修复grub.cfg文件丢失或配置错误故障
cp /boot/grub2/ grub.cfg /tmp/grub.cfg 备份
rm -rf /boot/grub2/grub.cfg 模拟故障
进入修复模式:
chroot /mnt/sysimage/ 进入到本地硬盘
cp /tmp/grub.cfg /boot/grub2/
exit 退出
方法三:手动输入,参考其他主机
grub>insmod xfs
grub>linux16 /vmlinuz-3.10.0-1062.el7.x86_64 root=/dev/mapper/centos-root ro spectre_v2=retpoline rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet LANG=zh_CN.UTF-8
grub>initrd16 /initramfs-3.10.0-1062.el7.x86_64.img
grub>boot 进入系统后,建立/boot/grub2/grub.cfg文件
引导程序发生破坏时:
通过grub2-install修复引导程序损坏故障
rm -rf /boot/grub2/ 模拟故障
进入修复模式:
chroot /mnt/sysimage/ 进入到本地硬盘
grub2-install /dev/sda
exit
/boot目录发生破坏时:
启动yum仓库,装kernel内核软件包
修复/boot目录误删除故障
chroot /mnt/sysimage/ 进入本地硬盘
mount /dev/sr0 /media/cdrom 挂载镜像文件
yum -y reinstall kernel 启动yum仓库,装kernel内核软件包
grub2-install /dev/sda 修复引导程序
grub2-mkconfig > /boot/grub2/grub.cfg 命令修复grub.cfg文件丢
忘记root密码时
通过修复模式破解root用户密码
进入修复模式
chroot /mnt/sysimage 进入到本地硬盘
passwd root 执行命令:或者vin /etc/shadowd修改
设置新密码
也可以进入init2模式,启用单用户模式,进行修复
文件系统块superblock超级快发生破坏或者损坏时,异常断电,开机后需要检测磁盘
假设/dev/sdb1损坏,
xfs_repair /dev/sdb1 (xfs文件系统修复)
fsck -y -t ext4 /dev/sdb1 (针对ext4文件系统修复)
磁盘资源耗尽修复文件系统inode耗尽
先使用 df -i 查看还可以使用多少文件, df -Th 查看磁盘容量若不够使用
有用部分则备份,无用直接选择格式化
mkfs.xfs -N 50000 /dev/sdb1
然后挂载,新建文件
检测/dev/sdb磁盘坏道
badblocks -sv /dev/sdb 检测坏道
aaa阿彪
发布了25 篇原创文章 · 获赞 17 · 访问量 1376
私信
关注