
私が経験している問題は一般的ではないと思います。私は書いた
chsh -s /bin/false root
これでログインできませんroot
。ログインする方法はありますかroot
?コマンドを試すと
chsh -s /bin/true root
私が得た答えは、おそらくシェルを変更しないということroot
でし/etc/passwd
たnano
。
それでは、ログインできるソリューションはありませんかroot
?
答え1
何かを作る:
ssh root@localhost /bin/bash
シェルプロンプトは表示されません。ただし、lsを入力してEnterを押すと、出力が表示されます。その後、このsedコマンドを使用してルートシェルをリセットできます。
/usr/bin/sed -i -e 's|^\(root.*:\)[^:]*$|\1/bin/bash|g' /etc/passwd
ディストリビューションによっては、sedコマンドは/ bin / sedの下にあります。
明らかにこれは必死の措置でした。
答え2
おそらく最も簡単な方法は、インストールメディアの回復モードで起動して/etc/passwd
回復することです。
答え3
sudo /bin/bash
仕事をしなければなりません。bash
スーパーユーザー権限で実行するため、編集/etc/passwd
や実行はchsh
問題になりません。
答え4
sudoがインストールされていない場合は、簡単にインストールでき、機能しますsudo /bin/bash
。すべてのLinuxディストリビューションではsudoを使用できます。
また、パスワードプロンプトが表示されたら、公開鍵認証を使用してからパスワードなしのsudoを有効にする必要があります。これを使って設定します。https://spinupwp.com/doc/passwordless-sudo/
この場合、SSH公開鍵認証を使用する必要があります^^。