建站技术网专注分享网站建设技术,网站建设教程,真正帮你学会做网站技术,轻松解决网站建设过程中遇到的常见问题,为广大站长服务。 收藏本站 | 订阅
域名投资,就来找米网,认准网址:www.zhaomi.cc 专业仿站,就到仿站网:www.fangzhan.org
  站内公告: ·帝国cms教程内容已更新,欢迎关注     ·建站技术网采用阿里云服务器,备案已通    
您当前的位置:首页 > 服务器教程 > CentOS教程

CentOS开机异常修复汇总

时间:2018-02-02 16:07:58  来源:网络收集  整理: 建站技术网 www.jzjsw.com     点击:11次

破解root 口令,并为grub 设置保护功能

开机enter 按a->1或s或S或single进入单用户模式,修改密码

1

破坏本机grub stage1 ,而后在救援模式下修复之

==注意grub.conf文件会丢失,要提前备份==


#备份mbr

dd if=/dev/sda of=/root/mbr bs=1 count=466


进入单用户模式

chroot /mnt/sysimage

grub-install /dev/sda 从“/dev/sda”中找到GRUB程序并进行修复


删除vmlinuz 和initramfs 文件后无法启动, 两种方法恢复之

#initramfs文件

chroot /mnt/sysimage

df#可以看到原系统的磁盘设备

cd /boot

ls

#是initframs内核文件丢失导致,解决方案:

#修复initramfs文件

mkinitrd ./initramfs-`uname -r`.img `uname -r`

#如果是CenOS5 则执行

mkinitrd ./initrd-`uname -r`.img `uname -r`


若修复失败可重装内核

#查看当前系统使用的内核

uname -r

从光盘安装内核(注意要先切换根)

lsblk 可以看到光盘设备是sr0

挂载光盘

mkdir /mnt/cdrom

mount /dev/sr0 /mnt/cdrom

df

rpm -ivh kernel-2.6.e64.......rpm --force


启动后出现grub,则需要修复grub

chroot /mnt/sysimage

grub-install /dev/sda

exit

exit

reboot


#vmlinuz文件

光盘里面/images/preboot/vmlinuz和/isolinux/vmlinuz即为内核文件,可以直接cp过来

# vmlinuz的文件名可参考/boot/grub/grub.conf中的配置,亦可直接改配置中的文件名,两者保持一致即可

cp -av /mnt/cdeom/isolinux/vmlinuz /mnt/sysimage/boot/vmlinuz-`uname -r`


/etc/inittab 设置默认6 恢复之

开机回车,a->1|s|signal进入单用户模式

或者

开机回车,a->3

然后将/etc/inittab改回来


某个服务无法启动,系统无法启动,解决之

cd /etc/init.d/

vim testsrv

输入以下内容

#!/bin/bash

#chkconfig:2345 99 00

#description:this service is used for test

case $1 in

start)

    echo 'the service is started'

    touch /root/testsrv

    ;;  

stop)

    echo 'the service is stopped'

    rm -f /boot/testsrv

    ;;  

status)

    [ -f /boot/testsrv ] && echo 'service testsrv is running...'||echo 'service testrv is stopped'

    ;;  

*)

    echo 'Usage start|stop|status'


注意#chkconfig:2345 99 00这里开机启动的序号不能大于99

#给执行权限

chmod +x testsrv 

chkconfig --add testsrv

chkconfig testsrv --level 1 on

修改启动时间

reboot

#!/bin/bash

#chkconfig:12345 00 00

#description:this service is used for test

case $1 in

start)

    echo 'the service is started'

    sleep 100000

    touch /root/testsrv

    ;;  


由于启动序号设置太小,网络服务还没起来,无法连接xshell,而单用户模式也设置了开机启动,所以需要按照如下方法修复

开机按回车进入内核选则项

按a 在quite后添加 init=/bin/bash(默认为/sbin/init)

此时开机进入bash以后根目录是以只读方式挂载的,需要重新挂载

mount -o remount,rw /

chkconfig --level  12345 testsrv off

exit 

reboot


破坏stage1.5

==grub命令依赖于grub目录里面的文件==


grub

