惨事

Shuttleで、qemuディスクレスブートで利用しようとしていて、思わぬ大事件になってしまったので、メモ。qemuディスクレスブートについては、そのうちに。

DESTDIR=/nfsroot/i386として、TARGET_ARCH=i386で、make buildworld、make installworld、make ditrib-dirs、make distributionを実行。ホストがamd64なので、DESTDIRを間違えると、えらいことになるな〜、と思ったが、

# setenv DESTDIR /nfsroot/i386

としていたので、問題なく完了。だけど、トラブルはそんなところで待っていなかった。

ディスクレスブートの設定をしようとして、

# mkdir -p /nfsroot/i386/conf/base
# cd /nfsroot/i386/conf/base
# cp -R ../../etc ./

とすべきところを、な、なんと、

# cp -R ../../etc /

とやってしまった!!!

インストールした直後の真新しいetcファイルがホストの/etcを上書きしていきましたヨ。。。。orz

かるくパニックしました。

/etcで書き換えるものは、必ず.ORGと名前をつけて、元のファイルをバックアップする習慣があるのだが、書き換えていたのは、

crontab.ORG     fstab.ORG       inetd.conf.ORG  motd.ORG        sysctl.conf.ORG
devd.conf.ORG   group.ORG       make.conf.ORG   rc.conf.ORG     ttys.ORG

のファイルたち。あと、passwd、master.passwd。
rc.confはなかったので無事だったし、だいたい何を変更したか覚えているので、大丈夫なのだが、問題はpasswdとgroup。ユーザーはNISで管理しているのでいいのだが、portsが自動的に追加したものは、記憶しているはずもない。

あきらめて、再インストールも考えたが、おそらくportsの構成が似ているEeePCのpasswdファイルを見ると、portsから追加されたのは、

messagebus:*:556:556::0:0:D-BUS Daemon User:/nonexistent:/sbin/nologin
polkit:*:562:562::0:0:PolicyKit Daemon User:/nonexistent:/sbin/nologin
haldaemon:*:560:560::0:0:HAL Daemon User:/nonexistent:/sbin/nologin
avahi:*:558:558::0:0:Avahi Daemon User:/nonexistent:/sbin/nologin
cyrus:*:60:60::1227884400:0:the cyrus mail server:/nonexistent:/usr/sbin/nologin
mysql:*:88:88::0:0:MySQL Daemon:/nonexistent:/sbin/nologin
cups:*:193:193::0:0:CUPS Owner:/nonexistent:/usr/sbin/nologin
fetchmail:*:124:124::0:0:Fetchmail mail-retrieval daemon:/var/run/fetchmail:/usr/sbin/nologin

らしい。これですべてかどうか分からないのだが、とりあえず動いているようなので、7.1-RELEASEがでるまで、待とう。Shuttleは、ほとんど完璧な状態だったので、精神的なショックがでかいです。

suしようとしたら

su: who are you?

とかはじめて見ました。sshも、passwdファイルで見つからないと、get away!とか言ってきます。

rootでの作業は、ほんっとに気をつけないと、だめですね。