最近,处理一故障:由于其他应用更高版本的glibc,操作者不得已卸载操作系统的现有的glibc,导致系统崩溃。
下边是Linux RHEL5.5进入救援模式重新安装glibc的过程。
将光盘放入光驱,设置系统从光驱启动,在启动界面输入:linux rescue
等待系统加载完内核:
选择操作语言(一般是english):
选择键盘模式(US):
是否启动网络(建议不启动):
系统询问是否将系统以读写或只读模式挂载到/mnt/sysimage(别无选择):
接下来的步骤很重要,如果系统有其他磁盘挂载如/dev/sdb,要选择Ignore drive,否则该盘上的数据将被清空,造成不可挽回的数据丢失
系统再次询问是否将原操作系统挂载到/mnt/sysimage,并提示:如果转入对原操作系统更改可以chroot /mnt/sysimage
成功进入linux救援模式
查看原操作系统的文件
RHEL5.5默认/dev/hda是光驱镜像
挂载光驱到/mnt/source下,并查看光驱内容
将glibc相关rpm包复制到/root家目录
使用rpm2cpio命令将glibc-2.5-49.x86_64.rpm包制作成repo格式的文件
在/mnt/sysimage/root下创建util文件夹,然后cd util,再执行cpio -idcuv < ../util.repo进行util.repo的解压,在/mnt/sysimage/root/util/可以看到libx64,将其中所有文件复制到/mnt/sysimage/libX64下
此时,在chroot /mnt/sysimage就不会报错:chroot cannot run command '/bin/sh':No such
然后重启系统完成glibc重装后的恢复操作
下边是Linux RHEL5.5进入救援模式重新安装glibc的过程。
将光盘放入光驱,设置系统从光驱启动,在启动界面输入:linux rescue
![](http://img.blog.itpub.net/blog/attachment/201612/7/29357786_1481099471F70j.jpg?x-oss-process=style/bb)
等待系统加载完内核:
![](http://img.blog.itpub.net/blog/attachment/201612/7/29357786_1481099528x336.jpg?x-oss-process=style/bb)
选择操作语言(一般是english):
![](http://img.blog.itpub.net/blog/attachment/201612/7/29357786_14810995922MA8.jpg?x-oss-process=style/bb)
选择键盘模式(US):
![](http://img.blog.itpub.net/blog/attachment/201612/7/29357786_1481099639EOTT.jpg?x-oss-process=style/bb)
是否启动网络(建议不启动):
![](http://img.blog.itpub.net/blog/attachment/201612/7/29357786_14810996860pNY.jpg?x-oss-process=style/bb)
![](http://img.blog.itpub.net/blog/attachment/201612/7/29357786_1481099797M3At.jpg?x-oss-process=style/bb)
系统询问是否将系统以读写或只读模式挂载到/mnt/sysimage(别无选择):
![](http://img.blog.itpub.net/blog/attachment/201612/7/29357786_1481099954GHlQ.jpg?x-oss-process=style/bb)
接下来的步骤很重要,如果系统有其他磁盘挂载如/dev/sdb,要选择Ignore drive,否则该盘上的数据将被清空,造成不可挽回的数据丢失
![](http://img.blog.itpub.net/blog/attachment/201612/7/29357786_14811000367zEV.jpg?x-oss-process=style/bb)
系统再次询问是否将原操作系统挂载到/mnt/sysimage,并提示:如果转入对原操作系统更改可以chroot /mnt/sysimage
![](http://img.blog.itpub.net/blog/attachment/201612/7/29357786_1481100161VafG.jpg?x-oss-process=style/bb)
成功进入linux救援模式
![](http://img.blog.itpub.net/blog/attachment/201612/7/29357786_1481100294WZRC.jpg?x-oss-process=style/bb)
查看原操作系统的文件
![](http://img.blog.itpub.net/blog/attachment/201612/7/29357786_1481100354pFKe.jpg?x-oss-process=style/bb)
RHEL5.5默认/dev/hda是光驱镜像
![](http://img.blog.itpub.net/blog/attachment/201612/7/29357786_1481100437F591.jpg?x-oss-process=style/bb)
挂载光驱到/mnt/source下,并查看光驱内容
![](http://img.blog.itpub.net/blog/attachment/201612/7/29357786_1481101138Skkl.jpg?x-oss-process=style/bb)
将glibc相关rpm包复制到/root家目录
![](http://img.blog.itpub.net/blog/attachment/201612/7/29357786_1481101271LlK6.jpg?x-oss-process=style/bb)
使用rpm2cpio命令将glibc-2.5-49.x86_64.rpm包制作成repo格式的文件
![](http://img.blog.itpub.net/blog/attachment/201612/7/29357786_148110162688I3.jpg?x-oss-process=style/bb)
在/mnt/sysimage/root下创建util文件夹,然后cd util,再执行cpio -idcuv < ../util.repo进行util.repo的解压,在/mnt/sysimage/root/util/可以看到libx64,将其中所有文件复制到/mnt/sysimage/libX64下
![](http://img.blog.itpub.net/blog/attachment/201612/7/29357786_1481101786cG4b.jpg?x-oss-process=style/bb)
![](http://img.blog.itpub.net/blog/attachment/201612/7/29357786_1481101958Npn5.jpg?x-oss-process=style/bb)
此时,在chroot /mnt/sysimage就不会报错:chroot cannot run command '/bin/sh':No such
![](http://img.blog.itpub.net/blog/attachment/201612/7/29357786_1481102100cfmm.jpg?x-oss-process=style/bb)
![](http://img.blog.itpub.net/blog/attachment/201612/7/29357786_14811024018MiC.jpg?x-oss-process=style/bb)
然后重启系统完成glibc重装后的恢复操作
![](http://img.blog.itpub.net/blog/attachment/201612/7/29357786_148110274566Pa.jpg?x-oss-process=style/bb)
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29357786/viewspace-2129997/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/29357786/viewspace-2129997/