sudo -i は sudo su - とは異なる動作をします。

sudo -i は sudo su - とは異なる動作をします。

root以外のユーザーとしてこれを実行すると(ただし、sudoersファイルでは)sudo -iroot権限が得られます。

laptop:~$ sudo -i
[sudo] password for bjmgeek: 
laptop:~$ whoami
root
laptop:~$ id
uid=0(root) gid=0(root) groups=0(root)
laptop:~$ 

ただし、プロンプトには$(通常はルートを意味する)代わりに(#通常は一般ユーザーを意味する)が表示され続けます。

ただし、これはsudo su -ルートになりますが、#プロンプトが表示されます。

laptop:~$ sudo su -
-bash-5.2# whoami
root
-bash-5.2# id
uid=0(root) gid=0(root) groups=0(root)

マニュアルページによると、su -シェルをログインシェルで起動します。そしてマニュアルページによると、sudo -iシェルをログインシェルで始めます。それでは、ヒントを得るためにaを使用することとヒントを取得するためにaを使用する#ことの違いは何ですか$

これはDebianシステムにありますが、コマンドにDebian特有のものがないとsu思います。sudo

\$ルートユーザーに特に関わっているのだろうか。 #を表示し、root以外のユーザーは$を表示する必要があります。

更新:$PS1forがaで終わるのではなくにsudo -i設定されているため、これが問題の原因です。これで、すべてのファイルがすっきりして、どの設定が正しくないかを確認できます。\h:\[\e[1;34m\]\w\[\e[0m\]$\$

関連情報