GNU/Linux >> Linux の 問題 >  >> Linux

LinuxでのRPMコマンドと例

RPM(Redhat Package Manager)は、ソフトウェアパッケージのインストール、アンインストール、更新、クエリ、および検証に使用されるコマンドラインパッケージ管理ユーティリティです。

このチュートリアルでは、システム管理者向けの最も一般的なLinuxrpmコマンドのいくつかについて説明します。 RPMベースのLinuxディストリビューションには、Redhat、Centos、Fedora、OpenSuseなどがあります。 YumとDNFは、RPM管理のフロントエンドであり、より多くの機能を備えており、制限を克服することができます。

RPMパッケージを入手する方法

以下に示すように、RPMパッケージを取得するために利用できるいくつかの方法があります。

  1. ソフトウェアCD/DVD
  2. CentOSミラー
  3. RedHat(アカウントが必要)
  4. オープンリポジトリのウェブサイト

RPMコマンドの基本モード

  • インストール:RPMパッケージをインストールするために使用されます。
  • 削除:RPMパッケージを消去、削除、またはアンインストールするために使用されます。
  • アップグレード:既存のRPMパッケージを更新するために使用されます。
  • クエリ:RPMパッケージをクエリするために使用されます。
  • 確認:RPMパッケージを確認するために使用されます。

RPMパッケージの例

GeoIPアプリケーションGeoIP-1.5.0-11.el7.x86_64.rpm 国/都市/組織からIPアドレスまたはホスト名へのマッピング用のRPMパッケージライブラリです。 GeoIP はパッケージ名、バージョンは1.5.0-11.el7 、リリースは7 およびアーキテクチャ.x86_64

インストール

1。インストールせずにRPMパッケージの情報を知る方法

パッケージをダウンロードした後、インストールする前にパッケージの情報を知りたい。 -qipを使用できます パッケージの情報を一覧表示するオプション(クエリ情報パッケージ)。

$ sudo rpm -qip GeoIP-1.5.0-11.el7.x86_64.rpm
output
Name        : GeoIP
Version     : 1.5.0
Release     : 11.el7
Architecture: x86_64
Install Date: (not installed)
Group       : Development/Libraries
Size        : 2905020
License     : LGPLv2+ and GPLv2+ and CC-BY-SA
Signature   : RSA/SHA256, Sun 20 Nov 2016 05:49:19 PM UTC, Key ID 24c6a8a7f4a80eb5
Source RPM  : GeoIP-1.5.0-11.el7.src.rpm
Build Date  : Sat 05 Nov 2016 08:29:17 PM UTC
Build Host  : worker1.bsys.centos.org
Relocations : (not relocatable)
Packager    : CentOS BuildSystem 
Vendor      : CentOS
URL         : http://www.maxmind.com/app/c
Summary     : Library for country/city/organization to IP address or hostname mapping
Description :
GeoIP is a C library that enables the user to find the country that any IP
address or hostname originates from. It uses a file based database that is
accurate as of June 2007 and can optionally be updated on a weekly
basis by installing the GeoIP-update package. This database simply contains IP
blocks as keys, and countries as values. This database should be more complete
and accurate than using reverse DNS lookups.

This package includes GeoLite data created by MaxMind, available from
http://www.maxmind.com/

2。 RPMパッケージのインストール方法

-ivhを使用できます 以下に示すように、特定のパッケージをインストールするためのパラメータ。

$ sudo rpm -ivh GeoIP-1.5.0-11.el7.x86_64.rpm
   Output
    Preparing...                          ################################# [100%]
        package GeoIP-1.5.0-11.el7.x86_64 is already installed

3。インストールされているRPMパッケージを確認する方法

-qを使用できます パッケージ名のオプション。rpmパッケージがインストールされているかどうかが表示されます。

$ sudo rpm -q GeoIP
output
GeoIP-1.5.0-11.el7.x86_64

4。インストールされている特定のRPMパッケージのすべてのファイルを一覧表示する方法

-qlを使用すると、インストールされているrpmパッケージのすべてのファイルを一覧表示できます。 rpmコマンドによるオプション。

$ sudo rpm -ql GeoIP
output
/etc/GeoIP.conf
/etc/GeoIP.conf.default
/usr/bin/geoiplookup
/usr/bin/geoiplookup6
/usr/bin/geoipupdate
/usr/lib64/libGeoIP.so.1
/usr/lib64/libGeoIP.so.1.5.0
/usr/lib64/libGeoIPUpdate.so.0
/usr/lib64/libGeoIPUpdate.so.0.0.0
/usr/share/GeoIP
/usr/share/GeoIP/GeoIP-initial.dat
/usr/share/GeoIP/GeoIP.dat
/usr/share/GeoIP/GeoIPASNum.dat
/usr/share/GeoIP/GeoIPASNumv6.dat
/usr/share/GeoIP/GeoIPCity.dat
/usr/share/GeoIP/GeoIPCityv6.dat
/usr/share/GeoIP/GeoIPCountry.dat
/usr/share/GeoIP/GeoIPCountryv6.dat
/usr/share/GeoIP/GeoIPv6-initial.dat
...

5。最近インストールされたRPMパッケージを一覧表示する方法

-qaを使用できます --lastのオプション 、最近インストールされたすべてのrpmパッケージが一覧表示されます。

$ sudo rpm -qa --last
output
GeoIP-1.5.0-11.el7.x86_64                     Sat 01 Sep 2018 11:34:09 AM UTC
wget-1.14-15.el7_4.1.x86_64                   Sun 26 Aug 2018 03:21:02 PM UTC
iwl7265-firmware-22.0.7.0-62.2.el7_5.noarch   Thu 16 Aug 2018 02:10:18 PM UTC
libgomp-4.8.5-28.el7_5.1.x86_64               Thu 16 Aug 2018 02:10:15 PM UTC
iwl2030-firmware-18.168.6.1-62.2.el7_5.noarch Thu 16 Aug 2018 02:10:15 PM UTC
iptables-1.4.21-24.1.el7_5.x86_64             Thu 16 Aug 2018 02:10:15 PM UTC
yum-plugin-fastestmirror-1.1.31-46.el7_5.noarch Thu 16 Aug 2018 02:10:14 PM UTC
iwl6000-firmware-9.221.4.1-62.2.el7_5.noarch  Thu 16 Aug 2018 02:10:14 PM UTC
iwl4965-firmware-228.61.2.24-62.2.el7_5.noarch Thu 16 Aug 2018 02:10:14 PM UTC
iwl105-firmware-18.168.6.1-62.2.el7_5.noarch  Thu 16 Aug 2018 02:10:14 PM UTC
iwl100-firmware-39.31.5.1-62.2.el7_5.noarch   Thu 16 Aug 2018 02:10:13 PM UTC
iwl1000-firmware-39.31.5.1-62.2.el7_5.noarch  Thu 16 Aug 2018 02:10:13 PM UTC
ca-certificates-2018.2.22-70.0.el7_5.noarch   Thu 16 Aug 2018 02:10:13 PM UTC
iwl6000g2b-firmware-17.168.5.2-62.2.el7_5.noarch Thu 16 Aug 2018 02:10:12 PM UTC
...

6。依存関係なしでRPMパッケージをインストールする方法

-ivhを使用できます --nodepsのパラメータ 依存関係チェックなしを表します。依存関係なしで特定のパッケージをインストールするには、以下に示すように。

$ sudo rpm -ivh --nodeps GeoIP-1.5.0-11.el7.x86_64.rpm
   Output
    Preparing...                          ################################# [100%]
        package GeoIP-1.5.0-11.el7.x86_64 is already installed

7。インストールされているRPMパッケージを交換する方法

-ivh --replacepkgsを使用できます 以下に示すように、インストールされた特定のパッケージを置き換えるためのパラメータ。

$ sudo rpm -ivh --replacepkgs GeoIP-1.5.0-11.el7.x86_64.rpm
    Output
    Preparing...                          ################################# [100%]
    Updating / installing...
      1:GeoIP-1.5.0-11.el7               ################################# [100%]

削除

8。 RPMパッケージをアンインストールする方法

-eを使用できます 以下に示すように、依存関係なしでインストールされた特定のパッケージをアンインストールするためのパラメーター(依存関係をチェックしないでください)。

$ sudo  rpm -e --nodeps GeoIP

次に、以下のコマンドを入力して、GeoIPがインストールされていないことを確認します。

$ sudo rpm -q GeoIP
    Output
    package GeoIP is not installed

アップグレード

9。インストールされているRPMパッケージをアップグレードする方法

-Uvhを使用できます 以下に示すように、インストールされている特定のパッケージをアップグレードするためのパラメータ。

$ sudo rpm -Uvh GeoIP-1.5.0-11.el7.x86_64.rpm
   Output
    Preparing...                          ################################# [100%]
        package GeoIP-1.5.0-11.el7.x86_64 is already installed

クエリ

10。インストールされているすべてのパッケージを照会する方法

-aを使用できます qとともにパラメータ 以下に示すように、サーバーにインストールされているすべてのパッケージを照会します。

$ sudo rpm -qa
    Output
    python-firewall-0.4.4.4-14.el7.noarch
    ncurses-base-5.9-14.20130511.el7_4.noarch
    plymouth-0.8.9-0.31.20140113.el7.centos.x86_64
    kbd-misc-1.15.5-13.el7.noarch
    vim-common-7.4.160-4.el7.x86_64
    bash-4.2.46-30.el7.x86_64
    dmidecode-3.0-5.el7.x86_64
    filesystem-3.2-25.el7.x86_64
    kbd-1.15.5-13.el7.x86_64
    vim-enhanced-7.4.160-4.el7.x86_64
    firewalld-0.4.4.4-14.el7.noarch
    ....

11。特定のパッケージを照会する方法

grepを使用できます 以下に示すように、特定のパッケージを検索するコマンドがインストールされているかどうか。

$ sudo rpm -qa | grep GeoIP
    Output
    GeoIP-1.5.0-11.el7.x86_64

12。どのRPMパッケージに属するファイルをクエリする方法

例9では、コマンドを入力して、インストールされているRPMパッケージのすべてのファイルを一覧表示します。ここで、/usr/lib64/libGeoIP.so.1.5.0を知りたいと思います。 ファイルはどのRPMパッケージに属します。

$ sudo rpm -qf /usr/lib64/libGeoIP.so.1.5.0
output
GeoIP-1.5.0-11.el7.x86_64

確認

13。特定のパッケージの情報を取得する方法

-iを使用できます qとともにパラメータ 以下に示すように、特定のパッケージの情報を取得します。

$ sudo rpm -qi GeoIP
Output
Name        : GeoIP
Version     : 1.5.0
Release     : 11.el7
Architecture: x86_64
Install Date: Thu 16 Aug 2018 02:04:09 PM UTC
Group       : Development/Libraries
Size        : 2905020
License     : LGPLv2+ and GPLv2+ and CC-BY-SA
Signature   : RSA/SHA256, Sun 20 Nov 2016 05:49:19 PM UTC, Key ID 24c6a8a7f4a80eb5
Source RPM  : GeoIP-1.5.0-11.el7.src.rpm
Build Date  : Sat 05 Nov 2016 08:29:17 PM UTC
Build Host  : worker1.bsys.centos.org
Relocations : (not relocatable)
Packager    : CentOS BuildSystem
Vendor      : CentOS
URL         : http://www.maxmind.com/app/c
Summary     : Library for country/city/organization to IP address or hostname mapping
Description :
GeoIP is a C library that enables the user to find the country that any IP
address or hostname originates from. It uses a file based database that is
accurate as of June 2007 and can optionally be updated on a weekly
basis by installing the GeoIP-update package. This database simply contains IP
blocks as keys, and countries as values. This database should be more complete
and accurate than using reverse DNS lookups.

This package includes GeoLite data created by MaxMind, available from http://www.maxmind.com/

14。 RPMパッケージを確認する方法

-Vpを使用して、パッケージのインストール済みファイルの情報をrpmデータベースと比較することにより、パッケージを検証できます。 オプション(パッケージの確認)。

$ sudo rpm -Vp GeoIP-1.5.0-11.el7.x86_64.rpm

15。すべてのRPMパッケージを確認する方法

-Vaを使用すると、インストールされているすべてのrpmパッケージを確認できます。 オプション(すべて確認)。

$ sudo rpm -Va
output
S.5....T.  c /etc/sysconfig/authconfig
S.5....T.  c /etc/yum.repos.d/CentOS-Base.repo
.M.......  c /etc/machine-id
.M.......  g /etc/udev/hwdb.bin
.M.......  g /var/lib/systemd/random-seed
.M.......  c /etc/shadow
S.5....T.  c /etc/ssh/sshd_config
.M.......  c /etc/audit/rules.d/audit.rules
S.5....T.  c /etc/NetworkManager/NetworkManager.conf
....L....  c /etc/pam.d/fingerprint-auth
....L....  c /etc/pam.d/password-auth
....L....  c /etc/pam.d/postlogin
...

関連項目:

  • RPMDistroにインストールせずにパッケージをダウンロードする方法
  • RPMベースのLinuxディストリビューションを管理するための21のDNFコマンド
  • LinuxRPMコマンドを使用してパッケージをクエリする方法

rpmパッケージは、プログラムファイル、構成ファイル、およびパッケージ(依存関係)に必要なコンパイル済みソフトウェアプログラムとライブラリのリストで構成されています。このrpmユーティリティは、「。rpm」形式で構築されたパッケージでのみ機能します。


Linux
  1. Linuxのヘッドコマンドとテールコマンドを例で説明

  2. LinuxRPMComamndと10の便利な例

  3. LinuxでのJQコマンドと例

  1. 例を含む10以上のLinuxVIコマンド

  2. RPMコマンド

  3. 10 の例を含む最も単純な Linux コマンド

  1. Linuxでのdpkgコマンドと例

  2. 例を含むwcLinuxコマンド

  3. 19Linuxでの一般的なSSHコマンドと例