glibc更新,把服务器干烂,求助恢复
vscode吧
全部回复
仅看楼主
level 1
前两天VSCODE更新1.86后,发现服务器怎么也登不上去了,网上查阅资料后,发现是服务器(Unbuntu 18.04.6)上glibc是2.27版本,新版vscode依赖glibc2.28版本,于是决定网上的教程更新服务器上的glibc。
在sudo make install的步骤中,安装报错:
Makefile:106: recipe for target 'install-symbolic-link' failed
make[1]: *** [install-symbolic-link] Segmentation fault (core dumped)
make[1]: Leaving directory '/home/gujianhui/private_lib/glibc-2.28'
Makefile:12: recipe for target 'install' failed
make: *** [install] Error 2
随后,服务器上的ls,ln等基础命令无法使用。再经过调查,发现是安装过程中修改了libc库的默认软链接(使用ldconfig -v命令):
/lib64:
libmemusage.so -> libmemusage.so
libutil.so.1 -> libutil-2.28.so
libresolv.so.2 -> libresolv-2.28.so
libcrypt.so.1 -> libcrypt-2.28.so
libBrokenLocale.so.1 -> libBrokenLocale-2.28.so
li
bp
cprofile.so -> libpcprofile.so
ld-linux-x86-64.so.2 -> ld-2.28.so
libnss_dns.so.2 -> libnss_dns-2.28.so
libnsl.so.1 -> libnsl-2.28.so
libm.so.6 -> libm-2.28.so
libthread_db.so.1 -> libthread_db-1.0.so
libmvec.so.1 -> libmvec-2.28.so
libc.so.6 -> libc-2.28.so
libnss_hesiod.so.2 -> libnss_hesiod-2.28.so
librt.so.1 -> librt-2.28.so
libdl.so.2 -> libdl-2.28.so
libSegFault.so -> libSegFault.so
libnss_compat.so.2 -> libnss_compat-2.28.so
libpthread.so.0 -> libpthread-2.28.so
libnss_db.so.2 -> libnss_db-2.28.so
libanl.so.1 -> libanl-2.28.so
libnss_files.so.2 -> libnss_files-2.28.so
考虑到,glibc2.28可能并没有安装完全,在其他原始的库中仍使用的是libc2.27,于是又根据网络上的教程,手动调整LD_PRELOAD的路径 ·export LD_PRELOAD=/lib/x86_64-linux-gnu/libc-2.27.so· ,并使用2.27的动态库去调用/bin目录下的一些命令·/lib/x86_64-linux-gnu/ld-2.27.so /bin/ls ·,可以完成ls ,ln 等操作,本以为可以慢慢调整/lib64文件下各个库的链接,发现并没有权限。目前用su切换root用户会报错(su: Authentication failure),用sudo会报错( /bin/sudo: cannot open shared object file: No such file or directory) 。于是想请教各位大神该怎么样操作才能够把系统恢复
2024年02月05日 03点02分 1
level 13
可能去linux吧问比较好
2024年02月05日 06点02分 2
level 1
谢谢吧主,俺已经去问了!
2024年02月05日 10点02分 3
level 1
更新一下,我已经处理好了,大致的操作过程发在linux吧了
更新glibc失败,把Unbuntu干烂,该怎么办【linux吧】_百度贴吧 (baidu.com)
2024年02月05日 14点02分 4
level 1
1.85.2先用着,反正很多新功能都用不上
2024年02月18日 04点02分 5
1