Linuxを扱うとき、グループの設定は必須項目だ。
新しくサーバーを建てたときなど、最初に設定する項目の一つだろう。
このページではLinuxのグループについて初心者の方向けに解説をする。関連する各種コマンドについてもまとめているので、グループ設定に関してはこのページを見れば一通りわかるだろう。
目次
Linuxのグループとは?
Linuxは一つのコンピュータを複数人で使うことが前提に作られている。
だから、ファイルやディレクトリに所有者や権限が設定できて、勝手には弄れないようにコントロールできるようにしてある。
ただ、ユーザー一人一人のファイルごとの権限を設定していると非常に手間だ。だから、グループというユーザーの「まとめ」を作って、一括で管理できるようにしてある。
例えばtextA.txtは、自分以外にもPlanningグループ全員にも見せたいというときに、ファイルにグループPlanningに対して閲覧許可を設定することができる。
一人一人に対して設定するよりも、だいぶ楽になるのがお分かりになるだろうか?
これがLinuxのグループだ。
メイングループとサブグループ
グループにはメイングループとサブグループがある。
メイングループ
一人のユーザーがメインで所属するグループ。一般的にはユーザー名と同じグループ名で登録していることが多い。
ユーザー一人ひとりは必ずどこかのグループに登録しなければならないのも覚えておいて頂きたい。
サブグループ
一人のユーザーが、メイン以外で登録しているグループ。複数登録できる。
例えば、部署としては「生産管理部」に所属していて、他に「社内QCサークル」に所属しているケースもあるだろう。
さらに「テニス愛好会」に所属しているとすれば合計3つのグループに所属していることになる。
この場合は「Production」「QC」「Tennis」の3つがサブグループとして考えられる。
グループ一覧の確認
Linuxに登録されているグループの一覧は/etc/groupに記録されている。
これは必ず知っておきたい。確認するには次のコマンドだ。
$ cat /etc/group
1行に1グループの情報が、Golf:x:1005:Kato,Ono,Wadaのように表示される。
- Golfはグループ名
- xはパスワード(パスワードの実態はセキュリティ上表示しない)
- 1005はグループ番号(GID)
- Kato,Ono,Wadaは所属メンバーの一覧
を意味している。
実際には次のように表示される。ちょっと長いが、そのまま載せておく。
ユーザだけではなく、「apache」「sshd」といったソフトウェア名のグループも確認できるのがわかるだろう。
グループを確認するときにはこのファイルを開いて確認しよう。
グループパスワード
グループにパスワードを設定することもできる。
パスワードを設定すると、管理者やSudo権限を持つユーザー以外はグループに追加、変更、削除ができなくなる。
パスワードの設定には、groupmodコマンドを使う。
Linuxグループ設定のコマンド
グループにかかわるコマンドを整理してみよう。
グループ自体を操作する
groupaddコマンド
グループを追加するにはgroupaddコマンドを使う。
groupmodコマンド
グループを編集するにはgroupmodコマンドだ。必ずオプションと共に使うコマンドになっている。
groupdelコマンド
グループを削除するにはgroupdelコマンドを使う。
グループにメンバーを追加・解除を行う
usermodコマンド
usermodコマンドを使用する。上のgroup系コマンドではできない。
ファイルやディレクトリに対してグループのアクセス権を設定する
chmodコマンド
ファイルやディレクトリに対してグループやアクセス権を設定するのはchmodコマンドを利用する。
これらのコマンド群を理解して使い分けよう。
グループの設定の具体例
グループは例えば、次のように使っていく。
・会報誌をテニス同好会のメンバーに閲覧させたいとき
会報誌のファイルの所有者が、chgrpコマンドやchownコマンドでファイルの所属グループをTennisにする。
chmodコマンドでファイルのアクセス権をグループに対して読み取り許可をする。
・ゴルフ同好会を新たに立ち上げたとき
groupaddコマンドでGolfグループを追加する。
新規メンバーに対してusermodの-aGオプションでユーザーのグループにGolfを追加する。
まとめ
このページではLinuxグループの設定方法について初心者の方向けにまとめてきた。
Linuxでグループの設定は頻繁に行うことのひとつだ。特にサーバーを構築する際には必須の知識だろう。
コマンドも含めて、ぜひ使いこなしてほしい。
コメント