删除Linux的依赖库并进入救援模式恢复

删除Linux的依赖库并进入救援模式恢复

模拟一下依赖库文件被删,并进入救援模式恢复

系统:CentOS7

一、删除mv的依赖库文件

删除/lib64/libc.so.6

[[email protected] Packages]# which mv
alias mv=‘mv -i‘
    /usr/bin/mv
[[email protected] Packages]# ldd /usr/bin/mv
    linux-vdso.so.1 =>  (0x00007ffd51946000)
    libselinux.so.1 => /lib64/libselinux.so.1 (0x00007f40c2bd9000)
    libacl.so.1 => /lib64/libacl.so.1 (0x00007f40c29d0000)
    libattr.so.1 => /lib64/libattr.so.1 (0x00007f40c27cb000)
    libc.so.6 => /lib64/libc.so.6 (0x00007f40c23fe000)
    libpcre.so.1 => /lib64/libpcre.so.1 (0x00007f40c219c000)
    libdl.so.2 => /lib64/libdl.so.2 (0x00007f40c1f98000)
    /lib64/ld-linux-x86-64.so.2 (0x00007f40c2e00000)
    libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f40c1d7c000)
[[email protected] Packages]# rm -f /lib64/libc.so.6 

删除后mv等很多命令变无法使用

[[email protected] Packages]# mv /etc/fstab .
mv: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory
[[email protected] Packages]# cp /etc/fstab .
cp: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory
[[email protected] Packages]# poweroff
poweroff: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory

二、强制关机,从光盘引导

0、进BIOS从光盘引导

1、Troubleshooting

2、Recure a CentOS system(救援模式)

3、输入1,回车

4、提示系统被挂载到了/mnt/sysimage,按下回车

5、把光盘的库文件复制过来

使用cp复制库文件到/mnt/sysimage/lib64/;千万别mv,否则光盘的系统又坏了

三、重启后的系统已经正常使用

[[email protected] ~]# cp /etc/fstab . -a
cp: overwrite ‘./fstab’? y
[[email protected] ~]# mv fstab /tmp

原文地址:https://blog.51cto.com/14012942/2426097

时间: 2024-10-06 13:13:24

删除Linux的依赖库并进入救援模式恢复的相关文章

使用strace命令解决linux服务器依赖库问题

使用strace命令解决linux服务器依赖库问题 简单说明:strace的另一个用处是解决和动态库相关的问题.当对一个可执行文件运行ldd时,它会告诉你程序使用的动态库和找到动态库的位置.但是如果你正在使用一个比较老 的glibc版本(2.2或更早),你可能会有一个有bug的ldd程序,它可能会报告在一个目录下发现一个动态库,但是真正运行程序时动态连接程序 (/lib/ld-linux.so.2)却可能到另外一个目录去找动态连接库.这通常因为/etc/ld.so.conf和 /etc/ld.s

linux下依赖库的版本问题引起的安装失败:libssl-dev版本问题无法安装 :libssl-dev : 依赖: libssl1.0.0 (= 1.0.1-4ubuntu3) 但是 1.0.1-4ubuntu5.31 正要被安装

依赖库版本问题引起的安装失败解决方法如下有两种: 1.是由于源需要更新,如下操作: libssl-dev : 依赖: libssl0.9.8 (= 0.9.8o-1ubuntu4) 但是 0.9.8o-1ubuntu4.4 正要被安装 解决方法 进入“系统->系统管理->更新管理器->设置”,在弹出的“软件源”对话框中选“更新”标签页,选中“Ubuntu 更新”下面的四个复选框,关闭后 在终端先执行“sudo apt-get update”就ok了. 转自:http://baalwolf

Linux 安装依赖库

###安装依赖库###yum -y install rsync net-snmp syslog net-snmp-devel wget patch screen gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bz

使用linux救援模式恢复rpm软件包

rpm作为linux最重要的软件管理工具,有着不可或缺的地位,连yum都要依赖于rpm的存在才能正常使用,所以掌握rpm的恢复还是很重要的,下面就来看一下如何恢复rpm. 卸载rpm软件包 [[email protected] ~]$ rpm -e rpm error: Failed dependencies: rpm = 4.11.3-17.el7 is needed by (installed) rpm-libs-4.11.3-17.el7.x86_64 rpm is needed by (

linux 救援模式恢复grub

在工作中会遇见因为grub,这时就可以用救援模式来恢复.救援模式也可以用来恢复root密码. 使用dd if=/dev/zero of=/dev/sda count=1 bs=300 将引导扇区破坏并重启 开机按F2进入BIOS设置CD-DVD启动,根据机器的不同进入BIOS也不同.并进入救援模式 选择语言,这里不能选中文,会出乱码,别的没选过 选择键盘 是否设置网络,如需要可选一般选NO 选择continue 也可以以只读挂载选read-only 这里告诉我们/文件的位置 选第一项进入 进入救

使用解决linux服务器依赖库问题

strace的另一个用处是解决和动态库相关的问题.当对一个可执行文件运行ldd时,它会告诉你程序使用的动态库和找到动态库的位置.但是如果你正在使用一个比较老 的glibc版本(2.2或更早),你可能会有一个有bug的ldd程序,它可能会报告在一个目录下发现一个动态库,但是真正运行程序时动态连接程序 (/lib/ld-linux.so.2)却可能到另外一个目录去找动态连接库.这通常因为/etc/ld.so.conf和 /etc/ld.so.cache文件不一致,或者/etc/ld.so.cache

如何使用救援模式进行恢复错误删除的程序或者库文件所以以来的共享库

1.为了实验先进行删除..例如..ls的依赖库是..我们把.libacl.so.1进行删除了.在使用ls就会进行相应的报错  2.重启系统.在载入中读条中 esc (注意 只能点一次.点多了.进入救援模式的选项就取消了)  3.当出现了可选就救援模式的界面.一般选择第三项.大概意思就是用cd光盘进行启动  4.这里也是选择第三项Troubleshooting(故障排除).[当然选择第一项重装系统也行. 不过实际生产过程中 不会让怎么干吧.重装- -怎么可能呢.233]  5.这里分别有这几个选型

64位的ubuntu14.04 LTS安装 Linux交叉编译工具链及32位“ia32-libs”依赖库

ubuntu又迎来了其新一代的长期支持版本 14.04 LTS,其带来了许多令人期待的新特新,遂决定进行升级. 装好了64位版本及安装 Linux交叉编译工具链 运行GCC,${CROSS_COMPILE}gcc -v 依然会提示那经典的“没有那个文件或目录”提示. 根据以往的经验,对于64位版本ubuntu我们需要安装“ia32-libs”依赖库. 遂输入: sudo apt-get install ia32-lib 却提示查无此货? ubuntu 14.04强制安装ia32-libs 参考u

Linux查看程序、进程的依赖库的方法

作者:zhanhailiang 日期:2015-02-01 原文:How to check what libraries are used by a program or process on Linux 1. 利用ldd查看可执行程序的依赖库 [[email protected]~]# ldd /usr/local/php/bin/php linux-vdso.so.1 => (0x00007fff753f5000) libcrypt.so.1 => /lib64/libcrypt.so.1