usermod コマンド

目次

概要

usermod - ユーザーを変更する

コマンドライン

usermod [OPTIONS] LOGIN

対象バージョン

説明

usermod コマンドはユーザーの情報を変更します。下記の例ではユーザー名を yamada から t-yamada に変更しています。

# usermod -l t-yamada yamada

オプション

基本パラメーター

-l, --login LOGIN
ユーザー名を変更します。
# usermod -l t-yamada yamada
-d, --home-dir HOME_DIR
ホームディレクトリを変更します。ディレクトリも移動する場合は -m オプションを指定してください。
# usermod -d /home2/yamada yamada
-m, --move-home
-d オプションでホームディレクトリを変更する際、ホームディレクトリも新しいパスに移動します。
# usermod -md /home2/yamada yamada
-u, --uid UID
ユーザーIDを変更します。
# usermod -u 1234 yamada
-g, --gid GROUP
主グループを変更します。
# usermod -g group1 yamada
-G, --groups GROUPS
追加グループリストを変更します。-G のみを指定すると追加や削除ではなく新しいリストに置き換えます。追加する場合は -a、削除する場合は -r オプションを指定してください。
# usermod -G group2,group4,group4 yamada
-a, --append
-G で指定したグループをユーザーの追加グループに加えます。
# usermod -aG group2,group3 yamada
-r, --remove
-G で指定したグループをユーザーの追加グループから削除します。
# usermod -rG group2,group3 yamada
-s, --shell SHELL
ユーザーが使用するシェルを変更します。
# usermod -s /bin/zsh yamada
-c, --comment COMMENT
コメントを変更します。
# usermod -c "Yamada Taro" yamada
-p, --password PASSWORD
パスワードを変更します。パスワードは暗号化した形式で指定します。
# usermod -p `openssl passwd -6 'mypasswd'` yamada
-f, --inactive INACTIVE
パスワードの期限切れ後の猶予日数を変更します。猶予日数を解除したい場合は -f -1 としてください。
# usermod -f 30 yamada
-e, --expiredate EXPIRE_DATE
新アカウントの有効期限を変更します。有効期限が過ぎるとそのユーザーはログインできなくなります。有効期限を解除したい場合は -e "" としてください。
# usermod -e "2025-12-31" yamada

ロック

-L, --lock
ユーザーアカウントをロックします。ロックされたユーザーは /etc/shadow の第2カラムに ! が追加されログインできなくなります。
# usermod -L yamada
-U, --unlock
ユーザーアカウントをロック解除します。
# usermod -U yamada

ユーザー名・ユーザーID

-b, --badname
ユーザー名に使用できない文字を含んでいるなどの "悪い名前" をチェックしません。下記では空白文字を含むユーザーに変更しています。
# usermod --badname -l "yamada taro" yamada
-o, --non-unique
ユーザーIDの重複を許可します。
# usermod --non-unique -u 1000 yamada
# usermod --non-unique -u 1000 taro

仮想環境・拡張環境

-R, --root CHROOT_DIR
指定した chroot 仮想環境にユーザーを作成します。下記の例では /mnt/chroot/etc/passwd などのユーザー情報が変更されます。
# usermod --root /mnt/chroot yamada
-P, --prefix PREFIX_DIR
/etc ディレクトリのプレフィックスとなるディレクトリを指定します。下記の例では /mnt/chroot/etc/passwd などのユーザー情報を変更します。(※ --root との違いは...?)
# usermod --prefix /mnt/chroot yamada

サブユーザーID・サブグループID

コンテナなどのユーザー仮想空間でユーザーが使用できるサブユーザーIDや、サブグループIDの範囲を追加・削除します。サブユーザーIDや、サブグループID は /etc/subuid, /etc/subgid に格納されます。

-v, --add-subuids FIRST-LAST
サブユーザーIDに FIRSTLAST を追加します。
# usermod -v 100000-165535 yamada
-V, --del-subuids FIRST-LAST
サブユーザーIDから FIRSTLAST を削除します。
# usermod -V 100000-165535 yamada
-w, --add-subgids FIRST-LAST
サブグループIDに FIRSTLAST を追加します。
# usermod -v 100000-165535 yamada
-W, --del-subgids FIRST-LAST
サブグループIDから FIRSTLAST を削除します。
# usermod -V 100000-165535 yamada

セキュリティ

-Z, --selinux-user SEUSER
SELinux ユーザーマッピングのユーザーを変更します。
# usermod -Z staff_u yamada
--selinux-range SERANGE
SELinux ユーザーマッピングのレンジを変更します。RHEL 10 ではサポートされていますが、Ubuntu 24.04 ではサポートされていません。
# usermod -Z staff_u --selinux-range s0-s0:c0.c1023 yamada

ヘルプ表示

-h, --help
ヘルプを表示して終了します。