你比别人更加厉害之处在于你了解如何修复Linux系统

本文通过一系列的实验进行linux系统的修复

实验1:将/boot下清空,并且将/etc/fstab文件进行删除;然后重启进行恢复;

(1)删除文件

    rm -rf /boot/* 

    rm -rf /etc/fstab

(2)重启 发生错误Error 15

(3)进入救援模式,先恢复fstab文件

     先blkid和fdisk -l /dev/sda查看一下分区情况

     然后创建目录进行挂载磁盘,并查看磁盘的内容判断是哪个挂载点如/ /app /boot swap

       mkdir /mnt/cd

       mount /dev/sda1 /mnt/cd

     判断成功后将根挂载点挂载到/mnt/cd下,在临时挂载点下恢复文件/etc/fstab;然后重启再次进入救援模式挂载生效

(4)恢复/boot下的文件和目录

(5)重启生效

实验2:在用grub-install将/boot/grub/中的文件修复后再次进行保留grub.conf文件而删除其它文件的操作重启看是否可以正常启动

 (1)mv /boot/grub/* /app/backup  移动文件到目录中

 (2)mv /app/backup/grub.conf /boot/grub/  保留  grub.conf文件

 (3)reboot  重启

 (4)结果出现Error 15的错误

 (5)可以用grub-install进行修复,也可以将移动的文件用mv命令移动回来(先进入光盘救援模式)

 (6)分析:是因为原来的stage2的数据是存在磁盘的某个位置,不一定是在/boot/grub下面;而修复后就将它放到了/boot/grub/目录下面;那么当再次将文件移走后缺少了stage2就不能正常进入菜单了

 (7)同时,修复后缺少了一些文件,比如软链接、菜单背景图片splash.xpm.gz

实验3:设置启动菜单的背景图片

 (1)先找一张图片,然后对它进行编辑设置为640x480大小的像素

 (2)将图片进行保存,然后在linux用rz命令传图片进入

 (3)先确保安装了转换工具(用rpm -q ImageMagick查询);

      如果没有安装,就用yum install ImageMagick进行安装

      前提是配好本地光盘repo作为yum源

 (4)进行转换

      convert -resize 640x480 -colors 14 1.jpg splash.xpm;  转换

 (5)压缩

      gzip splash.xpm

 (6)移动到指定位置

      mv splash.xpm.gz /boot/grub/

 (7)重启

      reboot

 (8)结果是在按任意键进入菜单项后出现了改变后的正常的图片

实验4:/boot/grub/grub.conf文件中的rhgb quiet 前者是代表显示图形启动过程,后者是内核启动的详细过程不显示

 (1)删除rhgb quiet字符串

 (2)重启

 (3)观察是否又图形转圈过程和内核启动的详细过程

 (4)结果显示图形启动过程不显示,内核启动的详细过程被显示出来

实验5:/boot/grub/grub.conf文件中UUID后面的为内核参数设置,可以设置centos6上的loop设备为100

 (1)先查看loop个数

      ls /dev/loop*

 (2)设置内核参数

      在内核参数那一行加上max_loop=100即可

      同时,另外/proc/cmdline也发生改变,故不需要写/boot/grub/grub.conf的内核参数也可以启动

 (3)重启  reboot

 (4)重启后可以看到loop的数量增加;

      ls /dev/loop*

实验6:将/boot下的grub删除,然后进行修复

 (1)删除文件

     cd /boot/grub

     rm -f *

 (2)重启

      reboot

 (3)出现Error 15的错误提示

 (4)进行修复

      进入救援模式

      切根 chroot /mnt/sysimage

      生成grub目录的文件  grub-install /dev/sda

      自己写一个grub.conf文件,内容如下:

        default=0

        timeout=5

        title centos6

        kernel /vmlinuz-2.6.32-696.el6.x86_64 ro root=UUID=9f2bdf51-2c78-4332-8ef6-7a760b647313

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

 (5)保存退出,然后重启;结果可以正常启动

实验7:将/boot清空,然后进行修复

 (1)删除/boot下的文件

      rm -rf /boot/*

 (2)重启  reboot

 (3)出现Error 15的错误

 (4)先对/boot下的除了grub外的其他文件进行修复

     chroot /mnt/sysimage/  切根

     rpm -ivh /mnt/centos6-1/Packages/kernel-2.6.32-696.el6.x86_64.rpm --force  安装

 (5)对grub目录进行修复

     生成grub目录的文件  grub-install /dev/sda

      自己写一个grub.conf文件,内容如下:

        default=0

        timeout=5

        title centos6

        kernel /vmlinuz-2.6.32-696.el6.x86_64 ro root=UUID=9f2bdf51-2c78-4332-8ef6-7a760b647313

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

 (6)重启

     exit;exit;reboot

 (7)重启成功

实验8:将/sbin/init这个首进程删除,如何恢复

 (1)删除二进制文件

     rm -f /sbin/init

 (2)重启 发生错误,没有找到进程

 (3)编辑内核参数,加init=/bin/bash 回车

 (4)回车后启动进入bash,进行重挂载/ 指定为rw

      mount -o remount rw /

 (5)用rpm进行安装

 (6)重启生效

实验9:逻辑卷将/etc/fstab删除后进行修复

 (1)rm -rf /etc/fstab  删除

 (2)reboot  重启

 (3)进入救援模式

 (4)先建立挂载目录,然后进行临时挂载查看磁盘内容,根据查看到的内容进行判断属于哪个挂载点

     vgchange -ay  激活卷组

     mkdir /mnt/cd

     mount /dev/mapper/VolGroup-lv_root /mnt/cd

 (5)判断好挂载点后将/挂载到临时挂载点,在里面的/etc下建立fstab文件,写入挂载内容

 (6)重启生效

转载于:https://blog.51cto.com/angwoyufengtian/2056401

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值