怎么进行linux rc.sysinit修复,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
克什克腾网站制作公司哪家好,找创新互联公司!从网页设计、网站建设、微信开发、APP开发、响应式网站设计等网站项目制作,到程序开发,运营维护。创新互联公司从2013年成立到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选创新互联公司。
一 删除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修复问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注创新互联行业资讯频道了解更多相关知识。