14.5. ISO と Yum を使用してシステムをオフラインでアップグレード
インターネットまたは Red Hat Network から切断されたシステムの場合は、yum update コマンドを Red Hat Enterprise Linux インストール ISO イメージで使用すると、システムを最新のマイナーバージョンに簡単かつ迅速にアップグレードできます。以下の手順はアップグレードプロセスを示しています。
- ISO イメージをマウントするターゲットディレクトリーを作成します。このディレクトリーはマウント時に自動的に作成されないため、
rootで次の手順に進む前に作成します。mkdir mount_dir
mkdir mount_dirCopy to Clipboard Copied! Toggle word wrap Toggle overflow mount_dir をマウントディレクトリーへのパスに置き換えます。Typicaly は、/media/ディレクトリーにサブディレクトリーとして作成します。 - Red Hat Enterprise Linux 5 インストール ISO イメージを、以前に作成したターゲットディレクトリーにマウントします。
rootで以下のコマンドを実行します。mount -o loop iso_name mount_dir
mount -o loop iso_name mount_dirCopy to Clipboard Copied! Toggle word wrap Toggle overflow iso_name を ISO イメージへのパスに置き換え、mount_dir をターゲットディレクトリーへのパスに置き換えます。ブロックデバイスとしてファイルをマウントするには、-oloopオプションが必要です。 - マウントディレクトリーから、
.discinfoファイルの最初の行にある数値を確認します。head -n1 mount_dir/.discinfo
head -n1 mount_dir/.discinfoCopy to Clipboard Copied! Toggle word wrap Toggle overflow このコマンドの出力は ISO イメージの ID 番号で、以下の手順を実行するのに知っておく必要があります。 /etc/yum.repos.d/ディレクトリーに新しいファイル(例: new.repo )を作成し、以下の形式でコンテンツを追加します。正常に機能するために、このディレクトリーの設定ファイルの拡張子は .repo である必要があります。Copy to Clipboard Copied! Toggle word wrap Toggle overflow media_id を、mount_dir/.discinfoにある数値に置き換えます。repository_name の代わりにリポジトリー名を設定します。repository_url はマウントポイント内のリポジトリーディレクトリーへのパスに、gpg_key は GPG キーへのパスに置き換えます。たとえば、Red Hat Enterprise Linux 5 Server ISO のリポジトリー設定は以下のようになります。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 前の手順で作成した
/etc/yum.repos.d/new.repoを含むすべての yum リポジトリーを更新します。rootで以下のコマンドを実行します。yum update
yum updateCopy to Clipboard Copied! Toggle word wrap Toggle overflow これにより、システムはマウントされた ISO イメージで提供されたバージョンにアップグレードされます。 - アップグレードに成功したら、
root権限で ISO イメージをアンマウントできます。umount mount_dir
umount mount_dirCopy to Clipboard Copied! Toggle word wrap Toggle overflow ここで、mount_dir はマウントディレクトリーへのパスです。また、最初の手順で作成されたマウントディレクトリーを削除することもできます。rootで以下のコマンドを実行します。rmdir mount_dir
rmdir mount_dirCopy to Clipboard Copied! Toggle word wrap Toggle overflow - 以前に作成された設定ファイルを別のインストールまたは更新に使用しない場合は、その設定ファイルを削除できます。
rootで以下のコマンドを実行します。rm /etc/yum.repos.d/new.repo
rm /etc/yum.repos.d/new.repoCopy to Clipboard Copied! Toggle word wrap Toggle overflow
例14.1 Red Hat Enterprise Linux 5.8 から 5.9 へのアップグレード
インターネット接続にアクセスせずにシステムをアップグレードする必要があるとします。これを行うには、新しいバージョンのシステムで ISO イメージを使用します(例:
RHEL5.9-Server-20121129.0-x86_64-DVD1.iso )。ターゲットディレクトリー /media/rhel5/ を複製している。root で ISO イメージがあるディレクトリーに移動し、以下のコマンドを入力します。
mount -o loop RHEL5.9-Server-20121129.0-x86_64-DVD1.iso /media/rhel5/
~]# mount -o loop RHEL5.9-Server-20121129.0-x86_64-DVD1.iso /media/rhel5/
マウントされたイメージの ID 番号を確認するには、以下のコマンドを実行します。
head -n1 /media/rhel5/.discinfo
~]# head -n1 /media/rhel5/.discinfo
1354216429.587870
マウントポイントを yum リポジトリーとして設定するには、この番号が必要です。
/etc/yum.repos.d/rhel5.repo ファイルを作成し、以下のテキストを挿入します。
yum リポジトリーを更新します。これにより、システムが
RHEL5.9-Server-20121129.0-x86_64-DVD1.iso が提供するバージョンに効果的にアップグレードされます。root で以下のコマンドを実行します。
yum update
~]# yum update
システムが正常にアップグレードされたら、イメージをアンマウントし、ターゲットディレクトリーと設定ファイルを削除します。
umount /media/rhel5/
~]# umount /media/rhel5/
rmdir /media/rhel5/
~]# rmdir /media/rhel5/
rm /etc/yum.repos.d/rhel5.repo
~]# rm /etc/yum.repos.d/rhel5.repo