Index: [Article Count Order] [Thread]

Date:  Tue, 9 Aug 2005 07:32:10 +0900
From:  Makoto ODA <oda (at mark) cobaltresq.com>
Subject:  [coba-o:01305] Re: /var/db/passwd.dbの復旧に関して
To:  coba-o (at mark) bluequartz.org
Message-Id:  <aa18e35725bf4bfa147040a3001a07b3 (at mark) cobaltresq.com>
In-Reply-To:  <20050808160641.8F18.COBALT (at mark) west21.net>
References:  <200405181125.i4IBPLAV004662 (at mark) smtp7.dti.ne.jp> <00d501c43da2$c30138d0$fea8a8c0 (at mark) yourw6165vadg7> <20050808160641.8F18.COBALT (at mark) west21.net>
X-Mail-Count: 01305

おだ@CobaltResQです。
admin/rootでのssh/telnetのログインは可能でしょうか。
もしそうならば、いくらか望みはあります。

それが不可能ならばかなり困難を極めることとなるでしょう。
admin/rootでログインできると仮定して話を進めます。

$ su -
# cat /var/db/
# strings passwd.db
oda:x:502:100:Makoto ODA:/home/.sites/28/site1/.users/63/oda:/bin/badsh
=502
# strings shadow.db
oda:$1$Q73Usgxd$hAa02Bbb.xxYyAK3AL444:12990:0:99999:7:-1:-1:0
#  strings group.db
site1:*:500:admin
=500
# strings gshadow.db
site1:*::admin
.site1

このような状態であれば、仮復旧はできますが、コバルトの CCEデーモン
と整合性がとれなくなるため結局は再インストールするほうがよいです。

具体的には、vipwを使ってpasswd.dbのダンプ=で始まっていないものは/etc/passwd
shadow.dbは/etc/shadowに書きます。
viを使ってgroup.dbは/etc/groupにgshadow.dbは/etc/gshadowに書式を合わせて書きます。

次に、/etc/nsswich.conf
passwd:     db files
shadow:     db files
group:      db files
を
passwd:     files db
shadow:     files db
group:      files db
に変更します

あくまで暫定的な復旧なので、データがとれ次第新しくインストールすることを
強くおすすめします。


On 2005/08/08, at 16:22, nishimura wrote:

> 皆様こんにちわ。
> 少し困った状況になりまして自分のスキルでは対応出来なくなって
> しまった為お知恵を頂ければと思い送らせてもらいました。
>
> 現在、BlueQuartz(BlueQuartz-5100R-20040412 )を利用して
> 自宅にてサーバー運用を行っているのですが、
>
> ・メール受信不能
> ・FTPアクセス不能
> ・CGI動作不能
>
> と言う状況となった為に、パスワードファイルを確認したところ
> 壊れていることが分かりました。
>
> 壊れている事の確認手法は、passwd.dbとshadow.dbを確認できる
> スクリプト(coba-dのMLにありましたdb.plと言うスクリプト)
> を利用して正常動作のサーバーと異常が起きてるサーバーにて
> 比較してみました。
>
> 結果として、passwdファイルの中身が確認できない状況となっており
> 破損しているものではないかと推測しました。
>
> 自宅用であった為にバックアップも行っていないために復元と言う
> 方法が取れないのですが手作業なりで、このdbを修正する方法は
> ないのでしょうか?
>
> 現在の状況としては
> /var/db/passwd.db
> /var/db/shadow.db この2つのファイルが同じ時間・同じ日付で
> 停止しており更新されていない状況です。
>
> 又、/varディレクトリの肥大化が影響と思いlog.000000000*のログ
> ファイルを削除してしまいました。
>
> ・/var/db/内の一部
> -rw-r--r--  1 root root 8.0K  7月 26 11:31 group.db
> -rw-------  1 root root 8.0K  7月 26 11:31 gshadow.db
> -rw-r--r--  1 root root  53K  8月  6 03:57 passwd.db
> -rw-------  1 root root  29K  8月  6 03:57 shadow.db
>
> 現在の障害により、各仮想サイトの/web配下のファイルも
> ユーザーIDが数字になってしまっている状況です。
>
> 出来れば再インストールせずに対処をしたいと思っております。
> 皆様のご意見をご教授頂ければ幸いです。
>
> 以上宜しくお願いします。
>
> nishimura
>