Linux
 Computer >> コンピューター >  >> システム >> Linux

CentOSおよびRHELでのYUMパッケージマネージャーの使用

この記事では、 YUMについて検討します。 プログラム(RPMパッケージ)のインストール、削除、更新を管理し、依存関係を自動的に解決し、追加のリポジトリーを管理できるパッケージマネージャー。この記事は、初心者のLinux管理者にとってyumチートシートとして役立ちます。

うん (Yellowdog Updater Modified)は、RPMパッケージ(RedHat Package Manager)に基づくLinuxディストリビューション用のコンソールパッケージマネージャーです。これらには、RedHat、CentOS、Fedora、Oracle Linux、ScientificLinuxなどの人気のあるOSが含まれます。

YUMを使用したパッケージのインストール、更新、および削除

何から始めますか?他の場合と同様に、ヘルプから始めましょう:

yum help –yumの完全なヘルプ

最も人気のあるyumコマンドを強調します:

yum clean all –すべてのパッケージのキャッシュをクリーンアップします(通常、yumで問題が発生した場合に使用されます)

yum makecache –パッケージキャッシュを再作成します

yum repolist –接続されているすべてのリポジトリのリストを表示します。出力は次のようになります。

Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base:
* extras:
* updates:
repo id repo name status
base/7/x86_64 CentOS-7 - Base 10,019
extras/7/x86_64 CentOS-7 - Extras 435
updates/7/x86_64 CentOS-7 - Updates 2,500
repolist: 12,954

システムにインストールされているCentOS7リポジトリは、Base、Extras、Updatesの標準のみです。

yum list available –インストール可能なすべてのパッケージのリストを表示します。

yum list installed –システムにインストールされているすべてのパッケージのリストを表示します。

yum list kernel –Linuxカーネルに関連するパッケージのリストを表示します。

特定のパッケージがCentOSサーバーにインストールされているかどうかを確認できます(たとえば、apacheパッケージのステータスを確認します):

yum list installed httpd

Installed Packages
httpd.x86_64 2.4.6-89.el7.centos.1 @updates

特定のパッケージに関する詳細情報を取得できます。たとえば、MariaDBパッケージに関する詳細情報を入手しましょう:

yum info mariadb

CentOSおよびRHELでのYUMパッケージマネージャーの使用

パッケージをインストールするには、yum install 使用されている。 Apache Webサーバーをインストールするには、次のコマンドを実行します。

yum install httpd

トレースバック(最後の最後の呼び出し):thread.error:新しいスレッドを開始できません」が表示された場合 yumコマンドを実行するとエラーが発生します。サーバーに十分なRAMがない可能性があります。 RAMを追加するか、yumプラグインを無効にしてみてください(plugins=0を指定してください) /etc/yum.confにあります )。

パッケージをインストールする前に、次のコマンドを使用してその依存関係を確認できます。

yum deplist httpd

パッケージをインストールしたいが、フルネームを忘れた場合は、*を使用できます。 ワイルドカード。例:

yum install epel-*

Resolving Dependencies
--> Running transaction check
---> Package epel-release.noarch 0:7-11 will be installed
--> Finished Dependency Resolution
Install 1 Package
Total download size: 15 k
Installed size: 24 k
Is this ok [y/d/N]:

入力した場合:

yum install epel

No package epel available.
Error: Nothing to do

利用可能なパッケージは表示されません。

Yumは一度に複数のパッケージをインストールできます:

yum install httpd php wget rsyslog

パッケージを再インストールするには:

yum reinstall proftpd

インストールされたパッケージをyumで削除するには、removeパラメーターを使用します。

yum remove httpd

パッケージを削除する前に、その依存関係を確認することをお勧めします(他のパッケージを削除しようとすると、他のパッケージが削除される原因となるパッケージがあります)。

yum deplist proftpd

CentOSおよびRHELでのYUMパッケージマネージャーの使用

名前または説明でパッケージを検索するには:

yum search nginx

提供オプションを使用すると、特定のファイルを含むパッケージを見つけることができます。例:

yum provides */squid.confを提供します

インストールされているすべてのパッケージを更新するには、次のコマンドを実行します。

yum update

パッケージはその名前で更新できます:

yum update php

次のコマンドを使用して、システムで利用可能な更新があるかどうかを確認できます。

yum check-update

利用可能なセキュリティアップデートに関する情報を入手するには:

yum updateinfo list security

場合によっては、パッケージまたはサービスを更新した後に問題が発生することがあります。たとえば、phpバージョンを更新した後、サイトが機能しなくなったとします。 yumを使用して以前のパッケージバージョンにロールバックできます:

yum downgrade php

grouplistでパッケージのグループインストールを使用することもできます 。リポジトリには、異なるプログラムセットを持つ事前定義されたパッケージグループがいくつかあります。これらのグループのリストを表示できます:

yum grouplist

「基本的なWebサーバー」リストの例でどのように機能するかを見てみましょう。グループとそのパッケージの詳細については、以下をご覧ください。

