この質問にはすでに回答があります:
コメント
回答
説明
違いがあります:
まず、su username
を使用して、sudo su - username
を使用しているときにアカウントに切り替えるには、「username」のパスワードを指定する必要があります。自分のパスワードを使用すると、rootになり、他のパスワードを使用せずに
で「ユーザー名」に切り替えます。
もう1つの違いは、-
とログインシェルの実行中にユーザーに切り替わります。-
がないと、非ログインシェルが取得されます。
結論:
-
su username
:
- ターゲットユーザーのパスワードを入力する必要があります
- あなたログイン以外のシェルにドロップされます(
.profile
などはソースされません)。
-
sudo su - username
- 自分のパスワードを使用して、rootとして
su
コマンドを実行しています(許可されている場合)
- ターゲットユーザーアクセスのログインシェルを取得します。
使用するシェル:
「ユーザー間で単一のパスワードを共有することはお勧めできません。そのため、su
をまったく使用せず、代わりにsudo
、またありません次のようなものを実行する必要があります:
sudo su - username
/etc/sudoers
ファイルを設定してから、次のようなものを使用できます:
sudo -i -u username
su
を使用する必要がある場合は、常にsu -
すべてが適切に供給され、何も妥協されていないことを確認します。