3.11. トラブルシューティング

この節では、インストールの際の、これまで報告された共通の問題に対する解決のための情報が書いてあります。 また、FreeBSD と MS-DOS® または、Windows® のデュアルブートを行う際のいくつかの質問と回答も書いてあります。

3.11.1. なにかおかしいときには何をすればよいでしょうか

PC アーキテクチャの様々な制限により、100% 確実に原因を突き止めることは不可能ですが、 失敗した時にいくつかできることがあります。

インストールする FreeBSD のバージョンの ハードウェアノート を調べて、 使っているハードウェアに対応しているかどうかを確認してください。

もしハードウェアがサポートされているにもかかわらず、 動作しなかったり他の問題点がある時は、カスタムカーネル を構築する必要があります。GENERIC カーネルに含まれていないデバイスのサポートを追加することができます。 起動ディスクのカーネルでは、ほとんどのハードウェアデバイスの IRQ, IO アドレス、 DMA チャネルが工場出荷時の状態であると設定されています。 もしハードウェアの設定が変更されていると、 カーネルコンフィグレーションファイルを編集し、 再コンパイルを行なって、これらの値を FreeBSD に設定しなければなりません。

存在しないデバイスを認識してしまうことにより、 その後実際に存在するデバイスの認識を失敗してしまうことがあります。 このような場合は衝突しているドライバを無効にします。

注意: いくつかのインストール上の問題はさまざまなハードウェア装置の、 特にマザーボードのファームウェアのアップデートで回避または緩和することができます。 マザーボードのファームウェアは BIOS と呼ばれることもあり、 多くのマザーボードまたはコンピュータ製造メーカーはアップグレード情報を載せているウェブサイトを用意しています。

多くの製造メーカーは、 重要な更新のようなそれなりの理由がない限りマザーボードの BIOS のアップグレードは行わないよう強く推奨しています。 アップデートの過程で失敗するかもしれずBIOS チップに深刻なダメージを与える原因となり得るからです。

3.11.2. MS-DOS® および Windows® ファイルシステムの利用

現時点では、FreeBSD は、 Double Space™ アプリケーションで圧縮されたファイルシステムに対応していません。 そのため、FreeBSD がデータにアクセスする前に、 ファイルシステムを展開しておく必要があります。 展開するには、Start> Programs > System Tools メニューの Compression Agent を実行してください。

FreeBSD は、MS-DOS ファイルシステム (FAT ファイルシステムとも呼ばれます) に対応しています。 mount_msdosfs(8) コマンドは、 ファイルシステムの内容にアクセスできるように、 ファイルシステムを現存のディレクトリ構成にマウントします。 通常 mount_msdosfs(8) プログラムは、直接用いられることはありません。 システムから /etc/fstab 経由で利用されたり、 mount(8) ユーティリティから適切なパラメータとともに用いられます。

/etc/fstab の典型的な記述例は以下のようになります。

/dev/ad0sN  /dos  msdosfs rw  0	0

注意: この記述がうまくいくためには、/dos ディレクトリが存在している必要があります。 /etc/fstab のフォーマットの詳細については、 fstab(5) をご覧ください。

MS-DOS ファイルシステムをマウントする mount(8) の典型例は以下となります。

# mount -t msdosfs /dev/ad0s1 /mnt

この例では、MS-DOS ファイルシステムは、 プライマリのハードディスクの最初のパーティションに配置されています。 MS-DOS ファイルシステムの位置は、使用している環境によって変わりますので、 dmesgmount コマンドの出力を確認してください。 これらのコマンドを実行することによって、 パーティションレイアウトを把握するのに十分な情報を得ることが出来ます。

注意: FreeBSD が割り当てるディスクスライス (すなわち、MS-DOS パーティション) の番号は、 他のオペレーティングシステムのものとは異なることがあります。 特に拡張 MS-DOS パーティションには、プライマリの MS-DOS パーティションより大きなスライス番号が通常割り当てられます。 fdisk(8) ユーティリティは、どのスライスが FreeBSD に属し、 どのスライスが他のオペレーティングシステムに属するかを決めるのに役立ちます。

