Linuxでは、セッションのカレントユーザーを変更する方法がたくさんあります。
グラフィカルなインターフェイスを使用していない場合、完全なユーザーインターフェイスをインストールすることなく、簡単にユーザーを変更するにはどうしたらよいかと思うかもしれません。
幸いなことに、これを実現するために実行できるコマンドがいくつかあります。
今日は、Linux の su (for switch user) と sudo コマンドに注目します。
コマンドの構文と、ユーザーを切り替えるためにどのように使用するかを見ていきます。
目次
Linuxでsuを使ってユーザーを変更する
シェルでユーザーアカウントを変更する最初の方法は、suコマンドを使用することです。
$ su <option> <user>
例えば、「john」という名前のアカウントにログインするためには、以下のようなコマンドを実行することになります。
$ su johnPassword: user ~]$
このように、suを実行する際にハイフンを指定しないと、元のアカウントの環境変数を引き継ぐことになります。
確認のために、以下のコマンドを実行してみてください
$ echo $USERNAMEuser
新しい環境を作ってユーザーを変更するためには、ハイフンを指定してsuを実行する必要があります。
$ su - johnPassword: ~]$
Linuxでsudoを使ってユーザーを変更する
現在のユーザーを変更するもう一つの方法は、sudoコマンドを使用することです。
デフォルトでは、このコマンドを実行するためには特権的な権利が必要ですので、DebianベースのディストリビューションまたはRed Hatベースのディストリビューションでは、sudoの権利を持っていることを確認してください。
sudo を持っているので、ユーザーを変更するにはこのコマンドを実行する必要があります
$ sudo -u <user> -s antoine~]$
見てわかるように、このコマンドを使用すると環境変数も継承されます。
別のユーザーとしてコマンドを起動するには、sudo コマンドにコマンドを追加することもできます。
$ sudo -u <user> <command>
例えば、ユーザーのパスワードを変更するには、
$ sudo -u john passwdChanging user password for user johnCurrent password:New password:Retype new password:passwd: all authentication tokens updated successfully.
Linuxでユーザーをrootアカウントに変更する
場合によっては、rootアカウントでログインするために、現在のユーザーを変更する必要があります。
ユーザーをrootアカウントに変更するには、引数を指定せずに「su」または「su -」を実行するだけです。
$ su -Password: ~]#$ suPassword: user]#
GNOMEインターフェイスを使ってユーザーアカウントを変更する
DebianやCentOSをGNOMEインターフェイスでインストールした場合、これらの手順でユーザーアカウントを変更することもできます。
GNOMEを使ってユーザーを変更するには、画面の右上にある電源ボタンを見つけてクリックします。
現在のユーザーを変更するためには、ユーザー名のラベルをクリックし、「ユーザーを切り替える」をクリックします。
ロック画面に移動しますので、自由に好きなアカウントに変更してください。
おわりに
今日は、Linux でユーザー アカウントを簡単に変更するには、su を使用するか、または特権アカウントの場合は sudo コマンドを使用する方法を学びました。
また、GNOME GUI を使ってグラフィカルに Linux を実行している場合にも可能であることも学びました。
その他の Linux システム管理のチュートリアルをお探しの場合は、このテーマに関する他のチュートリアルもぜひご覧ください。