sudo su -
root
すべてのユーザー(sudoer)の権限を昇格させます。
su - anotheruser
ターゲットユーザー権限を使用してターゲットユーザーのユーザーエクスペリエンスに切り替えます。
どういう意味ですかsudo su - username
?
答え1
@dr01と@OneKの答えはどちらも詳細がないので繰り返してください。
su - username
– 指定したユーザーに対して新しいログインセッションを開始するようシステムに要求します。システムはユーザー "username"のパスワードを要求します(現在のユーザーと同じ場合でも同じです)。sudo su - username
同じことを行いますが、まずシステムにスーパーユーザーモードで権限を要求します。その後、su
スーパーユーザーはパスワードを知らなくても他のユーザーに変更することができるため、「username」のパスワードを要求しません。つまり、現在のユーザーがスーパーユーザー権限を持っているかどうかを確認するためにファイルを確認し、sudo
可能であればそれを確認することでそれ自体が機能します。/etc/sudoers
現在のユーザーのパスワードです。
また、スーパーユーザーログインセッションを取得するにはsudo -i
(またはsudo -s
)を使用します。これは愚かなことです。スーパーユーザーに対してログインシェルを起動できるように、スーパーユーザー権限を付与する必要がsudo su -
あります。同じ目標をより多くの結果で達成できる場合は、それ自体が良いです。sudo
su
su
sudo
答え2
スーパーユーザー権限があれば、パスワードを要求せずにログインsudo su - username
できます(ログインシェルで)、パスワードを要求します。$username
su - username
$username
答え3
sudo su - username
と同じことsu - username
:ログインシェルをusername
。
su - username
ルートとして実行され、sudo su - username
知る必要はありません。ユーザー名パスワード(高い権限で実行されるため)が必要ですが、su - username
一般ユーザーとして実行するにはパスワードを知る必要があります。