FreeBSD で kernel.old から起動する2014年07月06日 00時06分48秒

FreeBSD のローダが変わっているようだ。FreeBSD 10.0 RELEASE では、以前のように第一ローダで /boot/kernel.old としても起動しない。もしかしたら、それ以前から出来なくなっていたのかも知れないが。ブートマネージャと起動ステージによると、今では三段階の起動となっている。不鮮明な記憶でごだごだ言うのは止めにして本題に入ろう。

今のローダで、カーネルを切替えるのは第三のローダで。いわゆるデーモン君のロゴが出て、十秒のカウントダウンを行っている段階だ。「Escape to loader prompt」を選び、プロンプトに下りる。OK がプロンプトだ。この時点で、既に /boot/kernel を読み込んでいるので、一度解放し、任意のカーネルを読み直す。


OK unload
OK load /boot/kernel.old/kernel
OK boot
...

そして、最後に boot で起動開始。ハンドブックによると load kernel.old でも読み込めるみたいだ。

起動しないカーネルを作ってしまった場合の回避策の基本。設定した値が相応しくなかったり、CPU の対象を間違ってしまったり。良く起こる原因はこんなところ。後、make installkernel を新しいカーネルに二度実行しないことも大切。本来の kernel.old が二度目の installkernel で消えてしまう。

次回