FreeBSD 5.x-RELEASEでは標準でACPI(OSが中心となって電源管理をするシステム)が有効になっていますが、PCによっては正常に動作しないことがあります。
起動メニュー(デーモンくんの画面)で 1. Boot FreeBSD では起動している途中でフリーズしてしまうが、 2. Boot FreeBSD with ACPI disabledでは正常に起動する場合はACPIを明示的に無効にしましょう。
ACPIを無効にするには、rootで/boot/device.hintsを編集し、hint.acpi.0.disabled="1"を追加(既にあれば置き換え)します。
ちなみに0が有効、1が無効です。
> su
# vi /boot/device.hints
hint.acpi.0.disabled="1"
これでACPIが標準で無効になりました。
再起動して 1. Boot FreeBSD を選択すればACPIが無効の状態で起動するはずです。
また、2.の項目が 2. Boot FreeBSD with ACPI enabled に変更されます。
ただしACPIを無効にしたことにより、ACPIに依存する機能(shutdown -pで電源が自動で切れなくなる等)が使えなくなりますので注意してください。
上記作業でACPIを無効が無効になりましたが、同時に
> shutdown -p
で自動で電源が切れなくなりました。
手動で電源ボタンを押して電源を切ってやれば済むことですが、やはり不便です。
そこでACPIが普及する前に使われていたAPM(BIOSのみで電源管理するシステム)を有効にして、電源が自動で切れるように設定しましょう。
APMを有効にするには、まずACPIを無効にしたときと同様にrootで/boot/device.hintsを編集します。hint.apm.0.disabled="0"追加(既にあれば置き換え)しましょう。
> su
# vi /boot/device.hints
hint.apm.0.disabled="0"
次にkernel読み込み時にAPMをロードするように、/boot/loader.confにapm_load="YES"を記述してやる必要があります。
> su
# vi /boot/loader.conf
apm_load="YES"
なおapm_load="YES"を/boot/loader.confに記述する代わりに、kernelを再構築してAPMをロードさせる方法もあります。
その場合はkernelのコンフィグファイルに
device apm
を記述(GENERIC kernelではコメントアウトになっている)してkernel再構築してください。
これが終わったらOS側でAPMを有効にしてやります。
[ /stand/sysinstall ] -> [configure] -> [Startup] -> APMにチェック
あるいは、/etc/rc.confにapm_enable="YES"を記述してください。
> su
# vi /etc/rc.conf
apm_enable="YES"
これらが終わったらFreeBSDを再起動してください。
設定が問題なければ、再起動後にapmコマンドを打つと
> apm
APM version: 1.2
などと出てきます。
これでAPMが有効になりました。
> shutdown -p now
で自動で電源が落ちることを確認してください。