rootのパスワードを削除(Xubuntu)
これまでターミナルでrootとして作業するのにsuコマンドを使っていたが、sudo -iを使った方が良いらしい。
元々Ubuntuでは安全対策として、rootパスワードの漏出を防ぐためrootのパスワードが設定されておらず、suは使えないようだ。
そういえば以前、sudoで何度もパスワードを入力するのが面倒で、sudo passwd rootでrootのパスワードを設定したような覚えがある。sudo -iというのを知らなかったし。
もう一度rootを使えなくするにはsudo passwd -l rootでrootをロックしてやれば良いようだが、初期状態に戻したかったのでrootのパスワードを削除することにした。
結論から言えばsudo passwd -d rootでrootのパスワードを削除出来た。
他にも/etc/shadow内のrootの箇所で、初めの:と:で挟まれた部分の文字列を削除する方法でも良いようだ。
シングルユーザーモード禁止状態でrootのパスワードを忘れたときは
実際、/etc/shadowを開きながらsudo passwd -d rootを実行すると、ターミナル内には「パスワード期限切れ情報を変更しました」と出るが、該当箇所の文字列が削除されていた。
ターミナルでsudo passwd -S rootとしてroot のパスワード情報を見ると、「NP」(パスワードが設定されていない)になっていた。
ーー
(追記)passwd -hでpasswdコマンドのヘルプを確認出来る。
またsudo -hでsudoのヘルプを見られるが、sudo -iとsudo -sの違い(「run login shell」と「run shell」の違い)がよく分からない。
検索してみると、大きな違いとしてsudo -iでは「ログインスクリプトが処理される」ということだが、やっぱりよく分からない。
Stray Penguin – Linux Memo (Sudo)