web-dev-qa-db-ja.com

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と入力するだけだと言っていましたが、リストに純粋なJava-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の内部を理解できるように、この種のコントロールが必要です。

また、何かをインストールするたびにgoogleに依存したくないので、次のようなパッケージ名とオプションを示すチュートリアルを見つけることができます。

Sudo yum install Tomcat6 Tomcat6-webapps

Tomcat6はどこにありますか? Tomcat6-webappsという名前のオプションがあったことをどうやって知ることができますか?

1
mFeinstein

あなたの質問に答えるために、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には2つのバージョンがあるため、1つはopenjdk-Javaで、もう1つはOracle-Javaです。

したがって、-openjdk.x86.64を指定することで、実際にどのバージョンのJavaをインストールする必要があるかをyumに伝えます。

それで、あなたの質問に対する答えは、「では、パッケージ名が実際にインストールされるものをどのように確認できますか?または、代わりにパッケージ名を検索するにはどうすればよいですか?」インストールするパッケージの正確な名前を指定する必要があり、それがインストールされるパッケージです(依存関係もあります)。

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

私はあなたが探している答えが見つかると信じています ここ

2
Itai Ganot