Ubuntu(WSL)卸载与安装指定版本的 openssl

news/2024/7/3 4:44:37

卸载 openssl


1)查找并删除 openssl 关联的目录与文件

whereis openssl

which openssl

rm -rf /a/b/c/    // 使用 rm 命令删除所有 openssl 相关目录

2)删除软件安装包

apt-get purge openssl

3)删除配置文件 

rm -rf /etc/ssl

安装 openssl


openssl 版本下载链接:/source/old/index.html (openssl.org)

1)解压

tar -zxvf openssl-1.0.2p.tar.gz

2)进入目录

cd openssl-1.0.2p

3)创建安装目录

mkdir /usr/local/openssl

4)选择安装目录(prefix 是安装目录),并使用 -fPIC 参数链接动态库

./config --prefix=/usr/local/openssl -fPIC

5)编译

make

6)安装

make install

7)查看版本

cd /usr/local/openssl/bin
./openssl version

把安装的 openssl 设置为全局(可选)


1)删除软链接(rm -rf   ./软链接名称,若rm -rf ./软链接名称/ ,则会把软链接以及软链接指向下的内容删除)

正确:rm -rf /usr/bin/openssl
错误:rm -rf /usr/bin/openssl/

正确:rm -rf /usr/include/openssl
错误:rm -rf /usr/include/openssl/

2)创建软链接

ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl
ln -s /usr/local/openssl/include/openssl /usr/include/openssl

说明:/usr/bin/openssl、/usr/include/openssl 是 openssl 软件包的默认扫描路径,如果使用命令安装 openssl 会自动安装到该目录下(每个软件包都有一个系统默认路径);使用软链接的目的就是把自己的安装目录链接到系统路径,然后就可以在任意地方执行 openssl version 查看 openssl 版本,而无需进入到 /usr/local/openssl/bin 路径下查看版本。

3)查看 OpenSSL 版本,安装完成

openssl version

 


如果安装完成后遇到如下错误:

root@BZD25521:/etc/ld.so.conf.d# openssl version openssl: symbol lookup error: openssl: undefined symbol: EVP_mdc2, version OPENSSL_1_1_0

解决办法见:安装 openssl 时报错:openssl: symbol lookup error: openssl: undefined symbol: EVP_mdc2, version OPENSSL_1_-CSDN博客


http://lihuaxi.xjx100.cn/news/1886169.html

相关文章

flutter ‘Gradle Libs‘ was added by build file ‘app/build.gradle‘

相关问题解释文章 How to prefer settings.gradle repositories over build.gradle repositoriesMode 解释 问题描述 此问题是,直接创建的flutter项目,需要配置其他的maven仓库地址,和第三方module,结果始终都是无法成功 错误…

学习pytorch20 pytorch完整的模型验证套路

pytorch完整的模型验证套路 使用非数据集的测试数据,测试训练好模型的效果代码预测结果解决报错 B站小土堆pytorch学习视频 https://www.bilibili.com/video/BV1hE411t7RN/?p32&spm_id_frompageDriver&vd_source9607a6d9d829b667f8f0ccaaaa142fcb 使用非数…

Python数据科学视频讲解:Python保留字与标识符

2.6 Python保留字与标识符 视频为《Python数据科学应用从入门到精通》张甜 杨维忠 清华大学出版社一书的随书赠送视频讲解2.6节内容。本书已正式出版上市,当当、京东、淘宝等平台热销中,搜索书名即可。内容涵盖数据科学应用的全流程,包括数据…

Web漏洞分析-文件解析及上传(上)

随着互联网的迅速发展,网络安全问题变得日益复杂,而文件解析及上传漏洞成为攻击者们频繁攻击的热点之一。本文将深入研究文件解析及上传漏洞,通过对文件上传、Web容器IIS、命令执行、Nginx文件解析漏洞以及公猫任意文件上传等方面的细致分析&…

lwIP 细节之三:errf 回调函数是何时调用的

使用 lwIP 协议栈进行 TCP 裸机编程,其本质就是编写协议栈指定的各种回调函数。将你的应用逻辑封装成函数,注册到协议栈,在适当的时候,由协议栈自动调用,所以称为回调。 注:除非特别说明,以下内…

业内首份!工业领域数据安全政策汇编发布(附下载)

在工业领域,数据是贯穿工业互联网的“血液”,是提质降本增效的关键。工业数据增长迅速、种类繁多、体量庞大,数据安全已成为保障工业发展,保障社会稳定的要点。 随着工业企业信息化的普及以及工业互联网的快速发展,工…

索引的使用

索引是一种数据结构,用于快速查找数据库中的数据。索引可以加快查询的速度,并减少数据库的负载和响应时间。以下是使用索引的一些方法: 1.创建索引:可以通过CREATE INDEX语句创建索引。在创建索引时,需要指定要创建索…

关于代码质量度量和分析的一些总结

最近团队做CMMI3认证,这期间涉及到了代码质量度量。花了点时间做了总结,分享给大家。 先看一张整体的图,然后逐个指标展开说明。 一、单元测试覆盖率 单元测试覆盖率(Coverage)是一个度量单元测试覆盖了多少代码的指标…