Bash でユーザーを変更する

Sheeraz Gul 2023年6月20日
  1. ユーザーを変更する
  2. su コマンドを使用して Bash でユーザーを変更する
  3. sudo コマンドを使用して Bash でユーザーを変更する
  4. Bash でユーザーを root に変更する
Bash でユーザーを変更する

このチュートリアルでは、Bash でユーザーを変更する方法を示します。

ユーザーを変更する

Bash でユーザーを変更するには、さまざまな方法があります。 su コマンドまたは sudo コマンドを使用して、ユーザーを直接変更するか、メソッドを使用して root ユーザーに切り替えることができます。

Bash でユーザーを変更するには、まず、環境内のユーザーの名前を知る必要があります。 ユーザーの名前を一覧表示するには、次のコマンドを実行します。

cat /etc/passwd

上記のコマンドは、環境内のすべてのユーザーを一覧表示します。 出力を参照してください。

root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
bin:x:2:2:bin:/bin:/usr/sbin/nologin
sys:x:3:3:sys:/dev:/usr/sbin/nologin
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/usr/sbin/nologin
man:x:6:12:man:/var/cache/man:/usr/sbin/nologin
lp:x:7:7:lp:/var/spool/lpd:/usr/sbin/nologin
mail:x:8:8:mail:/var/mail:/usr/sbin/nologin
news:x:9:9:news:/var/spool/news:/usr/sbin/nologin
uucp:x:10:10:uucp:/var/spool/uucp:/usr/sbin/nologin
proxy:x:13:13:proxy:/bin:/usr/sbin/nologin
www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin
backup:x:34:34:backup:/var/backups:/usr/sbin/nologin
list:x:38:38:Mailing List Manager:/var/list:/usr/sbin/nologin
irc:x:39:39:ircd:/var/run/ircd:/usr/sbin/nologin
gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/usr/sbin/nologin
nobody:x:65534:65534:nobody:/nonexistent:/usr/sbin/nologin
systemd-network:x:100:102:systemd Network Management,,,:/run/systemd:/usr/sbin/nologin
systemd-resolve:x:101:103:systemd Resolver,,,:/run/systemd:/usr/sbin/nologin
systemd-timesync:x:102:104:systemd Time Synchronization,,,:/run/systemd:/usr/sbin/nologin
messagebus:x:103:106::/nonexistent:/usr/sbin/nologin
syslog:x:104:110::/home/syslog:/usr/sbin/nologin
_apt:x:105:65534::/nonexistent:/usr/sbin/nologin
tss:x:106:111:TPM software stack,,,:/var/lib/tpm:/bin/false
uuidd:x:107:112::/run/uuidd:/usr/sbin/nologin
tcpdump:x:108:113::/nonexistent:/usr/sbin/nologin
sshd:x:109:65534::/run/sshd:/usr/sbin/nologin
landscape:x:110:115::/var/lib/landscape:/usr/sbin/nologin
pollinate:x:111:1::/var/cache/pollinate:/bin/false
sheeraz:x:1000:1000:,,,:/home/sheeraz:/bin/bash
delftstack:x:1001:1002::/home/delftstack:/bin/sh

これで、システム内のすべてのユーザーを確認できるので、要件に基づいてユーザーを変更できます。

su コマンドを使用して Bash でユーザーを変更する

su コマンドは、switch user コマンドと省略され、Bash でユーザーを変更するために使用されます。

このコマンドの構文は次のとおりです。

su <option> <UserName>

ユーザー名は、切り替え先のユーザーです。 たとえば、ユーザー delftstack に切り替えたい場合は、次のコマンドを実行する必要があります。

su - delftstack

上記のコマンドはユーザーのパスワードを要求し、正しいパスワードを使用してユーザーを切り替えます。 出力を参照してください。

Password:
delftstack@DESKTOP-Q5AQGI0:/mnt/c/Users/Sheeraz$

sudo コマンドを使用して Bash でユーザーを変更する

sudo コマンドは、管理者としてタスクを実行するために使用されます。 Bash でユーザーを変更するためにも使用できます。 sudo コマンドを実行するにはパスワードが必要です。

sudo コマンドを使用してユーザーを変更する構文は次のとおりです。

sudo -u <UserName> -s

上記のコマンドは UserName を探してそれに切り替えます。 例を試してみましょう:

sudo -u delftstack -s

このコマンドは、ユーザーを delftstack に切り替えます。 出力を参照してください。

delftstack@DESKTOP-Q5AQGI0:/mnt/c/Users/Sheeraz$

このコマンドを使用して、別のユーザーとしてコマンドを起動することもできます。 これは、ユーザー名が sheeraz で、delftstack からコマンドを実行したい場合、sheeraz ユーザーから直接実行できることを意味します。

ユーザー sheeraz からユーザー delftstack のパスワードを変更する例を試してみましょう。

sudo -u delftstack passwd

上記のコマンドは、現在のユーザー sheeraz を使用してユーザー delftstack のパスワードを変更します。 出力を見る

Changing user password for user delftstack
Current password:
New password:
Retype new password:
passwd: all authentication tokens updated successfully.

Bash でユーザーを root に変更する

多くの場合、何らかの操作を実行するために root ユーザーに変更する必要があります。 デフォルトの su コマンドは、ユーザーを root ユーザーに変更できます。 su または su - を実行して、Bash の root ユーザーに切り替えることができます。

例を試してみましょう:

su -

または:

su

上記のコマンドは両方とも、ユーザーを現在のユーザーから root ユーザーに切り替えます。 出力を参照してください。

Password:
root@DESKTOP-Q5AQGI0:/mnt/c/Users/Sheeraz$

Password:
root@DESKTOP-Q5AQGI0:/mnt/c/Users/Sheeraz$
著者: Sheeraz Gul
Sheeraz Gul avatar Sheeraz Gul avatar

Sheeraz is a Doctorate fellow in Computer Science at Northwestern Polytechnical University, Xian, China. He has 7 years of Software Development experience in AI, Web, Database, and Desktop technologies. He writes tutorials in Java, PHP, Python, GoLang, R, etc., to help beginners learn the field of Computer Science.

LinkedIn Facebook