NTFS パーティションについても、同様に mount_ntfs(8) コマンドでマウントできます。

3.11.3. トラブルシューティングに関する Q & A

3.11.3.1. 起動時のハードウェア検出で、システムがハングアップします。 または、インストール中にシステムがおかしくなる。または、 フロッピードライブが検出されません。
3.11.3.2. FreeBSD をインストールした後の最初のハードウェアからの起動で、 カーネルが読み込まれ、ハードウェアを検出しましたが、 次のようなメッセージを表示して停止しました。
3.11.3.3. FreeBSD をインストールした後、ハードウェアから起動しましたが、 ブートマネージャは、いつもブートメニューで F? を表示し、それ以上起動が進みません。
3.11.3.4. システムが ed(4) ネットワークカードを検出しましたが、 デバイスのタイムアウトエラーが出ます。
3.11.3.5.

3.11.3.1. 起動時のハードウェア検出で、システムがハングアップします。 または、インストール中にシステムがおかしくなる。または、 フロッピードライブが検出されません。

i386, amd64 および ia64 プラットフォームにおいて、 FreeBSD はシステムの設定を手助けするシステム ACPI サービスを、 起動時に検出された場合に広く使います。 残念ながら、まだいくつかの不具合が、 ACPI ドライバとシステムのマザーボードおよび BIOS 両方に存在しています。 起動ステージ 3 において、ヒント情報 hint.acpi.0.disabled を以下のように設定すると ACPI を無効にできます。

set hint.acpi.0.disabled="1"

この設定はシステムが起動するたびにリセットされるので、 /boot/loader.conf ファイルに hint.acpi.0.disabled="1" を追加してください。 ブートローダのより詳しい情報については 項13.1 で説明します。

3.11.3.2. FreeBSD をインストールした後の最初のハードウェアからの起動で、 カーネルが読み込まれ、ハードウェアを検出しましたが、 次のようなメッセージを表示して停止しました。

changing root device to ad1s1a panic: cannot mount root

何が問題ですか? 何かできることはありますか?

ブートのヘルプで表示される、 bios_drive:interface(unit,partition)kernel_name は何を意味していますか?

起動ディスクがシステムの最初のディスクではない場合には、 長年の問題があります。BIOS は、FreeBSD とは異なる番号付けを用い、 どの番号がどの番号に対応するかを正しく見つけ出すことは簡単ではありません。

起動ディスクがシステムの 1 番目のディスクではない場合には、 FreeBSD がディスクを見つけることができるように設定する必要があります。 2 つの一般的な状況があります。どちらの場合でも、 ルートファイルシステムがどこにあるかを FreeBSD に指定する必要があります。 BIOS ディスク番号と、ディスクのタイプおよびそのディスクタイプに対する FreeBSD ディスク番号を設定することで指定できます。

最初の状況は、システムにそれぞれ IDE バスのマスタに接続された 2 つの IDE ディスクがあり、2 番目のディスクから FreeBSD を起動する場合です。 BIOS は、これらのデバイスをディスク 0 および ディスク 1 と認識し、 一方 FreeBSD は、ad0 および ad2 と認識します。

BIOS ディスク 1 に FreeBSD があり、 ディスクタイプが ad で、 FreeBSD ディスク番号が 2 の場合には、次のようになるでしょう。

1:ad(2,a)kernel

プライマリバスにスレーブが接続されている場合には、 上記は必要ありません (実際上、間違いです)。

2 番目の状況は、システムに 1 つまたはそれ以上の IDE ディスクがあるときに、SCSI ディスクから起動するような場合です。 このようなケースでは、FreeBSD ディスク番号は、 BIOS ディスク番号より小さな番号になります。 2 つの IDE ディスクと SCSI ディスクがある場合には、 SCSI ディスクは BIOS ディスク 2 であり、 ディスクタイプが da、FreeBSD ディスク番号が 0 となるので、 FreeBSD に BIOS ディスク 2 (システムの 1 番目の SCSI ディスク) から起動するように設定するには以下のようになります。

