温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

怎么进行linux rc.sysinit修复

发布时间:2021-10-21 17:58:25 来源:亿速云 阅读:131 作者:柒染 栏目:云计算

怎么进行linux rc.sysinit修复,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

一 删除boot目录下的所有文件

  #删除/boot,然后重启
[root@serv01 boot]# rm -rf *
[root@serv01 boot]# ls
[root@serv01 boot]# reboot
#会发现出现错误
Error 15
 
#我们关闭虚拟机,然后使用光盘进行驱动,注意把内存调整为800M;重启计算机,在启动的一瞬间,按ESC键,进入Boot Menu,选择CD-ROM Drive
#进入引导界面,选择Rescueinstalled system,Choose a language,选择English,Keyboad Type选择us,Rescue method选择Local CD/DVD,Setup networking选择no,Rescue选择Contiune,Rescue选择ok,下一个界面再次选择ok,shell start shell,启动shell。
 
#发现进入的是bash,此时cd /boot是不行的
#输入chroot/mnt/sysp_w_picpath进入/,然后进入/boot,发现bash变为sh
#配置yum源,
ls
ls /iso
mount /dev/cdrom /iso
#重装内核
yum reinstall kernerl -y
#也可以使用rpm安装 rpm -ivhkenerl-xxx --force --replacefiles
 
#安装grub
grub-install /dev/sda
#退出sh
exit
#进入bash,然后重启
reboot
#进入grub,依次执行以下内容(按Tab键)
root (hd0,0)
 
kernel /vmlinuz-2.6.32-131.0.15.el6.x86_64
initrd /initramfs-2.6.32-131.0.15.el6.x86_64.img
boot
#再次进入grub,依次执行以下内容
root (hd0,0)
 
kernel /vmlinuz-2.6.32-131.0.15.el6.x86_64
initrd/initramfs-2.6.32-131.0.15.el6.x86_64.img
boot
 
 
#修复成功,可以编辑nf文件,下次就不重新引导,nf文件如下
[root@serv01 opt]# cd /boot/grub/
[root@serv01 grub]# vim nf
[root@serv01 grub]# cat nf
default=0
timeout=5
title RedHat Server 6.1
      root(hd0,0)
      kernel/vmlinuz-2.6.32-131.0.15.el6.x86_64 ro root=/dev/sda2
      initrd/initramfs-2.6.32-131.0.15.el6.x86_64.img
 
 
[root@larrywen /]# ssh 192.168.1.11
root@192.168.1.11's password:
Last login: Wed Jul 31 18:05:19 2013 from192.168.1.1
 
#建议把/boot分区放在第一个位置

  二 rc.sysinit文件丢失

  #rc.sysinit文件丢失,进入修复模式,方法同上,只需重新安装(拷贝)这个文件即可
[root@serv01 grub]# ls /etc/rc.d/rc.sysinit
/etc/rc.d/rc.sysinit
#安装出错
[root@serv01 grub]#yum install /etc/rc.d/rc.sysinit
#重新安装
[root@serv01 grub]#yum reinstall /etc/rc.d/rc.sysinit
 
[root@serv01 ~]# rpm -qf /etc/rc.d/rc.sysinit
initscripts-9.03.23-1.el6.x86_6
#其他的系统文件丢失,类似操作

三 grub.conf文件被删除

[plain] 

#可以看到/etc/grub.conf/boot/grub/grub.conf是同一个文件  

[root@serv01 ~]# ls /etc/grub.conf/boot/grub/grub.conf -l  

-rw-------. 1 root root 817 Jul 30 23:47 /boot/grub/grub.conf  

lrwxrwxrwx. 1 root root  22 Jul 23 00:57 /etc/grub.conf ->../boot/grub/grub.conf  

#删除grub.conf文件后不能引导解决  

#第一步,查看磁盘分区  

[root@serv01 ~]# df -h  

Filesystem            Size  Used Avail Use% Mounted on  

/dev/sda2             9.7G  1.1G 8.1G  12% /  

