FreeBSD(98) 4.3Rアップグレード


FreeBSD(98) 4.3Rについて

  • FreeBSD(98) 4.3Rは、2001年5月にリリースされたちょっと古いVerです。(2003年3月時点)
  • 実は、FreeBSD(98)の最新版の4.7Rにしたかったのですが、インストール途中でファイルのコピーを始めようとした辺りでpanicが発生してしまい、あきらめた経緯があります。ここでは、FreeBSD(98) 4.2Rから4.3Rにアップグレードする手順を紹介します。


事前準備と補足説明

  • 「/usr/src」が存在していると、ファイルシステムのチェックの段階で、「/usr/srcが既に存在している。/usr/srcには何も書きこみません。」とのメッセージが表示されます。事前に、「/usr/src」ディレクトリを削除するなり、リネームしてからインストールする事が望ましいです。今回は、リネームします。(後で使う必要性は無い様な気もしますが、念のため)
    # mv /usr/src /usr/src.old
    
  • 「/etc」の設定ファイルは基本的に古いファイルがそのままリストアされるので、基本的な設定等は変更する必要はありませんでした。また、手動で/etcファイルをアップグレードする際に参照するために、新しい/etcファイルが/etc/upgredeに入っています。
  • 古いカーネルが「/kernel.prev」に保存されるので、いざと言う場合はこれで起動できます。


FreeBSD(98) 4.3Rのインストール(4.2Rからのアップグレード)

  • FreeBSD PRESS No.5(毎日コミュニケーションズ2001年7月)の付録CD-ROMを使ってインストールしました。
  • まず、以下のブートフロッピー2枚を用意します。このブートフロッピーは、「floppy98」ディレクトリにある同名のファイルを「tools/dostools」ディレクトリにある「rawrite.exe」と言うMS-DOSのツールを使って作成します。
    ・kern144.flp
    ・mfsroot.flp
  • ブートフロッピー2枚を使ってインストーラを起動します。最初に「kern144.flp」をFDドライブに入れて起動します。しばらくすると、MFSroootフロッピーを挿入してくれとのメッセージが表示されるので、「mfsroot.flp」のフロッピーを挿入します。読みこみが終わると、「Kernel Configuration Menu」が表示されます。「Start kernel configuration in full-screen visual mode」を選択します。
  • デバイスドライバーの削除/変更画面が表示されます。「Storage」で、以下を削除します。
    ・ADaptec SCSI and Compatible sound cards
    ・PC-9801-55 SCSI Interface
    また、「Network」で以下を変更、削除します。LANカード(ELECOM LANEED LD-98PT)に関する「ed4」設定については、下記MLのスレッドを参照して下さい。
    ・ed4で、IRQを「5」−>「10」に変更します。
    ・ed4以外を全て削除します。
  • 「JapaneseMessageCheck」が表示されるので、「Yes」を選択します。
  • 「sysinstall メインメニュー」では、「アップグレード:既存のシステムをアップグレードする」を選択します。
  • 「アップグレード」に関する注意事項が表示されるので、「Yes」をクリックします。配布ファイルコンポーネントの指定メッセージが表示されるので、「OK」を選択します。
  • 配布ファイルの選択画面になります。ここでは、「6 カーネル開発:全バイナリ、文書、カーネルのみのソース」を選択しました。Xは、後で別にインストールします。
  • portsコレクションのインストールの選択 −>「No」を選択します。(どうせ古いので)
  • 再び配布ファイルの選択画面に戻るので、「X Exit」を選択します。
  • ディスクラベルエディタに移動しますのメッセージが表示されるので、「OK」をクリックします。ディスクラベルエディタが起動され、以下の様に表示されます。
      区画  マウント位置  容量 Newfs
     wd0s1            1800MB DOS
     wd0s2             213MB DOS
     da0s1            6600MB DOS
     da0s2            2000MB DOS
     da1s1a           4308MB *
     da1s1b  swap            128MB SWAP
    
  • 今回のアップグレード対象のFreeBSD(98)4.2がインストールされている「da1s1a」を選択し、「M=マウント位置」を「/」(ルート)に設定します。「Q=終了」でディスクラベルエディタを終了します。
      区画  マウント位置  容量 Newfs
     wd0s1            1800MB DOS
     wd0s2             213MB DOS
     da0s1            6600MB DOS
     da0s2            2000MB DOS
     da1s1a  /              4308MB UFS N
     da1s1b  swap            128MB SWAP
    
  • ファイルシステムの一貫性チェックが開始されます。
  • 「/etcの内容をどこに保存するか?」とのメッセージが表示されるので、デフォルトの「/usr/tmp/etc」のまま「OK」をクリックします。保存が行われます。またカーネルの書き換えが行われ、古いカーネルが「/kernel.prev」に入っている旨表示されるので、「OK」を選択します。
  • インストールメディアの選択 −>「CDROM」を選択します。
  • CDROMの選択 −>「SCSI接続のCDROM」を選択します。
  • この後、インストールが実行されます。「アップグレードは完了しました。全ての古い/etcファイルがリストアされました。手動で/etcファイルをアップグレードする際に参照するために、新しい/etcファイルは/etc/upgredeに入っています。」のメッセージが表示されます。「OK」を選択します。
  • 「sysinstall メインメニュー」で、「X導入終了」を選択します。「システムをリブートします。」の確認メッセージがでますので、「Yes」を選択します。
  • 再起動後に、システム情報を表示して「FreeBSD(98) 4.3-RELEASE」となっている事を確認します。