grub> root (hd#,#)

grub> setup (hd#)

(hd#,#)

hd#:  磁盘编号,用数字表示;从0 开始编号

#:  分区编号,用数字表示;  从0 开始编号

(hd0,0) 

#备份分区表

dd if=/dev/sda of=/root/mbr count=446 bs=1 conv=notrunc

# 备份grub.conf

cp -av /boot/grub/grub.conf /root/

# 破坏mbr

dd if=/dev/zero of=/dev/sda bs=1 count=446 conv=notrunc


启动时会出现operating System not found的提示,说明没有mbr来引导操作系统

reboot


chroot /mnt/sysimage

df 查看boot和/是否挂载

grub

root (hd0,0) # (hd0,0)表示第一块硬盘的第一个分区,也就是sda的sda1

setup (hd0)



1.5阶段前512字节记录的是后面27个扇区具体要读取的内容,如果将后面的内容破坏掉,系统仍无法正常启动

#备份

 dd if=/dev/sda of=/root/mbr2 bs=1 count=2048 skip=512

#破坏

dd if=/dev/zero of=/dev/sda bs=1 count=2048 seek=512 conv=notrun

c

reboot

此时开机界面不会出现倒计时

进入救援模式

用grub或grub-install修复

chroot /mnt/sysimage

grub-install /dev/sda

sync

exit

exit

reboot


破坏stage2


#备份/boot/grub/grub.conf

#清空/boot/grub目录

rm -rf /boot/grub

reboot

# 进入救援模式

df 确保/boot已挂载

chroot /mnt/sysimage

df

grub-install /dev/sda

sync

exit

exit

reboot

此时由于没有/boot/grub/grub.conf文件,开机会进入grub命令行

输入ker(tab补全)  /v(tab)补全 root=/dev/vg0/root selinux=0 回车

ini(tab补全) /initra(tab补全)   回车

boot

(也可以在救援模式下手写grub文件)


8.为grub加口令


#生成md5口令

grub-md5-crypt

#grub-crypt (sha512)

[root@lee: /root]# grub-crypt

Password: 

Retype password: 

$6$IwfTNtZWfvNHA2ec$RWiVdrt78Tbbw2fsvAA/icQWCfIgy3KGkoFJHRntceUBwK.Vnn9Mhmz1JfRt/yWdtEbbMaWeWFSTiYUuxTiPn.


添加至配置文件

default=0

timeout=5

#sha512的加密方式需要指定--encrypted

password --encrypted $6$IwfTNtZWfvNHA2ec$RWiVdrt78Tbbw2fsvAA/icQWCfIgy3KGkoFJHRntceUBwK.Vnn9Mhmz1JfRt/yWdtEbbMaWeWFSTiYUuxTiPn.

  splashimage=(hd0,0)/grub/splash.xpm.gz

  hiddenmenu

title CentOS 6 (2.6.32-642.el6.x86_64)

      root (hd0,0)

kernel /vmlinuz-2.6.32-642.el6.x86_64 ro root=/dev/mapper/vg_lee-lv_root rd_LVM_    LV=vg_lee/lv_root rd_NO_LUKS rd_LVM_LV=vg_lee/lv_swap rd_NO_MD crashkernel=128M LANG    =zh_CN.UTF-8  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet

initrd /initramfs-2.6.32-642.el6.x86_64.img

# 也可直接用明文

password $1$fYmOJ/$0n6c5b/WPxt0nDOJPsrJq0


删除/boot/ 所有内容,然后恢复

1)/boot/vmlinuz

cp /mnt/cdrom/isolinux/vmlinuz /boot/vmlinuz-`uname -r`

2)/boot/initramfs.img

mkinitrd /boot/initramfs-`uname -r`.img `uname -r`

rpm -ivh /mnt/cdrom/Packages/kernel.XXX.rpm 

3)grub/*

grub-install /dev/sda

4)grub/grub.conf

default=0

timeout=3

title 23M

kernel /vmlinuz-XXXX root=/dev/sda2

initrd /initramfs-XXXX.img


在普通分区,删除/boot/ 所有内容及/etc/fstab,恢复

1)救援模式,先/etc/fastab恢复

df

blkid 

mount /dev/sda1 /mnt/sda1

mount /dev/sda2 /mnt/sda2

mount /dev/sda3 /mnt/sda3

vim /etc/fstab

2)reboot,重新进入救援模式

df 确保挂载成功

3)修复grub

grub-install /dev/sda

4)修复kernel initramfs.img

mount /dev/sr0 /mnt/

rpm -ivh /mnt/Packages/kernel-XXX.rpm --force

5)vim /boot/grub/grub.conf


使用逻辑卷,删除/boot/ 所有内容及/etc/fstab,恢复

1)救援模式,先/etc/fastab恢复

lsblk(失效)

df

blkid 

fdisk -l

sda1带*为boot分区

mkdir /mnt/{sda1,sda2}

mount /dev/sda1 /mnt/sda1

mount /dev/mapper/vg_lee-lv_root      /mnt/sda2

lvdisplay (可以看到NOT available)

vgchange -ay 激活卷组

lvdisplay 


vim /mnt/sda2/fstab(r!blkid)

2)reboot,重新进入救援模式

df 确保挂载成功

3)修复grub

grub-install /dev/sda

4)修复kernel initramfs.img

mount /dev/sr0 /mnt/

rpm -ivh /mnt/Packages/kernel-XXX.rpm --force

5)vim /boot/grub/grub.conf  


default=0                         timeout=5

title=CentOs6.8

kernel /vmlinuz-2.6.32-642.el6.x86_6 root=/dev/mapper/vg_lee-lv_root selinux=0

initrd /initramfs-2.6.32-642.el6.x86_64.img


文章标题: CentOS开机异常修复汇总
文章网址:http://www.jzjsw.com/fuwuqiJiaocheng/CentOS/3836.html
上一篇:虚拟机中centos重启后不能进入系统的问题
下一篇:centos 崩溃之后重装bootloader无法进入图形界面问题及其解决方法
来顶一下
返回首页
返回首页
相关文章
    无相关信息
推荐资讯
如何通过SEO优化排名赚钱?SEO赚钱方法
如何通过SEO优化排名赚
seo优化教程:网站seo内容优化
seo优化教程:网站seo
SEO细节:企业SEO如何快速为新站做出效果
SEO细节:企业SEO如何
电商技术将如何发展?2018年有这五个大胆预测
电商技术将如何发展?
最新文章
栏目更新
栏目热门