首页 > 数据库 >Linux基础——虚机mysql库覆盖/usr/lib64/libcrypto.so.1.1.1f无法启动

Linux基础——虚机mysql库覆盖/usr/lib64/libcrypto.so.1.1.1f无法启动

时间:2024-10-25 11:14:26浏览次数:1  
标签:libcrypto 1.1 sysroot mnt usr Linux lib64 rpm

1、问题描述

租户新增数据库mysql,手动覆盖/usr/lib64中的libcrypto.so.1.1.1f库文件,导致主机重启进入救援模式。

 

2、问题分析

i.发现报错

poweroff: error while loading shared libraries: libcrypto.so.1.1: cannot open shared object file: No such file or directory

ii.检查/usr/lib64/libcrypto*

注意:查看文件时间有被修改

 

 

3、问题处理

i.检查/mnt/sysroot/usr/lib64/libcrypto*是否存在

注意:在救援模式环境,不执行chroot /mnt/sysroot,不切换到用户系统环境;

ls -al /mnt/sysroot/usr/lib64/libcrypto*

ii、安装openssl*包到用户环境/mnt/sysroot/usr/lib64/下

注意:用户环境(chroot /mnt/sysroot)由于缺少libcrypto.so的相关库文件,yum和rpm无法使用,借用镜像的PE环境修复相关缺失包。

# 切换用户环境

chroot /mnt/sysroot

# 挂载iso镜像到用户环境的目录/mnt/os

lsblk

mkdir /mnt/os

mount /dev/sr0 /mnt/os

# 退出用户环境

exit

# 创建rpm解压目录

mkdir /mnt/rpm

cd /mnt/rpm

# 解压openssl-1.1.1f-10.oe1.x86_64.rpm

rpm2cpio ./Packages/yum-4.2.23-4.oe1.noarch.rpm |  cpio -div

# 恢复libcrypto.so.1.1.1f到用户环境目录/mnt/sysroot/usr/lib64/

cp /mnt/rpm/libcrypto.so.1.1.1f /mnt/sysroot/usr/lib64/

# 重启

reboot

exec /bin/init

4、结论

检查发现/usr/lib64/libcrypto文件被改动过,由于业务方将mysql的libcrypto.so.1.1.1f库覆盖openssl安装/usr/lib64/libcrypto.so.1.1.1f,导致系统无法适配该文件,重启主机失败。

5、涉及知识点

openssl在ISO救援模式下的rpm安装方法;

openssl在ISO救援模式下的rpm2cpio解压方法;

libcrypto在ISO救援模式下的恢复方法;

指令ldconfig -v读取/etc/ld.so.conf用于载入指定库目录及文件;

 

 

6、参考

https://www.cnblogs.com/subsea/p/17682962.html


 

标签:libcrypto,1.1,sysroot,mnt,usr,Linux,lib64,rpm
From: https://www.cnblogs.com/gkhost/p/18502085

相关文章

  • linux系统宝塔面板如何安装ssl证书
    在Linux系统上使用宝塔面板安装SSL证书可以按照以下步骤进行:登录宝塔面板:打开浏览器,输入你的服务器IP地址加上端口号(默认为8888),例如 http://你的服务器IP:8888。使用管理员账号和密码登录宝塔面板。选择网站:登录后,在左侧菜单栏中点击“网站”。在网站列表中找到你想......
  • 阿里云虚拟主机怎么安装宝塔linux面板
    阿里云的虚拟主机不支持直接安装宝塔Linux面板。虚拟主机通常提供的是一个共享的环境,用户没有足够的权限来安装和配置服务器级别的软件,如宝塔面板。如果你需要使用宝塔面板来管理和配置你的网站,可以考虑以下几种替代方案:1.使用阿里云ECS(弹性计算服务)阿里云ECS提供了一个完全可......
  • EOL/Obsolete Operating System: Red Hat Enterprise Linux 7.9 Detected
    Title: EOL/ObsoleteOperatingSystem:RedHatEnterpriseLinux7.9DetectedFirstDetected: 8/6/2024VendorReference: EndofLifeforRedHatEnterpriseLinux7.9Impact: Thesystemisathighriskofbeingexposedtosecurityvulnerabilities.Beca......
  • 【Linux 从基础到进阶】实时性能监控与调优(Prometheus、Grafana)
    实时性能监控与调优(Prometheus、Grafana)在现代化运维中,实时性能监控和调优是保障系统稳定性和高效性的重要手段。通过实时的性能监控,运维人员可以快速发现系统瓶颈、异常负载和潜在的故障隐患。本文将介绍如何使用Prometheus和Grafana进行系统的实时性能监控,并进行性能调优......
  • 基于 Koa + Vue3!一个开源的 Linux 服务器 Web SSH 面板工具!
    大家好,我是Java陈序员。今天,给大家介绍一个Linux服务器WebSSH连接面板工具,基于Koa+Vue3实现!关注微信公众号:【Java陈序员】,获取开源项目分享、AI副业分享、超200本经典计算机电子书籍等。项目介绍EasyNode——一个客户端基于Vue3、服务端基于Koa实现的Linux......
  • Linux常用命令
    以下是一些常用的Linux命令及其作用:ls:列出当前目录下的文件和文件夹。cd:切换当前工作目录。pwd:显示当前工作目录的绝对路径。mkdir:创建新目录。rm:删除文件或目录。cp:复制文件或目录。mv:移动文件或目录,也可用于重命名文件。touch:创建空文件或修改文件的访问和修改时间。......
  • 【Linux】Linux之多线程1
    一.线程1.什么是线程在一个程序里的一个执行路线叫做线程(thread),更准确的定义是:线程是一个进程内部的控制序列。一切进程至少都有一个执行线程。线程在进程内部运行,本质是在进程地址空间内运行。在Linux系统中,在CPU眼中,看到的PCB都要比传统的进程更加轻量化。......
  • 【Linux】cp -r 命令实验
    1.命令说明 命令:cp-r source dest说明:该命令复制source 到 dest。可以单个文件复制,也可以带目录层级复制。     source是具体文件时,dest如果是目录,即带/的,则文件生成在dest目录中。如果dest是不带/的,文件换名为dest文件,内容复制过去。    ......
  • linux目录和文件命令
    目录命令ls功能:显示目录的列表用法ls[参数][对象]-a:显示所有文件,包括隐藏文件-l:显示文件详细信息-t:按照时间顺序排序-r:逆向排序pwd功能:显示当前目录的绝对路径用法:pwdcd功能:切换操作目录用法:cd[对象].当前目录..上一层目录上一次所在目录~home目......
  • Linux常用命令
    1、cd-切换当前目录这是一个最基本,也是最常用的命令,它用于切换当前目录,它的参数是要切换到的目录的路径,可以是绝对路径,也可以是相对路径。cd/root #切换到目录/rootcd./path #切换到当前目录下的path目录中,“.”表示当前目录cd../path #切换到上层目录中的path目录中,“..”......