これは私がグーグルからすぐに答えを得ると期待する質問です。しかし、どういうわけかグーグルは私に失敗しています。ターミナルセッションにログインしており、セッションを終了せずにパスワードを知っている別の非ルートユーザーとして一時的に作業したいとします。このユーザーとしてログインすると、ログアウトするまでこのユーザーのホームディレクトリなどが正しく設定されます。それ、どうやったら出来るの?
私は試した
su -- username
パスワードをキー入力してもエラーは発生しませんでしたが、コマンドの目に見える変更は見られませんでした。ホームディレクトリもmynameのディレクトリであり、ログインしようとした新しいログインではありませんでした。
私は-明らかなように-linux/Ubuntuでかなり経験が浅いので、どんな情報でも大歓迎です。
どのユーザーに変更しますか?
問題は、シェルが割り当てられていないユーザーに「su」しようとしていることです。ソフトウェアのインストール時にシステムまたは一部のパッケージによって作成されたmysql、Pulseなどのほとんどのユーザーには、シェルが割り当てられていません。
/etc/passwd
ファイルを調べて、ユーザーにシェルが割り当てられているかどうかを確認できます。/bin/false
と表示されている場合は、各ユーザーの行の終わりを見てください。 /bin/bash
または他のシェルのようなものが割り当てられている場合、そのユーザーに「su」できるはずです。
「シェル割り当て」と言うと、基本的に「シェルアクセス」があることを意味します
それでもユーザーにシェルアクセスがない場合は、常にそのユーザーとしてコマンドを実行できます。
Sudo -u user command
あなたが須藤アクセスを持っているなら、私はお勧めします
Sudo su username -
基本的に同じことをしますが、他のユーザーではなくパスワードを知っていることだけが必要です。
ただし、他のユーザーのパスワードを持っている場合:
su username -
は正常に機能するはずです。
1に注目してください-そして、それは最後にあります。