【コマンドライン】ユーザー設定の変更 [ usermod ]
コマンドラインでユーザーの設定を変更するusermodコマンドについて解説します。
検証環境
usermodコマンド
usermodコマンドは“ユーザーの設定を変更するコマンド”です。
ユーザー名の変更やロック・アンロック、グループの変更が行えます。
基本書式
$ usermod [オプション] [ユーザー]
オプション
主なオプションは次の通りです。
オプション | 内容 |
---|---|
-L | ユーザーをロック |
-U | ユーザーのロックを解除 |
-l 変更後名称 変更前名称 | ユーザー名を変更 |
-d ホームディレクトリパス | ホームディレクトリを変更(現在のホームディレクトリを名称変更して使う場合は-m オプションを併用) |
-m | 現在のホームディレクトリを移動(-d オプションと併用) |
-g グループ | プライマリグループを変更 |
-G グループ | セカンダリグループを変更(グループが複数ある場合はカンマ(,)で区切る)
※ 指定したグループで置き換わるため追加する場合は -a オプションを併用 |
-a | -G オプションと併用して使う。-G オプションの動作を『置き換え』から『追加』に変更 |
引数
ユーザー
ユーザー
は設定を変更するユーザーです。
サンプル
ユーザーのロック
ユーザーをロックすると、一般ユーザーからログインできなくなります。
___ih_hl_start
# usermod -L guest
___ih_hl_end
[hacker]$ su guest
パスワード:
su: 認証失敗
ユーザーのアンロック
ロックしたユーザーはアンロック(解除)することで、一般ユーザーからログインできるようになります。
___ih_hl_start
# usermod -U guest
___ih_hl_end
[hacker]$ su guest
パスワード:
[guest]$
ユーザー名とホームディレクトリの変更
ユーザー名とホームディレクトリ名は基本的に一致させます。
そのため、一方を変更する場合はもう一方も合わせて変更します。
# cat /etc/passwd
...省略...
guest:x:1001:1001::/home/guest:/bin/bash
___ih_hl_start
# usermod -l tester guest -d /home/tester -m
___ih_hl_end
# cat /etc/passwd
...省略...
tester:x:1001:1001::/home/tester:/bin/bash
プライマリグループの変更
# groups tester
tester : tester developers
___ih_hl_start
# usermod -g developers tester
___ih_hl_end
# groups tester
tester : developers tester
セカンダリグループの変更
# groups tester
tester : tester hackers
___ih_hl_start
# usermod -G developers tester
___ih_hl_end
# groups tester
tester : tester developers
セカンダリグループの追加
# groups tester
tester : tester hackers
___ih_hl_start
# usermod -aG developers tester
___ih_hl_end
# groups tester
tester : tester developers hackers
マニュアル
コマンドの仕様(主な処理やオプション・引数など)は環境により異なる場合がございます。
利用環境での仕様は『コマンドのマニュアルを表示する』manコマンド等で確認しましょう。