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

卸载 openssl


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

bash 复制代码
whereis openssl

which openssl

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

2)删除软件安装包

bash 复制代码
apt-get purge openssl

3)删除配置文件

bash 复制代码
rm -rf /etc/ssl

安装 openssl


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

1)解压

bash 复制代码
tar -zxvf openssl-1.0.2p.tar.gz

2)进入目录

bash 复制代码
cd openssl-1.0.2p

3)创建安装目录

bash 复制代码
mkdir /usr/local/openssl

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

bash 复制代码
./config --prefix=/usr/local/openssl -fPIC

5)编译

bash 复制代码
make

6)安装

bash 复制代码
make install

7)查看版本

bash 复制代码
cd /usr/local/openssl/bin
./openssl version

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


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

bash 复制代码
正确:rm -rf /usr/bin/openssl
错误:rm -rf /usr/bin/openssl/

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

2)创建软链接

bash 复制代码
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 版本,安装完成

bash 复制代码
openssl version

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

bash 复制代码
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博客

相关推荐
IT成长日记7 分钟前
【Docker基础】Docker核心概念:命名空间(Namespace)与资源隔离联系
运维·docker·namespace·资源隔离·命令空间
Mikhail_G11 分钟前
Python应用八股文
大数据·运维·开发语言·python·数据分析
光电的一只菜鸡1 小时前
ubuntu之坑(十四)——安装FFmpeg进行本地视频推流(在海思平台上运行)
ubuntu·ffmpeg·音视频
再ZzZ1 小时前
Docker安装PaddleOCR并提供接口服务(CPU)
运维·docker·容器
love530love2 小时前
是否需要预先安装 CUDA Toolkit?——按使用场景分级推荐及进阶说明
linux·运维·前端·人工智能·windows·后端·nlp
m0_694845573 小时前
日本云服务器租用多少钱合适
linux·运维·服务器·安全·云计算
一心0923 小时前
Linux部署bmc TrueSight 监控agent步骤
linux·运维·服务器·监控·bmc truesight
Florence233 小时前
linux中执行脚本命令的source和“.”和“./”的区别
linux·运维·服务器
白日依山尽yy3 小时前
Linux02
linux·运维·服务器
JavaAlpha3 小时前
Jenkins 配置信息导出 的详细说明(中英对照)
运维·servlet·jenkins