如何获取 YUM 上的软件包信息

如何获取 YUM 上的软件包信息

我是 unix 系统的新手,所以如果我说的不清楚或者说了一些没意义的话,请原谅我。

我刚刚创建了一台 Amazon Linux AMI 机器,我发现它自带了 Java 7 (1.7.0_131),但我想要 Java 8,所以我找到了此主题展示如何更新你的 java 版本....这让我对 yum 的工作方式感到非常困惑。

当我执行时,sudo yum search all java-1.8.0我得到此列表作为输出:

Loaded plugins: priorities, update-motd, upgrade-helper
================================ Matched: java-1.8.0 ================================
java-1.8.0-openjdk.x86_64 : OpenJDK Runtime Environment
java-1.8.0-openjdk-demo.x86_64 : OpenJDK Demos
java-1.8.0-openjdk-devel.x86_64 : OpenJDK Development Environment
java-1.8.0-openjdk-headless.x86_64 : OpenJDK Runtime Environment
java-1.8.0-openjdk-javadoc.noarch : OpenJDK API Documentation
java-1.8.0-openjdk-javadoc-zip.noarch : OpenJDK API Documentation compressed in
                                      : single archive
java-1.8.0-openjdk-src.x86_64 : OpenJDK Source Bundle

该帖子说只需输入sudo yum install java-1.8.0,但列表中没有 purejava-1.8.0选项。因此我猜想某个地方有一个包java-1.8.0,并且该包的内容可能包括 YUM 搜索返回的一些插件。

那么我如何才能知道某个包名实际上会安装什么?或者我如何才能搜索包名?

我想要这种控制,这样我就能找到像java-1.8.0和 这样的包java-1.8.0-openjdk-headless.x86_64,并且能够了解java-1.8.0和 相比里面有什么java-1.8.0-openjdk-headless.x86_64

另外,我不想每次安装某些东西时都依赖谷歌,所以我可以找到一些教程来显示包名称和选项,例如:

sudo yum install tomcat6 tomcat6-webapps

我可以在哪里自己找到tomcat6?我怎么知道有一个名为的选项tomcat6-webapps

答案1

为了回答您的问题,我将向您展示如何安装/升级 Java。

要查看当前安装的 Java 版本,我可以运行:

java -version

要查看当前安装的 Java 包的名称,我可以运行:

yum list installed | grep java

要安装 openjdk java,您必须运行:

yum install java-1.8.0-openjdk.x86_64

据我所知,仅通过运行以下命令无法安装 java-1.8.0:

yum install java-1.8.0

因为Java有两个版本,一个是openjdk-java,另一个是oracle-java。

因此,通过提供 -openjdk.x86.64,您实际上告诉 yum 应该安装哪个版本的 Java。

因此,对于您的问题“那么我如何才能看到某个软件包名称实际上会安装什么?或者我如何才能搜索软件包名称?”的答案是,您需要提供您打算安装的软件包的确切名称,这就是将要安装的软件包(以及它的依赖项)。

为了显示 yum 包包含的文件,您可以运行以下命令:

repoquery -l packagename

例子:

[root@centolel ~]# repoquery -l java-1.8.0-openjdk
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.121-1.b13.el6.x86_64/jre/bin/policytool
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.121-1.b13.el6.x86_64/jre/lib/amd64/libawt_xawt.so
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.121-1.b13.el6.x86_64/jre/lib/amd64/libjawt.so
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.121-1.b13.el6.x86_64/jre/lib/amd64/libjsoundalsa.so
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.121-1.b13.el6.x86_64/jre/lib/amd64/libsplashscreen.so
/usr/share/applications/java-1.8.0-openjdk-1.8.0.121-1.b13.el6.x86_64-policytool.desktop
/usr/share/icons/hicolor/16x16/apps/java-1.8.0.png
/usr/share/icons/hicolor/24x24/apps/java-1.8.0.png
/usr/share/icons/hicolor/32x32/apps/java-1.8.0.png
/usr/share/icons/hicolor/48x48/apps/java-1.8.0.png

如何找到 tomcat6 包?

[root@centolel ~]# yum search tomcat6
Loaded plugins: fastestmirror, refresh-packagekit, security
Loading mirror speeds from cached hostfile
 * base: centos.joinweb.co.il
 * epel: mirror.nonstop.co.il
 * extras: centos.joinweb.co.il
 * rpmforge: mirror1.hs-esslingen.de
 * updates: centos.joinweb.co.il
=========================================================================================== N/S Matched: tomcat6 ===========================================================================================
glite-security-trustmanager-tomcat6.noarch : Java trustmanager interface supporting a GSI grid name space
tomcat6.noarch : Apache Servlet/JSP Engine, RI for Servlet 2.5/JSP 2.1 API
tomcat6-admin-webapps.noarch : The host-manager and manager web applications for Apache Tomcat
tomcat6-docs-webapp.noarch : The docs web application for Apache Tomcat
tomcat6-el-2.1-api.noarch : Expression Language v1.0 API
tomcat6-javadoc.noarch : Javadoc generated documentation for Apache Tomcat
tomcat6-jsp-2.1-api.noarch : Apache Tomcat JSP API implementation classes
tomcat6-lib.noarch : Libraries needed to run the Tomcat Web container
tomcat6-servlet-2.5-api.noarch : Apache Tomcat Servlet API implementation classes
tomcat6-webapps.noarch : The ROOT and examples web applications for Apache Tomcat

编辑#1:

好的,现在已经测试过了,当我说你不能使用 安装时我似乎错了yum install java-1.8.0,但它在我的计算机上运行良好。

yum install java-1.8.0当我在测试机上运行时,它自动向我建议了 openjdk 版本,所以我猜它是默认版本:

--> Finished Dependency Resolution

Dependencies Resolved

========================================================================================================================
 Package                                 Arch               Version                           Repository           Size
========================================================================================================================
Installing:
 java-1.8.0-openjdk                      x86_64             1:1.8.0.121-1.b13.el6             base                200 k
Installing for dependencies:
 java-1.8.0-openjdk-headless             x86_64             1:1.8.0.121-1.b13.el6             base                 32 M
 ttmkfdir                                x86_64             3.0.9-32.1.el6                    base                 43 k
 xorg-x11-fonts-Type1                    noarch             7.2-11.el6                        base                520 k

另一个有用的命令是:

yum info java-1.8.0-openjdk.x86_64

我相信你能找到你想要的答案这里

相关内容