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博客

相关推荐
小此方8 小时前
告别云服务器连接困扰——Windows下利用VirtualBox安装配置Ubuntu虚拟机详细教程
服务器·windows·ubuntu
一技安身15 小时前
【Docker】 镜像导出 & 导入,实验环境aarch64(arm64)Linux操作系统
linux·docker·容器
代码村新手16 小时前
Linux调试器-gdb的使用
linux
新时代牛马17 小时前
PCI与PCIe 硬件原理、配置空间/BAR 与 Linux 驱动完整篇:从 LTSSM、TLP 到 ECAM 与probe
java·linux·服务器
两点王爷18 小时前
解决 Linux 中 version `CXXABI_1.3.8‘ not found 报错
linux·运维·服务器
xx~t19 小时前
嵌入式——51单片机1
linux·c语言·单片机·嵌入式硬件·51单片机
啦啦啦啦啦zzzz19 小时前
利用RAII机制进行日志的采集
linux·服务器·c++·网络编程·c++20
0+11119 小时前
Linux --线程概念与控制
linux·运维·服务器·jvm
nLif19 小时前
基于GTK的简易MFC对话框兼容层 -- MfcToGTK
linux·c++·mfc·gtk
宽海智能仓储物流19 小时前
航发自动化立体库异构系统改造:宽海智能30天联调技术全解析
运维·数据仓库·自动化