在Linux上明明用rpm成功安装了软件,在卸载时却提示未安装

简介: 在Linux上明明用rpm成功安装了软件,在卸载时却提示未安装

背景


openEuler 上明明用 rpm 成功安装了 JDK11 ,在通过安装包名称卸载时却提示未安装。。


错误:未安装软件包 jdk-11.0.10_linux-aarch64_bin.rpm


环境信息


这里实验用的华为云鲲鹏服务器配置如下:

Huawei Kunpeng 920 2.6GHz
4vCPUs | 8GB
openEuler 20.03 64bit with ARM

连接机器后,先查看系统相关信息,注意这里是 aarch64 的,后面配置源时一定要匹配。

# 查看系统内核信息
[root@ecs-kunpeng-0001 ~]# uname -a
Linux ecs-kunpeng-0001 4.19.90-2003.4.0.0036.oe1.aarch64 #1 SMP Mon Mar 23 19:06:43 UTC 2020 aarch64 aarch64 aarch64 GNU/Linux
# 查看系统版本信息
[root@ecs-kunpeng-0001 ~]# cat /etc/os-release
NAME="openEuler"
VERSION="20.03 (LTS)"
ID="openEuler"
VERSION_ID="20.03"
PRETTY_NAME="openEuler 20.03 (LTS)"
ANSI_COLOR="0;31"


错误复现


  1. 起因是我想部署下开源的物联网系统 thingsboard ,其要求JDK版本为11。
  2. 先是安装了 JDK11
  3. 后来发现这在在 openEuler 上有些问题,想卸载掉 JDK11 ,竟然卸载不掉;
  4. 仔细检查后发现在查找已安装的软件包名称时有问题,即不应该查 java ,而是 jdk
  5. 找见问题后,直接卸载即可。
# 安装JDK11
[root@ecs-kunpeng-0001 software]# rpm -ivh jdk-11.0.10_linux-aarch64_bin.rpm
# 后来想卸载掉,通过安装包名称
[root@ecs-kunpeng-0001 ~]# rpm -e jdk-11.0.10_linux-aarch64_bin.rpm
错误:未安装软件包 jdk-11.0.10_linux-aarch64_bin.rpm
# 查找下已安装的java相关的包
[root@ecs-kunpeng-0001 ~]# rpm -qa | grep java
java-1.8.0-openjdk-devel-1.8.0.242.b08-1.h5.oe1.aarch64
javapackages-filesystem-5.3.0-2.oe1.noarch
java-1.8.0-openjdk-headless-1.8.0.242.b08-1.h5.oe1.aarch64
java-1.8.0-openjdk-1.8.0.242.b08-1.h5.oe1.aarch64
# [root@ecs-kunpeng-0001 software]# rpm -ivh jdk-11.0.10_linux-aarch64_bin.rpm
警告:jdk-11.0.10_linux-aarch64_bin.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID ec551f03: NOKEY
Verifying...                          ################################# [100%]
准备中...                          ################################# [100%]
        软件包 jdk-11.0.10-2000:11.0.10-ga.aarch64 已经安装
# 意识到错误了,应该查找已安装的jdk相关的包,可以看到查出了jdk11相关的已安装的软件包
[root@ecs-kunpeng-0001 software]# rpm -qa | grep jdk
java-1.8.0-openjdk-devel-1.8.0.242.b08-1.h5.oe1.aarch64
copy-jdk-configs-3.7-3.oe1.noarch
java-1.8.0-openjdk-headless-1.8.0.242.b08-1.h5.oe1.aarch64
java-1.8.0-openjdk-1.8.0.242.b08-1.h5.oe1.aarch64
jdk-11.0.10-11.0.10-ga.aarch64
# 卸载jdk11
[root@ecs-kunpeng-0001 software]# rpm -e jdk-11.0.10-11.0.10-ga.aarch64


小总结


出现以上问题的原因主要是自己对 rpm 命令的掌握没到位,同时想当然地认为 jdk11 安装包名称包含 java ,导致检索关键词错误。

附: rpm 常用命令。

# 列出已安装的所有软件包
rpm -qa
# 查找指定的软件包
rpm -qa httpd
# 查找包含Java的软件包
rpm -qa | grep java
# 安装并显示安装进度:thingsboard
rpm -ivh thingsboard-3.2.2.rpm
# 升级安装并显示安装进度:thingsboard
rpm -Uvh thingsboard-3.2.2.rpm
# 升级安装并显示安装进度:jdk11
rpm -Uvh jdk-11.0.10_linux-aarch64_bin.rpm
# 卸载软件包:jdk11
rpm -e jdk-11.0.10-11.0.10-ga.aarch64


相关实践学习
通义万相文本绘图与人像美化
本解决方案展示了如何利用自研的通义万相AIGC技术在Web服务中实现先进的图像生成。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
Ubuntu Linux
计算机基础知识:linux系统怎么安装?
在虚拟机软件中创建一个新的虚拟机,并选择相应操作系统类型和硬盘空间大小等参数。将下载的 ISO 镜像文件加载到虚拟机中。启动虚拟机,进入安装界面,并按照步骤进行安装。安装完成后,可以在虚拟机中使用 Linux 系统。
|
10月前
|
安全 Linux iOS开发
Nessus Professional 10.10 Auto Installer for RHEL 10, AlmaLinux 10, Rocky Linux 10 - Nessus 自动化安装程序
Nessus Professional 10.10 Auto Installer for RHEL 10, AlmaLinux 10, Rocky Linux 10 - Nessus 自动化安装程序
657 6
Nessus Professional 10.10 Auto Installer for RHEL 10, AlmaLinux 10, Rocky Linux 10 - Nessus 自动化安装程序
|
10月前
|
消息中间件 Kafka Linux
Linux下安装Kafka 3.9.1
本文介绍Kafka 3.9.1版本的安装与配置,包括通过ZooKeeper或KRaft模式启动Kafka。涵盖环境变量设置、日志路径修改、集群UUID生成、存储格式化及服务启停操作,适用于Linux环境下的部署实践。
1257 0
|
12月前
|
网络协议 关系型数据库 Linux
【App Service Linux】在Linux App Service中安装 tcpdump 并抓取网络包
在App Service for Linux环境中,无法像Windows一样直接使用网络排查工具抓包。本文介绍了如何通过TCPDUMP在Linux环境下抓取网络包,包括SSH进入容器、安装tcpdump、执行抓包命令及下载分析文件的完整操作步骤。
533 5
|
12月前
|
弹性计算 安全 Linux
阿里云服务器ECS安装宝塔Linux面板、安装网站(新手图文教程)
本教程详解如何在阿里云服务器上安装宝塔Linux面板,涵盖ECS服务器手动安装步骤,包括系统准备、远程连接、安装命令执行、端口开放及LNMP环境部署,手把手引导用户快速搭建网站环境。
|
Ubuntu 安全 Linux
Linux这5款微型发行版,体积小+精简,比win7运行还快,值得安装
以上5款微型发行版体积小且精简,如果你有台旧电脑,不妨试试?
|
安全 Ubuntu Linux
如何安装Linux操作系统?
此时,您可以选择重新启动计算机,然后从硬盘上的Linux系统启动。以上是一个大致的安装过程。请注意,不同的Linux发行版可能会在细节上有所差异,因此在进行安装之前,请确保您阅读并理解了相应发行版的安装指南或文档。
|
Ubuntu Linux 数据安全/隐私保护
Win10安装Linux子系统教程!如何在Win10系统中安装Ubuntu!
登录系统后,输入cd /返回上一级,然后再输入“ls”查看一下系统文件目录,看看对不对!