2:da(0,a)kernel

IDE ディスクが 1 つの場合には、 代わりに 1: を指定してください。

使用する適切な値が決まったら、 通常のテキストエディタを使って、コマンドを入力した通りに /boot.config ファイルに正確に記述してください。 他に指定がなければ、FreeBSD はこのファイルの内容を、 デフォルトの boot: プロンプトへのレスポンスとして使います。

3.11.3.3. FreeBSD をインストールした後、ハードウェアから起動しましたが、 ブートマネージャは、いつもブートメニューで F? を表示し、それ以上起動が進みません。

FreeBSD のインストール時に、 パーティションエディタで指定したハードウェアのディスクジオメトリが正しくありません。 パーティションエディタまで戻り、 ハードディスクの正しいジオメトリを指定してください。 正しいジオメトリの設定でもう一度最初から FreeBSD をインストールする必要があります。

使用しているコンピュータの正しいジオメトリがまったくわからない場合には、 以下のような tip があります。 ディスクの最初に小さな MS-DOS パーティションをインストールし、 その後 FreeBSD をインストールしてください。 インストールプログラムは MS-DOS パーティションを認識し、 このパーティションから正しいジオメトリを推測します。 通常はこれでうまくいきます。

次の tip は、もはや推奨されませんが、 参考のために残しておきます。

FreeBSD 専用のサーバやワークステーションとして設定し、 MS-DOS, Linux や他のオペレーティングシステムとの互換性を (将来的に) 考える必要がなければ、FreeBSD が (セクタの最初から最後まで) ディスクのすべてを用いる非標準のオプションを選択することで、 ディスク全体 (パーティションエディタで A) を使うこともできます。 この場合には、ジオメトリについて考える必要はなくなりますが、 FreeBSD 以外でディスクを利用することはできなくなります。

3.11.3.4. システムが ed(4) ネットワークカードを検出しましたが、 デバイスのタイムアウトエラーが出ます。

使用しているカードの IRQ が、 /boot/device.hints ファイルで指定された IRQ と異なる可能性があります。 ed(4) ドライバは、デフォルトでは “ソフトウェア” コンフィグレーション (MS-DOS の EZSETUP で入力された値) を用いません。 インターフェースのヒント情報に -1 を指定した場合には、 ソフトウェアコンフィグレーションが用いられます。

カードのジャンパを変更して、 ハードウェアコンフィグレーションの設定を行うか (必要があれば、カーネルの設定を変更してください)、 hint.ed.0.irq="-1" と指定して IRQ に -1 を設定してください (このように設定すると、 カーネルがソフトウェアコンフィグレーションを利用します)。

その他として、利用しているカードが IRQ 9 を使っている可能性があります。 この IRQ は IRQ 2 と共有され、しばしば問題を引き起こします (特に、IRQ 2 を使っている VGA カードを持っている場合には !)。 できるだけ IRQ 2 や 9 を避けるべきでしょう。

3.11.3.5.

X11 端末から sysinstall を使うと、 ライトグレーの背景にフォントが黄色で表示され、読みずらいです。 このアプリケーションのコントラストを高くすることはできますか?

すでに X11 をインストールしていて、 xterm(1)rxvt(1) 使用時における sysinstall のデフォルトのカラーが読みにくい場合には、XTerm*color7: #c0c0c0~/.Xdefaults に追加して、より暗いグレーの背景に変更してください。

本文書、および他の文書は ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/ からダウンロードできます。

FreeBSD に関する質問がある場合には、ドキュメント を読んだ上で <questions@FreeBSD.org> まで (英語で) 連絡してください。
本文書に関する質問については、<doc@FreeBSD.org> まで電子メールを (英語で) 送ってください。