yum groupinfo "Basic Web Server"

CentOSおよびRHELでのYUMパッケージマネージャーの使用

チェック後、Webサーバーのパッケージとサービスのセットがインストールされることがわかります。

もう1つの便利なグループリスト–「システム管理ツール」:

yum groupinfo "System Administration Tools”

CentOSおよびRHELでのYUMパッケージマネージャーの使用

ご覧のとおり、リストには監視ツールとデバッグツールが含まれています。

次のコマンドを使用してグループリストをインストールできます:

yum groupinstall "System Administration Tools"

インストールされたパッケージは、別のブロック(「インストールされたグループ」)に表示されます:

CentOSおよびRHELでのYUMパッケージマネージャーの使用

YUN履歴コマンドの使用

以下を使用して、yumインストール履歴(トランザクションのリスト)を表示できます。

yum history list

出力は5つの列で構成され、最初の列には、トランザクションの詳細(インストールされているパッケージ、依存関係)を表示するために使用できるトランザクションIDが表示されます。

例:

yum history info 10

CentOSおよびRHELでのYUMパッケージマネージャーの使用

さらに、次のコマンドを使用してトランザクションを元に戻すことができます:

yum history undo 10

私の場合、4つのパッケージが削除されます:

CentOSおよびRHELでのYUMパッケージマネージャーの使用

yumパッケージのインストール/削除に関する情報は、 /var/log/yum.logで確認できます。 :

cat /var/log/yum.log

便利なYUMコマンドオプション

Yumには、パッケージを管理するためによく必要になる便利なオプションがいくつかあります。 -yを使用します エラーを除くすべてのyum出力を抑制するオプション。例:

yum update -y yum install httpd -y

いいえと言う リクエストに対して、次のオプションを使用します:

--assumeno

プラグインなしでyumを使用する、またはプラグインの1つを無効にするには、次のパラメーターを使用します。

--noplugins
--disableplugin=fastestmirror

無効にしたプラグインを有効にするには:

--enableplugin=fastestmirror

無効なリポジトリを使用するには:

yum update –enablerepo=atomic

yumの特定のリポジトリを無効にするには:

yum update –disablerepo=atomic

YUM構成ファイル/etc/yum.conf

YUM構成ファイルは/etc/yum.confです。 。

主な構成ファイルのパラメーターは次のとおりです。

  • cachedir –ローカルパッケージキャッシュ(デフォルトでは/ var / cache / yum)
  • ログファイル —yumログファイルへのパス
  • 廃止 —廃止されたパッケージを更新するかどうか(1 —はい、0 —いいえ)
  • gpgcheck —インストール前にパッケージを確認します(1 —はい、0 —いいえ)
  • keepcache —キャッシュを保持するかどうか(1 —はい、0 —いいえ)
  • cachedir — yumキャッシュを格納するディレクトリ(デフォルトでは/ var / cache / yum)
  • デバッグレベル –デバッグレベル1〜10
  • プラグイン —yumプラグインを有効にします(1 —はい、0 —いいえ)
  • bugtracker_url –yumエラーが登録される場所へのリンク
  • installonly_limit –1つのパッケージにインストールできるバージョンの最大数
便利なYUMプラグイン

なぜyumにプラグインが必要なのですか?どこでもそうですが、彼らは私たちの仕事を容易にします。

人気のあるプラグインとその説明は次のとおりです。

yum-plugin-fastestmirror –ミラー速度を測定し、パッケージをインストールするための最速のものを提供します。

yum-plugin-security —セキュリティアップデートのリストのみを提供します。

yum-plugin-keys —キー、キー情報、キーデータ、キー削除パラメータの使用を許可します

すべてのプラグインが保存されているディレクトリは/etc / yum /です。 。

yum-plugin-versionlock –選択したパッケージが更新されないようにします

使用可能なyumプラグインのリストを表示するには、次のコマンドを実行します。

yum search yum-plugin

