usermod / gpasswd の使い方
ユーザーの設定を変える
書き方
usermod -aG グループ ユーザー usermod -s /sbin/nologin ユーザー(ログインさせない) usermod -L / -U ユーザー(パスワードのロック / 解除) usermod -e 2025-03-31 ユーザー(アカウントの期限) gpasswd -a ユーザー グループ
-a を付けずに -G だけだと、今のグループから外れてしまうので注意。-L はパスワードを止めるだけで、鍵での SSH ログインは止まりません。止めるなら -s /sbin/nologin や -e も使います。
よく使うオプション
| オプション | 意味 |
|---|---|
-aG グループ | 今のグループはそのままに、グループを足す |
-G グループ | 補助グループを書いたものだけにする(-a が無いと外れる) |
-s シェル | ログインシェルを変える(/sbin/nologin でログインさせない) |
-L / -U | パスワードをロックする / 外す |
-e 日付 | アカウントの期限を決める |
-d ディレクトリ -m | ホームディレクトリを変え、中身も移す |
例
$ sudo usermod -aG wheel kenji
kenji を wheel グループに足し、sudo を使えるようにします。新しくログインし直すと効きます。
$ id kenjiuid=1001(kenji) gid=1001(kenji) groups=1001(kenji),10(wheel)グループに入ったかを確かめます。groups= に wheel が出れば OK です。
$ sudo usermod -s /sbin/nologin batch
batch ユーザーをログインできないようにします。プログラムを動かすためだけのユーザーに使います。
$ sudo usermod -e 2027-03-31 guest
guest のアカウントを 2027 年 3 月 31 日までにします。期限を過ぎるとログインできません。
$ sudo gpasswd -a kenji devteam
gpasswd でもグループにメンバーを足せます。-d で外せます。
よくある間違い・注意
- -a を付けずに -G だけで実行すると、書かなかったグループから外れてしまいます。
- グループの変更は、今ログインしているシェルには効きません。ログインし直すか newgrp を使います。
- -L はパスワードを止めるだけで、SSH の鍵でのログインは止まりません。
実際に打って練習する
Linux レベル1 コースの Lv50「ギルドに迎える usermod」で覚えます(第3章 権限の城(権限とユーザー))。ブラウザの中のシミュレーターで、本物と同じように打って確かめられます。
Lv1〜16 は、登録不要・無料で遊べます(それより先はブロンズ以上のプランで遊べます)。