Fedora Core 6 インストール



前書き (執筆:2007/05/11)

ディストリビューションのバージョンアップを行う場合、2通りあります。

  1. 新規インストールを行う
  2. Upgradeを使って既存バージョンのアップを行う

そこで、今回はあえて 2番目 のUpgradeによるバージョンアップを実行してみました。
Upgradeによるバージョンアップはいろいろなリスクが伴い、場合によっては起動不可に陥る可能性など危険が伴います。
可能であるなら、新規にインストールし直す方が望ましいです。
もしUpgradeによる方法を考えている方は、もう一度考えてみてください。

どうしても upgrade を実施する場合は、事前に関連記事を掲載しているサイトをチェックし、対処方法などをすぐ調べられるように下準備をしておくとスムーズに進みます。

FedoraCore4からアップグレード

さて、実際にアップグレードを実施する前に、必要なデータ(ファイル)類はバックアップを取ることをお勧めします。
具体的には・・・

  • /home 配下のディレクトリ
  • /etc 配下の各種設定ファイル
  • /var 配下の各種ファイル
  • データーベースのデーターバックアップ
  • Webサーバー(apache等)のコンテンツデータ

etc
です。

一通り、バックアップを終え、作業に入る前に yum-utils がインストールされているか確認します。

# rpm -qa yum-utils

インストールされていない場合はインストールします。

# yum install yum-utils

次に yum のレポジトリ の内容を確認します。
バージョンやCPUアーキテクチャが変数指定ではなく直接指定されている場合がありますので、これを下記のように修正します。
修正するファイルと修正内容は下記を参考にしてください。

  • /etc/yum.repos.d/fedora-core.repo
  • /etc/yum.repos.d/fedora-updates.repo
  • /etc/yum.repos.d/fedora-extras.repo
fedora/core/4/i386/os/
  ↓
fedora/core/$releasever/$basearch/os/

あと、/etc/yum.conf にアップデートの対象外となる記述(exclude)を行っている場合は、コメントアウトしておきます。

次にアップデートに必要となる下記のファイル2つをアップデートかける。

fedora-release-6-4.noarch.rpm
fedora-release-notes-6-3.noarch.rpm
# rpm -Uhv \
ftp://ftp.riken.jp/Linux/fedora/core/6/i386/os/Fedora/RPMS/fedora-release-6-4.noarch.rpm \
ftp://ftp.riken.jp/Linux/fedora/core/6/i386/os/Fedora/RPMS/fedora-release-notes-6-3.noarch.rpm

インストールされているkernel関係を調べる

# rpm -qa | grep kernel

私の環境では 2.6.15 、 2.6.16 、 2.6.17 (現在使用カーネル)があるので古いカーネルを削除する

# rpm -e kernel-2.6.15-1.1833_FC4
# rpm -e kernel-smp-2.6.15-1.1833_FC4
# rpm -e kernel-devel-2.6.15-1.1833_FC4
# rpm -e kernel-smp-devel-2.6.15-1.1833_FC4
# rpm -e kernel-2.6.16-1.2069_FC4
# rpm -e kernel-smp-2.6.16-1.2069_FC4
# rpm -e kernel-devel-2.6.16-1.2069_FC4
# rpm -e kernel-smp-devel-2.6.16-1.2069_FC4

依存関係のエラーが出ると思うがとりあえずアップグレードを開始します。
表示されるメッセージを見逃さないように、テキストファイルに出力をかけると確認のときに便利です。
(かなりのファイル数をチェックするためかなり時間がかかる)

# yum -y upgrade >& yum_upgrade.txt & 

案の定、相応のエラーが吐き出されました。
私の環境では下記の依存関係に関するエラーが発生

Error: Missing Dependency: libpcap.so.0.8.3 is needed by package snort
Error: Missing Dependency: libttf.so.2 is needed by package bg5ps
Error: Missing Dependency: libcrypto.so.5 is needed by package ckermit
Error: Missing Dependency: libpcap.so.0.8.3 is needed by package snort
Error: Missing Dependency: libcrypto.so.5 is needed by package postfix
Error: Missing Dependency: libttf.so.2 is needed by package bg5ps
Error: Missing Dependency: libssl.so.5 is needed by package ckermit
Error: Missing Dependency: libcrypto.so.5 is needed by package clamav
Error: Missing Dependency: libssl.so.5 is needed by package clamav
Error: Missing Dependency: libssl.so.5 is needed by package postfix

libssl、libcryptなどはアップグレードでエラーが出るといろんなサイトで書いてあったので予想していたとおり、依存関係でやはりErrorが出たので、それらのパッケージを一回削除する

# yum remove snort bg5ps ckermit postfix clamav

再度アップグレードを実行

# yum -y upgrade >& yum_upgrade2.txt & 

無事にアップデート開始される。
(ここからが実際にファイルをダウンロードし、アップグレードが実行されるため、かなりの時間を要する)

下記のように設定ファイルなどが XXXXXXX.rpmsave や XXXXXXX.rpmnew という形で保存されるものがありますので、後で設定する場合は気をつけて適切な処置を行ってください。

 Updating  : setup                         [   2/1684]warning: /etc/passwd created as /etc/passwd.rpmnew
 Updating  : setup     ##################  [   2/1684]warning: /etc/services created as /etc/services.rpmnew
 Updating  : mailcap   ##############      [  11/1684]warning: /etc/mime.types saved as /etc/mime.types.rpmsave
 Updating  : yum       ################### [ 635/1684]warning: /etc/yum.conf created as /etc/yum.conf.rpmnew
 Updating  : mysql                         [ 636/1684]warning: /etc/my.cnf created as /etc/my.cnf.rpmnew

無事に成功するまで、根気強くエラー内容を読んで、解決策を見つけ出してください。
正直、ここまでの作業にかなり時間がかかることでしょう。
依存関係に関係しているものがほとんどだと思います。
自分の運営環境に応じて、対処方法が微妙に変わってくることがありますので、ここでは割愛します。
ご了承ください。
(逆に言えば、対処方法を調べて解決できないようであれば、新規インストールをお勧めします。)

upgrade が無事終了したなら、再起動します。
再起動時のメッセージをきちんとチェックしてください。
今まで動いていたサービスが動いていない場合がありますので、これもメッセージ内容から解決策を探し出してください。

無事に起動しログイン可能な状態になったら スーパーユーザーでログインし、下記のコマンドでカーネルをチェックしてみてください。

# uname -a

fc6のカーネルバージョンが表示されれば、OKです。
次に前述した warningメッセージのファイルについて 適切な修正を施します。
それが完了した時点で再度、再起動を行い、必要なサービスが正常に起動するか確認してください。

最後に、yum update を実行して、アップデートモジュールがないか確認して作業は終了です。

と、こうやって書くだけでは比較的簡単にできそうですが、大体半日以上時間と労力を費やします。
可能な限り新規にインストールをし直して、必要なサービスをバックアップデータをもとにインストールし直す方がリスクも少ないですし、早く作業が完了すると思います。
ぜひ、ご検討ください。



Last-modified: 2015-04-23 (木) 15:21:49 (969d)