groupaddコマンドでグループIDを指定してグループを追加する方法|GID管理の実務も

宮崎智広 この記事の監修:宮崎智広(Linux実務・教育歴20年以上・受講者3,100名超)
HOMELinux技術 リナックスマスター.JP(Linuxマスター.JP)Linuxtips, システム管理, ユーザー管理 > groupaddコマンドでグループIDを指定してグループを追加する方法|GID管理の実務も
「グループを追加するときにGIDを自分で指定したい」
「複数サーバーでGIDを統一して管理したいけど、どうすればいいの?」
Linuxでグループを追加すると、システムが自動的にGID(グループID)を割り当てます。しかし、複数サーバー間でGIDを統一したい場合や、運用ルールでGIDの範囲を決めている場合は、手動でGIDを指定する必要があります。

この記事では、groupadd コマンドでGIDを指定してグループを追加する方法を解説します。
基本的な使い方、-gオプションでのGID指定、/etc/groupでの確認、groupmod・groupdelによるグループ管理まで、実務で使える知識をまとめました。

※ groupaddコマンドの実行にはroot権限が必要です。
【この記事でわかること】
・groupaddコマンドとは?
・GIDを指定してグループを追加する
・グループの確認方法
・グループの変更と削除

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

groupaddコマンドとは?

groupadd は、新しいグループを作成するコマンドです。オプションなしで実行するとGIDが自動的に割り当てられますが、-g オプションを使うとGIDを指定できます。

GIDを指定してグループを追加する

1. -gオプションでGIDを指定する

# GID 600を指定してグループ「unyo」を作成 # groupadd -g 600 unyo # 作成されたグループを確認 # grep unyo /etc/group unyo:x:600:

/etc/groupファイルの3番目のフィールドがGIDです。指定した600が設定されていることが確認できます。

2. GIDを指定せずにグループを追加(自動割り当て)

# GIDを自動割り当てでグループを作成 # groupadd devteam # GIDを確認 # getent group devteam devteam:x:1005:

自動割り当ての場合、既存のGIDの最大値+1が使用されます。

グループの確認方法

1. /etc/groupファイルを直接確認

# グループ一覧を表示 $ cat /etc/group # 特定のグループを検索 $ grep unyo /etc/group unyo:x:600:user1,user2

/etc/groupの各フィールドは「グループ名:パスワード:GID:メンバー」です。

2. getentコマンドで確認

# 特定グループの情報を表示 $ getent group unyo unyo:x:600:user1,user2 # 全グループを表示 $ getent group

グループの変更と削除

1. groupmodでグループ名やGIDを変更

# グループ名を変更 # groupmod -n newname oldname # GIDを変更 # groupmod -g 700 unyo

2. groupdelでグループを削除

# グループを削除 # groupdel unyo

※ プライマリグループとして使用されているグループは削除できません。該当ユーザーのプライマリグループを変更してから削除してください。

実務でのGID管理のポイント

複数サーバー間でGIDを統一する:NFS共有やrsyncでファイルを同期する場合、GIDが異なると権限の不整合が発生します。サーバー間でGIDを統一するルールを決めておきましょう
GIDの範囲を決める:例えば「システムグループ: 0-999」「運用グループ: 1000-1999」「アプリケーション: 2000-2999」のように範囲を決めておくと管理しやすくなります
ユーザーをグループに追加する:usermod -aG グループ名 ユーザー名 で既存ユーザーをグループに追加できます(-aを忘れると既存のグループから外れるので注意)

# ユーザーをグループに追加(-aG:追加モード) # usermod -aG unyo tomohiro # ユーザーの所属グループを確認 $ id tomohiro uid=1001(tomohiro) gid=1001(tomohiro) groups=1001(tomohiro),600(unyo)

本記事のまとめ

やりたいこと コマンド
GIDを指定してグループ追加 groupadd -g 600 グループ名
GID自動割り当てでグループ追加 groupadd グループ名
グループ情報を確認 getent group グループ名
グループ名を変更 groupmod -n 新名 旧名
グループを削除 groupdel グループ名
ユーザーをグループに追加 usermod -aG グループ名 ユーザー名

Linuxのグループ・ユーザー管理を体系的に学んで安全なサーバー運用を実現しませんか?

GIDの統一管理はNFS共有やファイル権限設計の基本です。正確な知識で現場の課題を解決しましょう。
現場で通用する安全なLinuxサーバー構築の「型」を体系的に身につけたい方へ、『Linuxサーバー構築入門マニュアル(図解60P)』を完全無料でプレゼントしています。

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

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

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

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

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

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

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

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

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

この記事を書いた人

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

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

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