惨事
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での作業は、ほんっとに気をつけないと、だめですね。