ホームページ  >  記事  >  運用・保守  >  Linux su パスワードの意味は何ですか?

Linux su パスワードの意味は何ですか?

青灯夜游
青灯夜游オリジナル
2023-03-20 10:26:166999ブラウズ

su のパスワードは root ユーザーのパスワードです。Linux または Unix オペレーティング システムをインストールするとき、ユーザーは root のパスワードを入力するよう求められます。これは、ユーザーがインストール後に入力するパスワードでもあります。 「sudo su」コマンドを実行します。 su のフルネームは「switch user」で、ログイン ID を一時的に変更できますが、root を除き、変更する際には変更するユーザー アカウントとパスワードを入力する必要があります。

Linux su パスワードの意味は何ですか?

#このチュートリアルの動作環境: linux7.3 システム、Dell G3 コンピューター。

su パスワードの意味は何ですか?

# su のパスワードは root ユーザーのパスワードです。Linux または Unix をインストールする場合root パスワードの入力を求めるプロンプトが表示されます。これは、sudo su コマンドを実行した後に表示され、パスワードの入力を求めるプロンプトです。このパスワードにはアスタリスクやその他の記号は表示されないことに注意してください。常に空白になります。入力が完了したら Enter キーを押してください。

su コマンドの紹介

su (完全な英語のスペル: ユーザーの切り替え)。 Linuxでは、suコマンドによりログインIDを一時的に変更できますが、root以外の場合は、変更するユーザーアカウントとパスワードを入力する必要があります。

使用権限: すべてのユーザー。

機能:ユーザー ID を変更します。ユーザー アカウントが指定されていない場合、デフォルトは root に変更されます。

構文

su [-fmp] [-c command] [-s shell] [--help] [--version] [-] [USER [ARG]]

パラメータの説明:

  • -f または --fast は起動ファイルを読み取る必要はありません ( csh.cshrc など)、csh または tcsh にのみ使用されます

  • -m -p または --preserve-environment は、su

    の実行時に環境変数を変更しません。
  • -c コマンドまたは --command=command アカウントが USER のユーザーに変更してコマンド(command)を実行し、元のユーザーに戻します

  • -s shell または --shell =shell は、実行するシェル (bash csh tcsh など) を指定します。デフォルト値は /etc/passwd のユーザー (USER) です。shell

  • ##--help 表示記述ファイル

  • --version バージョン情報を表示

  • #- -l または --login これを追加した後ユーザーと同様に、ほとんどの環境変数 (HOME SHELL USER など) はユーザー (USER) に基づいており、作業ディレクトリも変更されます。USER が指定されていない場合は、デフォルトは root です

  • USER 変更するユーザー アカウント

  • ##ARG 新しいシェル パラメータを渡します
  • ##一般的な例 :

#例 1: アカウントを root に変更し、ls コマンドの実行後に終了して元のユーザーに戻ります

コマンド:

su -c ls root

ls コマンド実行後、アカウントを root に変更し、終了して元のユーザーに戻ります。

[root@localhost ~]# su -c ls root
公共  视频  文档  音乐	anaconda-ks.cfg
模板  图片  下载  桌面	initial-setup-ks.cfg
例 2: ユーザーの切り替え

コマンド:

su root

testuser を root に切り替えることは、 user to Root but working in the testuser 環境

小さい権限と大きい権限の切り替えにはパスワードの入力が必要ですが、大きい権限と小さい権限の切り替えにはパスワードの入力は必要ありません。 ユーザーを切り替えると取得できるのはユーザーの実行権限だけであり、環境変数は取得できません。

[testuser@localhost ~]$ whoami //显示当前用户
testuser
[testuser@localhost ~]$ pwd //显示当前目录
/home/testuser
[testuser@localhost ~]$ su root //切换到root用户
密码:
[root@localhost testuser]# whoami
root
[root@localhost testuser]# pwd
/home/testuser

例 3: ユーザーを切り替えて環境変数を変更する

コマンド:

su - root

testuser を root に切り替え、これは、ユーザーを root に変更し、root 環境で操作することと同じです。つまり、アカウントを root に変更し、作業ディレクトリを root のホーム ディレクトリに変更します。

ユーザーに切り替えて、ユーザーの環境変数と実行権限を取得します。 <pre class="brush:js;toolbar:false;">[testuser@localhost ~]$ whoami testuser [testuser@localhost ~]$ pwd /home/testuser [testuser@localhost ~]$ su - root 密码: [root@localhost ~]# whoami root [root@localhost ~]# pwd /root</pre>

su と su の違い -

su コマンドを使用する場合、- を使用する場合と使用しない場合ではまったく異なる違いがあることに注意してください。 - オプション: ユーザー ID を切り替えると、現在使用されている環境変数も、指定されたユーザーの環境変数に切り替わることを意味します。環境変数はオペレーティング システムの環境を定義するために使用されることがわかっているため、システム環境がユーザーの ID に応じて切り替わらないと、多くのコマンドが正しく実行できなくなります。 たとえば、通常のユーザー ランプは su コマンドによって root ユーザーに切り替わりますが、- オプションは使用しません。この場合、root ユーザーであるように見えますが、$PATH 環境変数はシステムはまだ (root ではなく) ランプのものであるため、現在の作業環境には /sbin、/usr/sbin などのスーパーユーザー コマンドの保存パスが含まれていないため、多くの管理者コマンドがまったく使用できなくなります。 。それだけでなく、root ユーザーがメールを受け入れると、環境変数 $MAIL が切り替えられていないため、受信したメールが Lamp ユーザーからのものであることがわかります。

初心者は、このようにして両者の違いを理解できます。つまり、- オプションを使用すると、ユーザー ID の切り替えがより完全になりますが、逆に、ユーザー ID の一部のみが切り替えられるため、特定のコマンドの実行時に問題やエラーが発生することがあります (たとえば、service コマンドが使用できないなど)。

次の例を通じて、su と su - の違いを直感的に確認できます。
[lamp@localhost ~]$ whoami
lamp
#查询用户身份,我是lamp
[lamp@localhost ~]$ su root
密码:
<-输入root密码
#切换到root,但是没有切换环境变量。注意:普通用户切换到root需要密码
[root@localhost ~]# env | grep lamp
#查看环境变量,提取包含lamp的行
USER=lamp
#用户名还是lamp,而不是root
PATH=/usr/lib/qt-3.3/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/lamp/bin
#命令査找的路径不包含超级用户路径
MAIL=/var/spool/mail/lamp
PWD=/home/lamp
LOGNAME=lamp
#邮箱、主目录、目前用户名还是lamp

ユーザー ID の切り替えは成功していますが、su - を使用しなくてもわかります。ただし、環境変数は元のユーザーのもののままであり、切り替えは不完全です。

関連する推奨事項: 「

Linux ビデオ チュートリアル

以上がLinux su パスワードの意味は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。