Zshをインストールし、ルートシェル/ bin/bashを/ usr/bin/zshに変更しました。その後、再起動してSudo suと入力しました。 「ヘルプを実行できません:そのようなファイルまたはディレクトリはありません」と表示されていました。そこで、Sudo bashと入力しました。しかし、「echo $ Shell」と入力すると、ルートシェルは「ヘルプ」と表示されました。どうすれば修正できますか?
エラーメッセージCannot execute help: No such file or directory
は、ルートのログインシェルが有効なシェルではなくhelp
に設定されていることを示します。
これを修正するには、正しいchsh
コマンドを発行します。
Sudo chsh -s /bin/bash root
または、ルートのログインレコードを/etc/passwd
で編集します。 このファイルはvipw
で編集する必要があります(決して決して直接):
Sudo vipw
ほとんどのLinuxシステムでは、vipw
を使用したときにエディターで開くファイルのルートのエントリは次のようになります。
root:x:0:0:root:/root:/bin/bash
最後の:
区切りフィールドがシステムのrootのログインシェルへの正しいパスであることを確認し、そうでない場合はエディターで変更する必要があります。次に、ファイルを保存して終了します。
Rootのログインシェルを変更することには絶対にnoの利点があることに注意してください。時間の長さ。
システムで実行する必要がある管理タスクは、Sudo
の後に実行する必要があるコマンドを使用して実行できます。
さらに、su
をSudo
とともに使用する必要はありません。これは質問の回答で説明されています Sudo suを実行する十分な理由はありますか?