#navi(../)

* yumコマンドを使ってrpmパッケージのダウンロードだけする・yum install --downloadonly [#ze2f18b6]

CentOSでパッケージ化されたソフトウェアをインストールするのには、''yum''コマンドを利用します。~
''yum''コマンドは指定したパッケージのrpmファイルや、そのrpmが必要としているために同時にインストールされる依存パッケージまで、~
すべてネットワーク経由でダウンロードし、自動的にインストールしてくれます。

''yum''を使ってあるパッケージの動作に必要なrpmファイルを全て入手したい、という場合があります。~
''yum''にパッケージの依存性をすべて解析させ、必要だと判ったrpmファイルを(インターネットに接続できない)別のマシンに持っていて、~
そこでインストールする場合などです。

しかし、''yum''はダウンロードしたパッケージのrpmファイルをインストール後は削除してしまいます。~
また、''yum''を実行したマシンには実際にはインストールしたくないという場合もあります。

#contents
#htmlinsertpcsp(linux_ads_top.html,linux-sp.html)

*関連資料 [#xea7799a]
-[[rpmパッケージが動作するために必要な依存するrpmパッケージを確認する・yum deplist>CentOS/あるrpmパッケージが動作するために必要な依存するrpmパッケージを確認する・yum deplist]]
-[[yumのプロキシ設定>Linux環境設定/yumのプロキシ設定]]
-[[yumグループインストール・アンインストール方法>Linux環境設定/yumグループインストール・アンインストール方法]]
-[[yumコマンドでパッケージ情報を確認する方法>Linux環境設定/yumコマンドでパッケージ情報を確認する方法]]
-[[yumコマンドでdisable中のリポリトリを対象にする方法>CentOS/yumコマンドでdisable中のリポリトリを対象にする方法]]
-[[yumでアップデートした履歴を確認したい>CentOS/yumでアップデートした履歴を確認したい]]
-[[yumでアップデート対象となっているパッケージ一覧を表示する>CentOS/yumでアップデート対象となっているパッケージ一覧を表示する]]
-[[yumコマンドでアップデートがあるか確認する方法>CentOS/yumコマンドでアップデートがあるか確認する方法]]

* ''yum-plugin-downloadonly''プラグインのインストール [#u2bb64dd]

''yum''のプラグインである''yum-plugin-downloadonly''を使えば、~
実際にパッケージのインストールは行わずにrpmファイルをダウンロードだけすることができます。

まず、以下のように、''yum-plugin-downloadonly''をインストールします。
 # yum install yum-plugin-downloadonly

* yum-plugin-downloadonlyプラグインの使い方 [#ze97529b]

yum-plugin-downloadonlyプラグインのインストール後、以下のように''yum install''に、''--downloadonly''オプションを追加します。~
同時に追加している''--downloaddir=''オプションは、ダウンロードしたrpmファイルをどこのディレクトリに置くかを指定します。

* yum-plugin-downloadonlyプラグインの実行例 [#zc1be41a]
以下に--downloadonly --downloaddirの2つのオプションを使用してyum-plugin-downloadonlyプラグインを使ってみた出力です。~
ダウンロードするパッケージはhttpdを指定しています。~
同時に関連パッケージもダウンロードされます。

 [root@centos6 ~]# yum install --downloadonly --downloaddir=/tmp/rpms httpd
 Loaded plugins: downloadonly, fastestmirror
 Loading mirror speeds from cached hostfile
  * base: www.ftp.ne.jp
  * extras: www.ftp.ne.jp
  * updates: ftp.iij.ad.jp
 Setting up Install Process
 Resolving Dependencies
 --> Running transaction check
 ---> Package httpd.x86_64 0:2.2.15-28.el6.centos will be installed
 --> Processing Dependency: httpd-tools = 2.2.15-28.el6.centos for package: httpd-2.2.15-28.el6.centos.x86_64
 --> Processing Dependency: apr-util-ldap for package: httpd-2.2.15-28.el6.centos.x86_64
 --> Processing Dependency: /etc/mime.types for package: httpd-2.2.15-28.el6.centos.x86_64
 --> Processing Dependency: libaprutil-1.so.0()(64bit) for package: httpd-2.2.15-28.el6.centos.x86_64
 --> Processing Dependency: libapr-1.so.0()(64bit) for package: httpd-2.2.15-28.el6.centos.x86_64
 --> Running transaction check
 ---> Package apr.x86_64 0:1.3.9-5.el6_2 will be installed
 ---> Package apr-util.x86_64 0:1.3.9-3.el6_0.1 will be installed
 ---> Package apr-util-ldap.x86_64 0:1.3.9-3.el6_0.1 will be installed
 ---> Package httpd-tools.x86_64 0:2.2.15-28.el6.centos will be installed
 ---> Package mailcap.noarch 0:2.1.31-2.el6 will be installed
 --> Finished Dependency Resolution
 
 Dependencies Resolved
 
 ===========================================================================================================================
  Package                       Arch                   Version                                Repository               Size
 ===========================================================================================================================
 Installing:
  httpd                         x86_64                 2.2.15-28.el6.centos                   updates                 821 k
 Installing for dependencies:
  apr                           x86_64                 1.3.9-5.el6_2                          base                    123 k
  apr-util                      x86_64                 1.3.9-3.el6_0.1                        base                     87 k
  apr-util-ldap                 x86_64                 1.3.9-3.el6_0.1                        base                     15 k
  httpd-tools                   x86_64                 2.2.15-28.el6.centos                   updates                  73 k
  mailcap                       noarch                 2.1.31-2.el6                           base                     27 k
 
 Transaction Summary
 ===========================================================================================================================
 Install       6 Package(s)
 
 Total download size: 1.1 M
 Installed size: 3.6 M
 Is this ok [y/N]: y
 Downloading Packages:
 (1/6): apr-1.3.9-5.el6_2.x86_64.rpm                                                                 | 123 kB     00:00
 (2/6): apr-util-1.3.9-3.el6_0.1.x86_64.rpm                                                          |  87 kB     00:00
 (3/6): apr-util-ldap-1.3.9-3.el6_0.1.x86_64.rpm                                                     |  15 kB     00:00
 (4/6): httpd-2.2.15-28.el6.centos.x86_64.rpm                                                        | 821 kB     00:03
 (5/6): httpd-tools-2.2.15-28.el6.centos.x86_64.rpm                                                  |  73 kB     00:00
 (6/6): mailcap-2.1.31-2.el6.noarch.rpm                                                              |  27 kB     00:00
 ---------------------------------------------------------------------------------------------------------------------------
 Total                                                                                       18 kB/s | 1.1 MB     01:03
 
 
 exiting because --downloadonly specified
 [root@centos6 ~]#

* ダウンロード指定したrpmパッケージを確認してみる [#n1debce1]

''--donwloaddir''で指定した''/tmp/rpms''の下にダウンロードされています。

 [root@centos6 ~]# ls /tmp/rpms
 apr-1.3.9-5.el6_2.x86_64.rpm         apr-util-ldap-1.3.9-3.el6_0.1.x86_64.rpm  httpd-tools-2.2.15-28.el6.centos.x86_64.rpm
 apr-util-1.3.9-3.el6_0.1.x86_64.rpm  httpd-2.2.15-28.el6.centos.x86_64.rpm     mailcap-2.1.31-2.el6.noarch.rpm
 [root@centos6 ~]#

''--donwloaddir''を指定しない場合、''/var/cache/yum''の下のダウンロードされますが、''yum''コマンドの都合で複数のディレクトリにファイルが置かれるので、必ず''--downloaddir''は使用すべきです。

 [root@centos6 ~]# find  /var/cache/yum -name \*.rpm
 /var/cache/yum/x86_64/6/updates/packages/httpd-2.2.15-28.el6.centos.x86_64.rpm
 /var/cache/yum/x86_64/6/updates/packages/httpd-tools-2.2.15-28.el6.centos.x86_64.rpm
 /var/cache/yum/x86_64/6/base/packages/apr-util-1.3.9-3.el6_0.1.x86_64.rpm
 /var/cache/yum/x86_64/6/base/packages/apr-util-ldap-1.3.9-3.el6_0.1.x86_64.rpm
 /var/cache/yum/x86_64/6/base/packages/mailcap-2.1.31-2.el6.noarch.rpm
 /var/cache/yum/x86_64/6/base/packages/apr-1.3.9-5.el6_2.x86_64.rpm
 [root@centos6 ~]#

&color(red){''注意''};&br;
なお、既にインストールしてしまったパッケージを''yum install --downloadonly''することはできません。~
以下はインストール済みのパッケージを指定して実行したときの出力です。~
既にインストール済みと出力されダウンロードされていない事が確認できます。

 [root@centos6 ~]# yum install --downloadonly bash
 Loaded plugins: downloadonly, fastestmirror
 Loading mirror speeds from cached hostfile
  * base: www.ftp.ne.jp
  * extras: www.ftp.ne.jp
  * updates: ftp.iij.ad.jp
 Setting up Install Process
 Package bash-4.1.2-14.el6.x86_64 already installed and latest version
 Nothing to do
 [root@centos6 ~]#

以上、''yum''を使ってrpmパッケージのダウンロードだけする方法についてでした。

#htmlinsertpcsp(linux_ads_btm.html,linux-sp.html)

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