XFree86(Version 4.1.0)のインストール

  • 一旦、XFree86 4.2.1をインストールしたのですが、やり方に根本的な問題があり、XFree86-4.1.0をインストールする事にしました。以下にその手順を示します。

  • FreeBSD PRESS NO.10のCD-ROMを使ってXFree86-4.1.0をインストールしました。ただし、pkg_add時に、以下の様なメッセージが出ており、必要なものがインストールできていなかった様です。これは、この前に「pkg_delete」でXFree86-4.2.0_1,1と関連pkgを同様に削除したのですが、残骸が残っていたための様です。
    # cd /mnt/cdrom/
    # cd /mnt/cdrom/4.5-RELEASE-p2+/packages/All
    # pkg_add XFree86-4.1.0_13,1.tgz
    tar: Could not unlink lib/X11/app-defaults : Operation not permitted
    tar: Could not create symlink to ../../../.././etc/X11/app-defaults : File exists
    ...(途中略)
    

  • そこで、まずpkg_deleteで削除した後、上記のメッセージにあるXの関連するディレクトリをリネームしました。(削除でもいいかも知れませんが)
    # pkg_delete XFree86-4.1.0_13,1
    # mv /usr/X11R6/lib/X11 /usr/X11R6/lib/X11.old
    # mv /etc/X11 /etc/X11.old
    

  • その後、FreeBSD PRESS NO.10のCD-ROMからXFree86-4.1.0を再インストールしました。
    # mount /mnt/cdrom
    # cd /mnt/cdrom/
    # cd /mnt/cdrom/4.5-RELEASE-p2+/packages/All
    # pkg_add XFree86-4.1.0_13,1.tgz
    (今回はエラーメッセージも無く無事完了しました)
    

  • ここまでの結果、「Couldn't load XKB keymap, falling back to pre-XKB keymap」のエラーは出なくなり、SHIFTキーがうまく効く様になりました。しかし、startxでは、以下のメッセージが出力されました。

    Could not init font path element /usr/X11R6/lib/X11/fonts/Speedo/, removing from list!(注1)
    Could not init font path element /usr/X11R6/lib/X11/fonts/Type1/, removing from list!(注1)
    Warning: Cannot load app-defaults file.(注2)
      Kinput2 may not work properly without it.
      Maybe kinput2 is not installed correctly,
      or your file search path (specified by
      environment variable 'XFILESEARCHPATH')
      is wrong.
    kterm:  unable to open font "", trying "fixed"....(注3)
    Warning: can't open file /usr/X11R6/lib/X11/ccdef/ccdef.kinput2.egg(注2)
    

  • 上記の(注1)部分は、「/etc/X11/XF86Config」の該当パスの記述をコメントにしました。(注2)と(注3)の部分は、「/usr/X11R6/lib/X11/app-defaults」にあるべきKinput2とkterm用のファイルがXの再インストールで無くなってしまったための様です。それぞれkinput2とktermを一旦削除後、再インストールする事で解決しました。

  • 設定ファイル「/etc/XF86Config」は、今までのVersion 3.3.6とは異なり、そのままではXが起動できません。そこで、以下のコマンドを実行する事により、雛型の「XF86Config.new」を作成し、「/etc/XF86Config」にコピーします。そこに、一部追加変更をします。
    # XFree86 -configure
    

    雛型として生成された「XF86Config.new」は、こちらです
    「/etc/XF86Config」の完成版は、こちらです



トップへもどる


Copyright (c) 2003 Hiroshi Nakamura. All rights reserved.