tmpfs                 188M     0 188M   0% /dev/shm  

/dev/sda1             194M   25M 160M  14% /boot  

/dev/sda5             4.0G  137M 3.7G   4% /opt  

/dev/sr0              3.4G  3.4G    0 100% /iso  

#进入目录删除grub.conf文件  

[root@serv01 ~]# cd /boot/grub/  

[root@serv01 grub]# rm -rf grub.conf  

[root@serv01 grub]# reboot  

#依次输入这些命令  

root (hd0,0)  

#这一步按住tab键会自动补齐的  

kernel /  

#然后在后面加上root=/dev/sda2,注意,您的机器不一定是/dev/sda2,您要通过df -h查看根分区是属于哪个分区  

kernel /vmlinuz-2.6.32-131.0.15.el6.x86_64ro root=/dev/sda2  

#这一步按住tab键也会自动补齐的  

initrd /  

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

#注意,如果有多个内核,需要自行选择  

#最后输入boot重启  

#重启后,进入boot目录,发现没有生成这个文件  

[root@serv01 ~]# cd /boot/grub/  

[root@serv01 grub]# ls grub.conf  

ls: cannot access grub.conf: No such fileor directory  

#下次启动时我们发现还需要重新引导,此时我们重新创建这个文件,输入以下内容即可  

#这里有个小技巧,我们在使用vim编辑文件时,在命令模式,可以读入命令,就可以很方便地读取和拷贝(!表示执行命令)  

r !ls/boot/initramfs-2.6.32-131.0.15.el6.x86_64.img  

[root@serv01 grub]# vim grub.conf  

[root@serv01 grub]# cat grub.conf  

default=0  

timeout=5  

title RedHat Server 6.1  

       root(hd0,0)  

       kernel/vmlinuz-2.6.32-131.0.15.el6.x86_64 ro root=/dev/sda2  

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

[root@larrywen grub]# ls  

device.map splash.xpm.gz  

[root@serv01 grub]# find . -name"*stage*"  

./minix_stage1_5  

./stage1  

./xfs_stage1_5  

./ufs2_stage1_5  

./ffs_stage1_5  

./e2fs_stage1_5  

./stage2  

./jfs_stage1_5  

./iso9660_stage1_5  

./vstafs_stage1_5  

./fat_stage1_5  

./reiserfs_stage1_5  

#把带有stage的文件全部删除也不影响,重启仍然正常  

[root@serv01 grub]# find . -name"*stage*" |xargs rm -rf {}\;  

[root@serv01 grub]# ll  

total 8  

-rw-r--r--. 1 root root   63 Jul 23 00:57 device.map  

-rw-r--r--. 1 root root  170 Jul 31 00:30 grub.conf  

lrwxrwxrwx. 1 root root   11 Jul 23 00:57 menu.lst -> ./grub.conf  

-rw-r--r--. 1 root root 1341 May  7  2010splash.xpm.gz  

四 进入boot目录,删除所有的文件,在不断开连接的情况下恢复

[plain] 

[root@serv01 ~]# cd /boot  

[root@serv01 boot]# ls  

config-2.6.32-131.0.15.el6.x86_64  initramfs-2.6.32-131.0.15.el6.x86_64.img  System.map-2.6.32-131.0.15.el6.x86_64  

efi                                lost+found                               vmlinuz-2.6.32-131.0.15.el6.x86_64  

grub                              symvers-2.6.32-131.0.15.el6.x86_64.gz  

[root@serv01 boot]# rm -rf *  

[root@serv01 boot]# ll  

total 0  

#第一步,安装grub  

[root@serv01 boot]# grub-install /dev/sda  

Probing devices to guess BIOS drives. Thismay take a long time.  

Installation finished. No error reported.  

This is the contents of the device map /boot/grub/device.map.  

Check if this is correct or not. If any ofthe lines is incorrect,  

