linux系统排错

一、MBR主导分区损坏

 1.可覆盖掉虚拟机的主导分区

   dd   if=/dev/zero   of=/dev/vda   bs=446  count=1

linux系统排错

   此时系统将无法正常开机

linux系统排错

2.根据虚拟机版本添加光驱(如7.0的系统光驱为7.0版本的镜像)

linux系统排错

3.开机模式中选择修复选项    ##注意:光驱启动

linux系统排错

选择Troubleshooting

linux系统排错

选择Rescue a red hat Enterprise Linnux system

linux系统排错

选择Continue

linux系统排错

linux系统排错

进入系统后,打开 shell   chroot   /mnt/sysimage

   查看boot程序所在分区  df

   安装主导分区的程序  grub2-install    /dev/xda

   安装完成后,以虚拟硬盘驱动开机即可

linux系统排错

二、文件引导损坏

  1.boot分区的引导文件  /boot/grub2/grub.cfg

   引导文件指定了boor分区的位置;加载内核;启动系统初始化进程

linux系统排错


2.若不小心删除,可通过命令自动创建  

   grub2-mkconfig   >   /boot/grub2/grub.cfg

linux系统排错

3.若系统没有该文件,启动时须手动引导

linux系统排错

三、内核引导软件损坏  vmlinuz 

  1.内核引导文件vmlinuz

    检测硬件设备;设备驱动初始化;将/只读挂载;载入初始进程 systemd

2.内核文件损坏,则无法正常开机,须重新安装内核软件

linux系统排错

linux系统排错

3.开机模式中选择修复选项   ##注意:光驱启动

    进入系统后,打开shell  chroot   /mnt/sysimage

    挂载光驱   mount   /dev/sr0    /mnt

    将光驱中内核软件拷贝至指定目录下

    mkdir   /kernel

    cp   /mnt/Packages/kernel-3.10.0-123.el7.x86_64.rpm   /kernel

linux系统排错

解开kernel,得到所需的内核引导软件

    rpm2cpio   kernel-3.10.0-123.el7.x86_64.rpm   |   cpio   -id

    cp   ./boot/vmlinuz-3.10.0-123.el7.x86_64    /boot

    查看/boot分区文件是否完整,ok后以虚拟硬盘驱动开机即可

linux系统排错

四、img文件损坏
  1.若不小心删除,可通过命令自动创建

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

   ##uname -r 系统内核版本:3.10.0-123.el7.x86_64

linux系统排错

2.img文件损坏后,无法正常开机,须重新建立img文件

linux系统排错

3.开机模式中选择修复选项   ##注意:光驱启动

    进入系统后,打开shell  chroot  /mnt/sysimage

    在/boot目录下自动建立文件     

    查看/boot分区文件是否完整,ok后以虚拟硬盘驱动开机即可

linux系统排错

五、systemd初始化

  1.systemd初始化目录    /etc/systemd/system/multi-user.target.wants/

  启动级别

runlever0.target -> poweroff.target

runlever1.target -> rescue.target

runlever2.target -> multi-user.target

runlever3.target -> multi-user.target

runlever4.target -> multi-user.target

runlever5.target -> grapical.target

runlever6.target -> reboot.target

设定启动级别:

systemctl set-default + 启动级别

/etc/systemd/system/default.target

    开启selinux和systemd-tools;加载内核参数;加载系统时钟,键盘,主机名称

    读写挂载/文件系统;**raid,lvm设备;**系统配额;

    启动/etc/systemd/system/multi-user.target.wants/中所有脚本

    启用虚拟控台;启动图形

2.若系统故障,开机自动关机

linux系统排错

重启时按上下键,停止系统引导

    开机时按e,在内核引导时设置图形化界面开启(5)

linux系统排错

ctrl+x启动

开启后,修改systemd初始化默认参数,即可修复

    systemctl   set-default   graphical.target

linux系统排错


六、root用户密码修改

   ###root用户密码被更改或忘记

   1.重启时按上下键,停止系统引导
   2.按e,在内核引导时找到指定行linux16,从最后往前删除至ro

    修改ro=rw rd.break

linux系统排错

3.ctrl + x 启动修改设定后的系统引导
   4.进入系统后切换到真实系统环境,修改root密码

    chroot   /sysroot

    passwd

   5.建立文件  /.autorelabel

    ##当selinux关闭时,可不建立该文件;但当selinux开启时,必须建立该文件

    建议:重启时默认执行此命令

   6.输入2次exit退出、重新启动
linux系统排错