日レセの公式インストールマニュアルには
$sudo -i
#
sudoではなく、ルートになって実行しなければならない部分が結構あるが
sudoで実行しないで上記でわざわざ実行するのはルートの実行環境でコマンドを実行したいという事なのであるが
Ubuntuのコミュニティでは
推奨されない方法として書かれてある。要するに#を出力させるなという事であり、#で実行するなという事なのだ。それが正しいUbuntuの使い方という事だそうだ。
「Ubuntuにおいてデフォルトでrootアカウントのパスワードはロックされている」
これはUbuntuのセキュリティ上非常に重要な事らしい。Debianには存在しなかった機能である。
#passwd
なんてやってしまうとこのパスワードロックが無効化されてしまいシステムが危険な状況になるらしい。
su – root -c コマンド文字列
をコマンドスクリプト上でやりたいが為にパスワードロックを無効化してしまった。
rootアカウントのパスワードロックを有効化するには
$sudo usermod -p ‘!’ root
コマンドスクリト上でルートで実行したい場合は
sudo sh -c コマンド文字列
が正解のようだ。