fix it and re-run the script`grub-install'.  

(fd0)      /dev/fd0  

(hd0)      /dev/sda  

#第二步,安装kernel  

[root@serv01 boot]# yum reinstall kernel -y  

Loaded plugins: product-id, subscription-manager  

Updating Red Hat repositories.  

Setting up Reinstall Process  

rhel-iso                                                                                                      | 4.0 kB     00:00 ...  

Resolving Dependencies  

--> Running transaction check  

---> Package kernel.x86_640:2.6.32-131.0.15.el6 will be installed  

--> Finished Dependency Resolution  

Dependencies Resolved  

======================================================================================================================================  

 Package                     Arch                        Version                                  Repository                     Size  

======================================================================================================================================  

Reinstalling:  

 kernel                      x86_64                      2.6.32-131.0.15.el6                      rhel-iso                       23 M  

Transaction Summary  

======================================================================================================================================  

Reinstall     1 Package(s)  

Total download size: 23 M  

Installed size: 108 M  

Downloading Packages:  

Running rpm_check_debug  

Running Transaction Test  

Transaction Test Succeeded  

Running Transaction  

Installing :kernel-2.6.32-131.0.15.el6.x86_64                                                                                 1/1  

duration: 263(ms)  

Installed products updated.  

Installed:  

 kernel.x86_64 0:2.6.32-131.0.15.el6                                                                                                   

Complete!  

[root@serv01 boot]# ls  

config-2.6.32-131.0.15.el6.x86_64  initramfs-2.6.32-131.0.15.el6.x86_64.img  System.map-2.6.32-131.0.15.el6.x86_64  

grub                               symvers-2.6.32-131.0.15.el6.x86_64.gz     vmlinuz-2.6.32-131.0.15.el6.x86_64  

#进入grub目录,然后新建grub.conf文件  

[root@serv01 boot]# cd grub/  

[root@serv01 grub]# ll  

total 268  

-rw-r--r--. 1 root root     30 Jul 31 00:44 device.map  

-rw-r--r--. 1 root root  13396 Jul 31 00:44 e2fs_stage1_5  

-rw-r--r--. 1 root root  12620 Jul 31 00:44 fat_stage1_5  

-rw-r--r--. 1 root root  11764 Jul 31 00:44 ffs_stage1_5  

-rw-r--r--. 1 root root  11772 Jul 31 00:44 iso9660_stage1_5  

-rw-r--r--. 1 root root  13300 Jul 31 00:44 jfs_stage1_5  

-rw-r--r--. 1 root root  11956 Jul 31 00:44 minix_stage1_5  

-rw-r--r--. 1 root root  14444 Jul 31 00:44 reiserfs_stage1_5  

-rw-r--r--. 1 root root    512 Jul 31 00:44 stage1  

-rw-r--r--. 1 root root 126040 Jul 31 00:44stage2  

-rw-r--r--. 1 root root  12040 Jul 31 00:44 ufs2_stage1_5  

-rw-r--r--. 1 root root  11396 Jul 31 00:44 vstafs_stage1_5  

-rw-r--r--. 1 root root  13980 Jul 31 00:44 xfs_stage1_5  

[root@serv01 grub]# vim grub.conf  

#文件内容如下  

[root@serv01 grub]# cat grub.conf  

default=0  

timeout=5  

title Redhat Server 6.1  

       root(hd0,0)  

       kernel/vmlinuz-2.6.32-131.0.15.el6.x86_64 ro root=/dev/sda2 quiet  

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

[root@serv01 grub]# reboot  

Broadcast message from root@serv01.host.com  

       (/dev/pts/0)at 0:47 ...  

The system is going down for reboot NOW!  

[root@serv01 grub]# Connection to192.168.1.11 closed by remote host.  

Connection to 192.168.1.11 closed.  

#重启后然后重新连接,成功,OK!  

[root@larrywen Desktop]# ssh 192.168.1.11  

root@192.168.1.11's password:  

Last login: Wed Jul 31 00:43:50 2013 from192.168.1.1  

[root@serv01 ~]#  

关于怎么进行linux rc.sysinit修复问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI