#author("2022-05-12T14:49:03+09:00","default:ham","ham")
#author("2022-05-12T14:56:34+09:00","default:ham","ham")
#amazon(xxxxx)
#contents
#br
#adsense(728x90)
#br



* rpm [Redhat Package Manager] [#kcf4e4d1]

- Red Hat 系 Linux で使用されるパッケージ管理システム

** インストール [#zfc6c94b]

パッケージをインストールする。

#pre(soft){{
# rpm -ivh '''package-name'''.rpm
}}

パッケージをアップデートする。

#pre(soft){{
# rpm -Uvh '''package-name'''.rpm
}}

|オプション|意味|説明|h
|-i|install|インストール|
|-U|upgrade|アップグレード|
|-v|verbose|詳細を表示|
|-h||進行状況を表示|
|--nodeps|NO DEPendencieS|依存関係を無視|
|--force|force|競合を無視|
** 表示 [#e4ee7bcd]

- パッケージがインストールされているか調べる
#pre(soft){{
$ rpm -q '''name'''[.version.arch]
}}
- インストール済みパッケージの詳細情報を出力
#pre(soft){{
$ rpm -qi '''name'''[.version.arch]
}}
- インストール済みパッケージに含まれるファイルを出力
#pre(soft){{
$ rpm -ql '''name'''[.version.arch]
}}
- パッケージ ファイルの詳細情報を出力
#pre(soft){{
$ rpm -qif '''name.version.arch'''.rpm
}}
- パッケージ ファイルの詳細情報を出力
#pre(soft){{
$ rpm -qlf '''name.version.arch'''.rpm
}}
- どのパッケージに含まれるファイルか調べる
#pre(soft){{
$ rpm -qf /bin/cp
coreutils-5.2.1-31.6
}}
- インストール済みパッケージを全て出力
#pre(soft){{
# $ rpm -qa
# kon2-fonts-0.3.9b-7
# filesystem-2.1.6-2
# bzip2-libs-1.0.1-4
# db2-2.4.14-9
# eject-2.0.9-2
# hdparm-4.1-2
}}

|オプション|意味|説明|h
|-q|quary|パッケージに関する情報を問い合わせる|
|-a|all|すべて出力|
|-i|infomation|詳細情報を出力|
|-l|list|ファイルの一覧を出力|
|-f|file|ファイルを指定|
|--whatrequires||依存されているパッケージを出力|
** 削除 [#r56d7da1]

#pre(soft){{
# rpm -e '''package-name'''.rpm
}}


|オプション|意味|説明|h
|-e|Erace|アンインストール|
|-nodeps|NO DEPendencieS|依存関係を無視|

** パッケージからの取り出し [#n6ba1170]

- CPIO 形式に変換した上で、解凍する
#pre(soft){{
# # mkdir tmp
# # cd tmp
# # rpm2cpio ../foo.bar.rpm | cpio -id
}}


* yum [Yellow dog Updater, Modified] [#k1240105]

- rpm ファイルのダウンロード、インストール、依存性管理などを行うツール
- Red Hat Enterprise Linux 5 以降に採用された
- Red Hat Enterprise Linux 4 までは up2date が使われた
#pre(soft){{
# yum ['''option'''] '''command''' ['''package''']
}}
-- '''option'''
|オプション|説明|h
|--showduplicates|重複したバージョンを出力 (list, search)|
-- '''command'''
|コマンド|説明|h
|check-update|アップデート可能なパッケージの一覧を表示|
|update|アップデート可能なパッケージをアップデート|
|update '''package'''|指定したパッケージをアップデート|
|info|利用可能なパッケージの情報を表示|
|info '''package'''|指定したパッケージの情報を表示|
|list|利用可能なパッケージの一覧を表示|
|list installed|インストール済みのパッケージ一覧を表示|
|install '''package'''|指定したパッケージをインストール|
|remove '''package'''|指定したパッケージをアンインストール|
-- '''package'''
--- kernel
--- kernel-2.6.32-279.11.1.el6.x86_64
** 検索 [#j21b71bf]

#pre(soft){{
# [root@host ~]# yum search httpd
# Loaded plugins: fastestmirror
# Loading mirror speeds from cached hostfile
#  * base: ftp.riken.jp
#  * extras: ftp.riken.jp
#  * updates: ftp.riken.jp
# ================================ Matched: httpd ================================
# mod_ssl.x86_64 : Apache HTTP Server 用 SSL/TLS モジュール
# system-config-httpd.noarch : Apache 設定ツール
# centos-ds.x86_64 : CentOS Directory, Administration, and Console Suite
# httpd.x86_64 : Apache HTTP Server
# httpd-devel.i386 : Apache HTTP サーバー用の開発ツール。
# httpd-devel.x86_64 : Apache HTTP サーバー用の開発ツール。
# httpd-manual.x86_64 : Apache HTTP サーバーのドキュメント。
# mod_dav_svn.x86_64 : Subversion サーバー用の Apache サーバーモジュール。
}}

** 情報 [#y380ce6b]

#pre(soft){{
# [root@host ~]# yum info httpd
# Loaded plugins: fastestmirror
# Loading mirror speeds from cached hostfile
#  * base: ftp.riken.jp
#  * extras: ftp.riken.jp
#  * updates: ftp.riken.jp
# Installed Packages
# Name       : httpd
# Arch       : x86_64
# Version    : 2.2.3
# Release    : 53.el5.centos.3
# Size       : 3.3 M
# Repo       : installed
# Summary    : Apache HTTP Server
# URL        : http://httpd.apache.org/
# License    : Apache Software License
# Description: The Apache HTTP Server is a powerful, efficient, and extensible
#            : web server.
}}

** 情報 (パッケージの中身) [#cf3310c2]

- yum-utils のインストールが必要
#pre(soft){{
# # yum install yum-utils
# # repoquery --list '''pkg-name'''
}}

** ダウンロード・インストール [#yb7907c1]

#pre(soft){{
# yum install
}}

** アップデート [#m3c13ea0]



+ アップデート対象の確認
#pre(soft){{
# [root@host ~]# yum check-update
# Loaded plugins: fastestmirror
# Loading mirror speeds from cached hostfile
#  * base: ftp.riken.jp
#  * extras: ftp.riken.jp
#  * updates: ftp.riken.jp
# 
# autofs.x86_64                        1:5.0.1-0.rc2.156.el5_7.4           updates
# bind-libs.x86_64                     30:9.3.6-16.P1.el5_7.1              updates
# bind-utils.x86_64                    30:9.3.6-16.P1.el5_7.1              updates
# '''snip'''
}}
+ アップデートの実施
#pre(soft){{
# [root@host ~]# yum update
# Loaded plugins: fastestmirror
# Loading mirror speeds from cached hostfile
#  * base: ftp.riken.jp
#  * extras: ftp.riken.jp
#  * updates: ftp.riken.jp
# Setting up Update Process
# Resolving Dependencies
# --> Running transaction check
# ---> Package autofs.x86_64 1:5.0.1-0.rc2.156.el5_7.4 set to be updated
# ---> Package bind-libs.x86_64 30:9.3.6-16.P1.el5_7.1 set to be updated
# ---> Package bind-utils.x86_64 30:9.3.6-16.P1.el5_7.1 set to be updated
# '''snip'''
#   sos.noarch 0:1.7-9.54.el5_7.1
#   tzdata.x86_64 0:2011l-4.el5
#   udev.x86_64 0:095-14.27.el5_7.1
# 
# Complete!
}}


** 削除 [#lb7071a7]

#pre(soft){{
# yum remove
}}


** RHSCL [Red Hat Software Collections] [#yf07bd69]

- Red Hat の標準リポジトリは 10 年間のセキュリティ アップデートが保証される代わり、バージョンアップへの追従が出来ない
- そのため、標準リポジトリとは別に新バージョンのリポジトリが用意される
- Red Hat が提供するため、信頼性が高い
- RHSCL 自体にバージョンがあり、それぞれで提供されるパッケージのバージョンが異なる
- 標準リポジトリのバージョンと共存が可能で、切り替えて使用することができる
- 3 年間のセキュリティ アップデートが保証される
- RHEL6 以降で利用可能
- subscription-manager でリポジトリを登録する

*** 有効化 [#s1697796]

#pre(soft){{
# scl enable '''name'''
}}
-- /opt/rh/'''name'''/enable が実行される

** AppStream [#ua39c7cb]
- RHEL8 で導入された仕組み
- 2 年〜 5 年のライフサイクルで新しいバージョンが「ストリーム」という単位で提供される
- 10 年のサポートは受けられない


** SCL [Software Collections] [#yb1b082f]

- RHSCL の CentOS 版
- CentOS Project が提供する
- centos-release-scl をインストールすると yum のリポジトリに追加される


** EPEL [Extra Packages for Enterprise Linux] [#tef307b6]

- Red Hat Enterprise Linux で Fedora のパッケージを使うための拡張リポジトリ
- サポートがなくても最新バージョンを使いたい場合などに利用する
- Fedora Project が提供するため、野良 rpm より信頼性が高い
- CentOS など RHEL 互換ディストリビューションでも使用できる
- Fedora のサイトから入手した epel-release-'''ver'''.noarch.rpm をインストールすると yum のリポジトリに追加される
** RPMforge [#t6c2b5fc]

- Red Hat や CentOS とは異なる組織が提供する RPM リポジトリのひとつ
- http://repoforge.org/
- オリジナル パッケージが RPMforge でアップデートされることを防ぐため、下記のいずれかを行う
++ RPMforge を無効にしておき、利用したいた時に明示的に指定する
++ yum-plugin-priorities をインストールし、オリジナル リポジトリの優先度を上げる


+ http://pkgs.repoforge.org/rpmforge-release/ から対応する rpm をダウンロードする
+ インストール
#pre(soft){{
# [root@host ~]# rpm -ivh rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm↵
}}
+ 無効化
#pre(soft){{
# [root@host ~]# vi /etc/yum.repos.d/rpmforge.repo↵
}}
+ 利用
#pre(soft){{
# [root@host ~]# yum --enablerepo=rpmforge install '''package'''↵
}}

** Remi [#sf306594]

- Remi Collect 氏が提供する RPM リポジトリ
- EPEL のインストールが必要

* dnf [Dandified Yum] [#bccd1cc4]

- rpm ファイルのダウンロード、インストール、依存性管理などを行うツール
- yum 3.4 のフォークで後継ツール
- Fedora 22、CentOS 8 で標準のパッケージ管理ツールに採用された (yum コマンドは dnf のラッパーとして存在する)


** EPEL [#k827f663]

#pre(soft){{
# [root@host ~]# dnf install epel-release↵
}}


#br
#adsense(728x90)
#br

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS