千家信息网

怎么进行linux rc.sysinit修复

发表于:2025-01-23 作者:千家信息网编辑
千家信息网最后更新 2025年01月23日,怎么进行linux rc.sysinit修复,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。一 删除boot目录下的所有文件#删除/b
千家信息网最后更新 2025年01月23日怎么进行linux rc.sysinit修复

怎么进行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修复问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注行业资讯频道了解更多相关知识。

0