はじめに
Linuxでは、 su
コマンド(ユーザーの切り替え)は、別のユーザーとしてコマンドを実行するために使用されます。
このガイドでは、su
の使用方法を学習します コマンド、実用的な例。
前提条件
- Linuxを実行しているシステム
- ターミナルウィンドウ/コマンドラインへのアクセス(Ctrl-Alt-T、Ctrl-Alt-F2)
suコマンドのしくみ
su
コマンドは、別のユーザーとして関数を実行するために使用されます。現在ログインしているセッションで管理者アカウントに切り替えたり変更したりするのが最も簡単な方法です。
Ubuntuなどの一部のバージョンのLinuxは、デフォルトでrootユーザーアカウントを無効にして、システムをより安全にします。ただし、これにより、ユーザーが特定のコマンドを実行することも制限されます。
su
を使用する 一時的にrootユーザーとして機能することで、この制限を回避し、さまざまなユーザーでさまざまなタスクを実行できます。
suコマンド構文
su
を使用するには コマンドを入力するには、次のようにコマンドラインに入力します。
su [options] [username [arguments]]
ユーザー名が指定されている場合、 su
デフォルトはスーパーユーザー(root)です。必要なユーザーを見つけて、それを su
に追加するだけです。 コマンド構文。
suコマンドオプション
コマンドのリストを表示するには、次のように入力します。
su –h
su
で使用する一般的なオプションは次のとおりです。 コマンド:
Username
–ユーザー名を置き換えます ログインしたい実際のユーザー名で。これは、rootだけでなく、任意のユーザーにすることができます。-
–c
または–command [command]
–指定されたユーザーとして特定のコマンドを実行します。 -
–
または–l
または–login [username]
–ログインスクリプトを実行して、特定のユーザー名に変更します。そのユーザーのパスワードを入力する必要があります。 -
–s
または–shell [shell]
–実行する別のシェル環境を指定できます。 -
–h
または–help
–su
のヘルプファイルを表示する コマンド。 -
–p
または––preserve–environment
–シェルを保持します 環境 (HOME、SHELL、USER、LOGNAME)。
suコマンドの例
別のユーザーに切り替える
このターミナルウィンドウでログインユーザーを切り替えるには、次のように入力します。
su –l [other_user]
パスワードの入力を求められます。入力すると、ログインがそのユーザーに変更されます。
ユーザー名を省略すると、デフォルトでルートになります アカウント。これで、ログインしたユーザーはすべてのシステムコマンドを実行できます。これにより、ホームディレクトリと実行可能ファイルへのパスも変更されます。
whoami
を使用します 別のユーザーに切り替えたことを確認するコマンド。
別のユーザーとして特定のコマンドを実行する
別のユーザーとして特定のコマンドを実行するには、 –c
を使用します オプション:
su –c [command] [other_user]
システムはユーザーパスワードの入力を求めて応答します。
この例を入力すると、システムは指定されたアカウントを使用して ls
を実行します (ディレクトリの内容を一覧表示する)コマンド。
別のシェルを使用する
別のシェルまたは動作環境を使用するには、次のように入力します。
su –s /usr/bin/zsh
このコマンドは、Zシェルでrootユーザーアカウントを開きます 。
同じ環境で別のユーザーを使用する
–p
を使用すると、現在のユーザーアカウントの環境を維持できます。 オプション:
su –p [other_user]
[other_user]を置き換えます 切り替えたい実際のユーザー名を使用します。
ユーザーアカウントは切り替わりますが、同じホームディレクトリを維持します。これは、別のユーザーとしてコマンドを実行する必要があるが、現在のユーザーのデータにアクセスする必要がある場合に便利です。
同じホーム環境にとどまっていることを確認するには、 echo $HOME
を使用します 作業中のディレクトリを表示するコマンド。
コマンドの比較:suとsudo
sudoコマンド
sudo
コマンドは、root機能への1回限りまたは期間限定のアクセスを許可します。通常、 sudo
コマンドは、管理コマンドをすばやく実行してから、ユーザーアカウントの通常の権限に戻るために使用されます。
sudoアクセスを提供するには、ユーザーをsudoグループに追加する必要があります。
suコマンド
su
コマンドを使用すると、現在のユーザーを他のユーザーに切り替えることができます。別の(root以外の)ユーザーとしてコマンドを実行する必要がある場合は、 –l [username]
を使用します ユーザーアカウントを指定するオプション。さらに、 su
また、その場で別のシェルインタプリタに変更するために使用することもできます。
su
は古いですが、より完全な機能を備えたコマンドです。 sudo
の機能を複製できます –c
を使用する 単一のコマンドをシェルに渡すオプション。