読者です 読者をやめる 読者になる 読者になる

カーネルを復旧

とりあえず、ARP Networks さんにゴメンネメールしながら色々 FAQ 読んだり IRC で訊いたりしていたら、というか IRC で「インストール CD が仮想 CD ドライブに刺さってるから、好きにやりなよ」という言葉をいただく。あ!そういうことか。なんだ、別に自宅にサーバがあるのと何ら変わらないじゃないか!!ということで、カーネルコンパイルに失敗した訳なので、カーネルを 4.6 の release に戻す。

起動

まず、 portal.arpnetworks.com の自分のサービス一覧から該当するものを選び、 Actions 項の中から Boot する。もし今ブートシーケンスで止まってる状態だったら Shudown (Hard) してしばらくしてから Boot する。この間も VNC を繋いでおくと様子が分かって安心。

VNC

Boot したらすぐに vncclient を上げる。すると、 Boot の種類変えるなら F12 キーを…くらいのメッセージが出てるあたりに間に合うので、

  • CD から起動
  • bsd.rd から起動

のどちらかを選ぶ。

インストール CD からカーネルをコピー

# mkdir /mnt/cd
# mkdir /mnt/hd
# mount /dev/cd0a /mnt/cd 
# mount /dev/hd0a /mnt/hd
# mv /mnt/hd/bsd /mnt/hd/bsd.build.by.myself
# cp /mnt/cd/amd64/bsd /mnt/hd
# reboot

これで。

setting tty flags

と思ったら、そう、今度は setting tty flags というメッセージの当たりで boot が止まってしまうので(これは KVM 上で OpenBSD を動かす場合のどメジャーな問題らしい)

http://scie.nti.st/2009/10/4/running-openbsd-4-5-in-kvm-on-ubuntu-linux-9-04

この記事にしたがって再度 boot まで戻って

boot> bsd -c
UKC> disable mpbios
UKC> quit

とする。これで普通に起動してくる。

ただしこの設定だとテンポラリで毎回やらないといけないので、 root でログインした後、カーネルファイルに設定を書き込む

# config -ef /bsd
ukc> disable mpbios
ukc> quit
Saving modified kernel.

これで OK。

再チャレンジしてみる!

というわけで、いつでもカーネルを戻せることが分かった!ので再チャレンジしてみる。「 stable を追いかける場合にブートしなくなったら、それは大抵ユーザのせいです」と思いっきり厳しいことがマニュアルに書いてあってさすがテオ様。そう、俺のせい。何かがどこかで間違ってしまったんだなあ。昨日のログはいくら見ても間違っている気がしないけど、もう一度同じ手順を踏んでみよう。今度は最初のソースを FTP じゃなくて CD から持ってこよう。やってみよう。

確認

あーこれ全然だめだ(笑)

$ file bsd
bsd: ELF 64-bit LSB executable, x86-64, version 1, statically linked, not stripped
$ file bsd.build.by.myself                                                     
bsd.build.by.myself: ELF 32-bit LSB executable, Intel 80386, version 1, statically linked, not stripped

ええーっ。ちゃんと amd64 で config したのになあ…ちぇ…。