宮崎智広 この記事の監修:宮崎智広(Linux実務・教育歴20年以上・受講者3,100名超)
「ユーザーを作成した後からUIDやグループを変更したい」
「usermodコマンドのオプションが多くて、どれを使えばいいか分からない」

この記事では、usermod コマンドを使ってLinuxユーザーの各種設定を変更する方法を実行例付きで解説します。
CentOS 7 / RHEL 9で動作確認済みです。

【この記事でわかること】
・usermodコマンドでLinuxユーザーのUID・GID・ホームディレクトリを変更する方法
・usermod -gオプションでプライマリグループを変更する手順
・usermod -Gオプションでサブグループ(補助グループ)を追加・変更する方法
・usermod -lオプションでユーザー名を変更する方法と注意点

「このままじゃマズい」と感じていませんか?
参考書を開く気力もない、同年代に取り残される不安——
でも安心してください。プロのエンジニアはコマンドを暗記していません。
「現場で使える型」を効率よく使いこなしているだけです。
図解60P/登録10秒/解除も3秒 / 詳細はこちら

usermodコマンドとは

usermod コマンドは、既存ユーザーの設定情報を変更するLinuxコマンドです。
ユーザー作成後に、UID・プライマリグループ・補助グループ・ホームディレクトリ・ユーザー名などを変更できます。
実行にはroot権限が必要です。

usermodコマンドの書式

usermod [オプション] ユーザー名

UIDを変更する(-u)

ユーザーのUID(ユーザーID)を変更するには、-u オプションを使います。

1. UID変更の実行例

[root@tiger root]# id tomohiro uid=502(tomohiro) gid=503(tomohiro) 所属グループ=503(tomohiro) [root@tiger root]# usermod -u 5000 tomohiro [root@tiger root]# id tomohiro uid=5000(tomohiro) gid=503(tomohiro) 所属グループ=503(tomohiro)

UID が 5000 に変更されていることが確認できます。
変更後は、ユーザーが所有するファイルのオーナーを find / -user 旧UID -exec chown 新UID {} \; で更新することを忘れないようにしてください。

プライマリグループを変更する(-g)

ユーザーのプライマリグループを変更するには、-g オプションにグループ名(またはGID)を指定します。

1. プライマリグループ変更の実行例

[root@tiger root]# usermod -g pakira tomohiro [root@tiger root]# id tomohiro uid=5000(tomohiro) gid=500(pakira) 所属グループ=500(pakira)

プライマリグループが pakira に変更されています。

補助グループ(サブグループ)を変更する(-G)

ユーザーを複数のグループに所属させるには、-G オプションを使います。
-a オプションと組み合わせると、既存のグループ設定を保持しながらグループを追加できます。

1. 補助グループの追加

# wheel グループに追加(既存の所属グループを保持) [root@tiger root]# usermod -aG wheel tomohiro [root@tiger root]# id tomohiro uid=5000(tomohiro) gid=500(pakira) 所属グループ=500(pakira),10(wheel)

-a を付けないと、-G で指定したグループのみになり、それ以外の補助グループから外れるので注意してください。

ユーザー名を変更する(-l)

ユーザーのログイン名を変更するには、-l オプションを使います。

1. ユーザー名変更の実行例

# tomohiro を newuser に名前変更 [root@tiger root]# usermod -l newuser tomohiro [root@tiger root]# id newuser uid=5000(newuser) gid=500(pakira) 所属グループ=500(pakira)

ユーザー名変更後も、ホームディレクトリ名(/home/tomohiro)は変わりません。
ホームディレクトリも新しい名前に変更する場合は、-d /home/newuser -m オプションを組み合わせて実行してください。

主要オプションのまとめ

やりたいこと コマンド例
UIDを変更する usermod -u 5000 ユーザー名
プライマリグループを変更する usermod -g グループ名 ユーザー名
補助グループを追加する usermod -aG グループ名 ユーザー名
ユーザー名を変更する usermod -l 新ユーザー名 旧ユーザー名
ホームディレクトリを変更する usermod -d /home/新パス -m ユーザー名

Linuxのユーザー管理、体系的に学んでいますか?

usermodコマンドはUID・グループ・ホームディレクトリなど多岐にわたる変更ができます。実務でミスなく使うには、それぞれのオプションの意味を正確に理解することが重要です。
ネットの切れ端の情報をコピペするだけでなく、現場で通用する安全なLinuxサーバー構築の「型」を体系的に身につけたい方へ、『Linuxサーバー構築入門マニュアル(図解60P)』を完全無料でプレゼントしています。

「独学の時間がもったいない」「プロから直接、現場の技術を最短で学びたい」という本気の方には、2日で実務レベルのスキルが身につく【初心者向けハンズオンセミナー】も開催しています。

無料メルマガで学習を続ける

Linuxの実践スキルをメールで毎週お届け。
登録は1分、解除もいつでも可。

登録無料・いつでも解除できます

暗記不要・1時間後にはサーバーが動く

3,100名以上が実践した「型」を無料で公開中

プロのエンジニアはコマンドを暗記していません。
「現場で使える型」を効率よく使いこなしているだけです。
その「型」を図解60Pにまとめた入門マニュアルを、完全無料でプレゼントしています。

登録10秒/合わなければ解除3秒 / 詳細はこちら

Linux無料マニュアル(図解60P) 名前とメールで30秒登録
宮崎 智広

この記事を書いた人

宮崎 智広(みやざき ともひろ)

株式会社イーネットマーキュリー代表。現役のLinuxサーバー管理者として15年以上の実務経験を持ち、これまでに累計3,100名以上のエンジニアを指導してきたLinux教育のプロフェッショナル。「現場で本当に使える技術」を体系的に伝えることをモットーに、実践型のLinuxセミナーの開催や無料マニュアルの配布を通じてLinux人材の育成に取り組んでいる。

趣味は、キャンプにカメラ、トラウト釣り。好きな食べ物は、ラーメンにお酒。休肝日が作れない、酒量を減らせないのが悩み。最近、ドラマ「フライトエンジェル」を観て涙腺が崩壊しました。