這篇文章主要介紹Linux升級glibc后無法進(jìn)入系統(tǒng)怎么辦,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!
創(chuàng)新互聯(lián)公司-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比雙江網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式雙江網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋雙江地區(qū)。費(fèi)用合理售后完善,十余年實(shí)體公司更值得信賴。
從源碼安裝升級glibc對于版本老的系統(tǒng)的非常危險(xiǎn)的。我使用編譯源碼的方式將glibc由2.3升級到2.9, 解決了系統(tǒng)ls等各種指令不好使的問題后以為萬事大吉。結(jié)果重啟系統(tǒng)發(fā)現(xiàn)系統(tǒng)無法進(jìn)入了,森馬都做不了了。網(wǎng)上的辦法試了很多,沒有完全能解決問題的。最后,綜合網(wǎng)上各種辦法,終于解決了問題。
如果網(wǎng)上的辦法沒法解決你得問題,可以試試我的辦法,需要準(zhǔn)備的安裝包和靜態(tài)庫如下:
安裝包
/lib
\usr\lib
將這些安裝包和靜態(tài)庫放入一個(gè)U盤中,U盤插入無法進(jìn)入系統(tǒng)的服務(wù)器。
準(zhǔn)備一張和原系統(tǒng)一致或者接近版本(我原系統(tǒng)是rhel4.5,光盤是rhel4.6)的系統(tǒng)盤,放入光驅(qū)。
開機(jī)快速按F2,進(jìn)入
通過+-號調(diào)整開機(jī)啟動順序,將CD-ROM調(diào)整到最上面
按回車,系統(tǒng)重新啟動,進(jìn)入光盤引導(dǎo)界面
按F5,進(jìn)入
輸入 linuxrescue
按回車,稍等一會,進(jìn)入
按回車,進(jìn)入
按回車,進(jìn)入
按回車,進(jìn)入
將光標(biāo)移動到No,按回車,進(jìn)入
按回車,進(jìn)入
提示原有系統(tǒng)已經(jīng)掛載到/mnt/sysimage,按回車進(jìn)入,目前所處的就是光盤搶救模式(rescue mode)
可以看到原有系統(tǒng)的所有文件在/mnt/sysimage下都是可以看見的。
首先將U盤掛載到光盤系統(tǒng),mount -t vfat /dev/sdb1/mnt/usb/,拷貝rpm 和靜態(tài)庫到/mnt/sysimage下你能記住的任意目錄。(不同環(huán)境中U盤的標(biāo)識符不一定是sdb1,在物理機(jī)上可能是sda1, 可以通過fdisk –l 命令看各個(gè)目錄大小來判定哪個(gè)是U盤。如果掛載U盤提示格式不對錯(cuò)誤,U盤可能是fat16,執(zhí)行mount -t msdos /dev/sdb1 /mnt/usb/)
此時(shí),之前準(zhǔn)備的文件都在/mnt/usb/目錄下, 原系統(tǒng)所有文件都在/mnt/sysimage下。將usb目錄下的文件拷貝到/mnt/sysimage下面你能記住的任意目錄。
執(zhí)行chroot /mnt/sysimage ,這個(gè)指令使你由當(dāng)前光盤系統(tǒng)切換到原系統(tǒng),執(zhí)行pwd和ls可以看到,你所處的目錄就是原系統(tǒng)的根目錄,你得身份也變成了原系統(tǒng)的管理員。
然后進(jìn)入U(xiǎn)盤文件拷貝到的目錄,參照網(wǎng)上方法安裝rpm包。然后手動替換/lib /usr/lib的靜態(tài)庫(*.a文件)。
手動修改動態(tài)庫的軟連接(無論安裝rpm包時(shí)是否自動修改過軟連接,都最好手動修改一遍)。
先rm *2.9*,然后
ln -sf libutil-2.3.4.solibutil.so.1
ln -sf libresolv-2.3.4.solibresolv.so.2
ln -sf libnss_nis-2.3.4.solibnss_nis.so.2
ln -sf libnss_nisplus-2.3.4.solibnss_nisplus.so.2
ln -sf libnss_hesiod-2.3.4.solibnss_hesiod.so.2
ln -sf libnss_files-2.3.4.so libnss_files.so.2
ln -sf libnss_DNS-2.3.4.so libnss_dns.so.2
ln -sf libnss_compat-2.3.4.solibnss_compat.so.2
ln -sf libnsl-2.3.4.solibnsl.so.1
ln -sf libdl-2.3.4.solibdl.so.2
ln -sf libcrypt-2.3.4.solibcrypt.so.1
ln -sf libBrokenLocale-2.3.4.solibBrokenLocale.so.1
ln -sf libanl-2.3.4.solibanl.so.1
ln -sf libc-2.3.4.solibc.so.6
ln -sf librt-2.3.4.solibrt.so.1
ln -sf libpthread-0.10.so libpthread.so.0
ln -sf libm-2.3.4.solibm.so.6
執(zhí)行exit退回到光盤系統(tǒng),
在上圖光標(biāo)處在輸入exit回車 ,系統(tǒng)會重新啟動。修改BIOS設(shè)置系統(tǒng)從硬盤啟動,原系統(tǒng)應(yīng)該可以正常開機(jī)進(jìn)入了。
以上是“Linux升級glibc后無法進(jìn)入系統(tǒng)怎么辦”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!