======================================================================= N/S matched: yum-plugin =======================================================================
PackageKit-yum-plugin.x86_64 : Tell PackageKit to check for updates when yum exits
fusioninventory-agent-yum-plugin.noarch : Ask FusionInventory agent to send an inventory when yum exits
kabi-yum-plugins.noarch : The CentOS Linux kernel ABI yum plugin
yum-plugin-aliases.noarch : Yum plugin to enable aliases filters
yum-plugin-auto-update-debug-info.noarch : Yum plugin to enable automatic updates to installed debuginfo packages
yum-plugin-changelog.noarch : Yum plugin for viewing package changelogs before/after updating
yum-plugin-copr.noarch : Yum plugin to add copr command
yum-plugin-fastestmirror.noarch : Yum plugin which chooses fastest repository from a mirrorlist
yum-plugin-filter-data.noarch : Yum plugin to list filter based on package data
yum-plugin-fs-snapshot.noarch : Yum plugin to automatically snapshot your filesystems during updates
yum-plugin-keys.noarch : Yum plugin to deal with signing keys
yum-plugin-list-data.noarch : Yum plugin to list aggregate package data
yum-plugin-local.noarch : Yum plugin to automatically manage a local repo. of downloaded packages
yum-plugin-merge-conf.noarch : Yum plugin to merge configuration changes when installing packages
yum-plugin-ovl.noarch : Yum plugin to work around overlayfs issues
yum-plugin-post-transaction-actions.noarch : Yum plugin to run arbitrary commands when certain pkgs are acted on
yum-plugin-pre-transaction-actions.noarch : Yum plugin to run arbitrary commands when certain pkgs are acted on
yum-plugin-priorities.noarch : plugin to give priorities to packages from different repos
yum-plugin-protectbase.noarch : Yum plugin to protect packages from certain repositories.
yum-plugin-ps.noarch : Yum plugin to look at processes, with respect to packages
yum-plugin-remove-with-leaves.noarch : Yum plugin to remove dependencies which are no longer used because of a removal
yum-plugin-rpm-warm-cache.noarch : Yum plugin to access the rpmdb files early to warm up access to the db
yum-plugin-show-leaves.noarch : Yum plugin which shows newly installed leaf packages
yum-plugin-tmprepo.noarch : Yum plugin to add temporary repositories
yum-plugin-tsflags.noarch : Yum plugin to add tsflags by a commandline option
yum-plugin-upgrade-helper.noarch : Yum plugin to help upgrades to the next distribution version
yum-plugin-verify.noarch : Yum plugin to add verify command, and options
yum-plugin-versionlock.noarch : Yum plugin to lock specified packages from being updated

yum installを使用してプラグインをインストールできます 他のパッケージと同じように:

yum install yum-plugin-changelog
yum -y install yum-versionlock

プラグインを使用したパッケージの更新をブロックするには、次のコマンドを実行します。

yum versionlock nginx

ブロックされたパッケージのリストを表示するには:

yum versionlock list

ブロックリストからパッケージを削除するには:

yum versionlock delete nginx

CentOSおよびRHELでのYUMパッケージマネージャーの使用

プラグインを使用したくない場合は、yumコマンドに次のオプションを追加してプラグインを無効にできます。

--disableplugin=fastestmirror

または、すべてのyumプラグインを無効にすることができます:

--noplugins

YUMのプロキシを構成する方法

Yumは、HTTP/1.1プロトコルを使用してパッケージリポジトリーと対話しています。 LinuxサーバーがHTTPプロキシサーバーを介してのみインターネットにアクセスできる場合は、[main]でプロキシサーバーの名前を指定できます。 /etc/yum.confファイルのセクション:

proxy=https://proxy_server_name:3128

プロキシサーバーで認証が必要な場合は、次の行も追加します。

proxy_proxy_username=proxy_user
proxy_password=proxy_user_passw0rd

yumがプロキシサーバーを介して機能することを確認するには、次のコマンドを使用します。

yum clean all && yum search nginx

これを確認するために、ドイツのパブリックプロキシサーバーアドレスを指定しました。インストール中に最速のミラープラグインがトリガーされ、最速のミラーが見つかりました:

CentOSおよびRHELでのYUMパッケージマネージャーの使用

一部のリポジトリでのみプロキシを使用する場合は、/ etc/yum.confファイルに変更を加える必要はありません。プロキシサーバーの設定は、リポジトリ構成ファイル /etc/yum.repos.d/your_config.repoで指定できます。 代わりに。

そこで、Linux CentOS/RHELのRPMパッケージマネージャーであるyumの基本機能について検討しました。次の記事では、YUM/DNFリポジトリを管理する方法について詳しく説明します。


  1. CentOS/RHELでBashオートコンプリートをインストールして有効にする方法

    バッシュ (ボーンアゲインシェル )は間違いなく最も人気のあるLinuxシェルであり、多くのLinuxディストリビューションのデフォルトシェルであることは不思議ではありません。その最も魅力的な機能の1つは、組み込みの「オートコンプリート」です。 」サポート。 TABと呼ばれることもあります 完了、この機能を使用すると、コマンド構造を簡単に完了することができます。コマンドの一部を入力してから、[タブ]を押すことができます。 コマンドとその引数をオートコンプリートするためのキー。可能な場合は、複数の完了がすべて一覧表示されます。 バッシュと同じように 、ほぼすべての最新のLinuxシェルには

  2. Windows 10 用パッケージ マネージャー、Chocolatey をインストールして使用する方法

    これを想像してみてください:Windows PC に新しいソフトウェアをインストールする必要があります。 Web サイトにアクセスし、ページ上のジャンクをクリックしないようにしてから、デフォルト設定を使用してグラフィカルインストーラーをクリックする可能性があります。 これは、ソフトウェアがオンラインで配布され始めて以来、Windows の存続期間中にほとんど変更されていないため、おそらくおなじみのルーチンです。ただし、Unix システムには別のアプローチがあり、パッケージ マネージャーによってソフトウェアのインストールが処理されます。パッケージ マネージャーは最小限のユーザー入力しか必要とせ