root のパスワードを忘れてしまったら?



Last modified: Sun Aug 19 2001



Table of Contents





■ root のパスワードを忘れてしまったら?

root のパスワードを忘れてしまったらどうすればいいか?というよりも私がハマったのは、root のログインシェルを変更してしまい、 root でログイン出来なくなってしまったのですが、どちらの場合でも同じ手順で復旧作業を行うことになります。

まず、 Solaris の場合、 Linux と違い、シングルユーザーモードであっても root のパスワードを入力しなければログインできません (HP-UX では不要だそうです) 。というわけで、インストール用の CD-ROM から起動することになります。

まず、 CD-ROM からインストーラが起動したら適当なところまで進めて、「F5_Exit」 を押し、インストーラを中断します。すると、 "#" コマンドプロンプトが現れますので、 Solaris の /etc/passwd または /etc/shadow を編集するために /etc があるパ−テーションをマウントします。

# cd /
# mount /dev/dsk/c0d0s0/ /mnt
# vi /mnt/etc/passwd


このようにして編集作業を行います。もしもパスワードを忘れた場合は、 root の行のパスワードの箇所を削除し、パスワード無しの状態にし、再起動後に新しいパスワードを作ればいいでしょう。




■ root のログインシェルを変更するには?

root のログインシェルは、 /bin/sh になっています。これは admintool で変更することは出来ません。変更したいときは下記のコマンドを使用しましょう。

# passwd -e

例えば、 bash に変更したい場合はここで

/usr/bin/bash

と入力します。 tcsh なら

/usr/bin/tcsh

しかし、これらがインストールされていなければどうにもなりませんので事前に /usr/bin にこれらがインストールされているか確認しておいて下さい。もしも無ければ3枚目の CD-ROM からインストールしましょう。

ところでここで何故、 /bin/bash, /bin/tcsh ではないの?とお思いの方もいらっしゃるかと思いますが、これは /usr/bin にスタティックにリンクされているからです。




■ 起動できなくなったら?

何らかの理由で、正常に起動できず、ルートファイルシステムが Readonly でマウントされてしまったりした場合、シングルユーザーモードでもメンテナンスが行えません。このような場合はまず以下のコマンドを実行し、書込みが出来るか試してみます。

# mount -o rw,remount /

これでエラーメッセージが表示されなければメンテナンス作業が行えます。しかし、 /etc/vfstab の設定を、不用意に書き換えるなどしてしまった場合などは、インストール用 CD-ROM で起動するしかありません。

手順は、先ずインストーラを起動し、"F2_Continue" で適当なところまで進んで行き、"F5_Exit" が表示されたら F5 を押してインストールを終了させますと、プロンプトが表示されますので、ここで、

# cd /
# mount /dev/dsk/c0d0s0/ /mnt

とします。
あとは、例えば、 /etc/vfstab を書き換えた場合は、

# vi /mnt/etc/vfstab

として編集しましょう。




戻る
HOME


Linux 活用日記