「Linux」は強力なOSであり、市場で最も安全なプラットフォームでもある。豊富なセキュリティ機能とサブシステムを備えるLinuxのユーザーは、グループを利用することで、セキュリティとプライバシーをさらに強化できる。
複数のユーザーを1人ずつ管理する代わりにグループを使用すると、ファイルやフォルダーへのユーザーのアクセス権を制御するタスクをはるかに効率的に実行することが可能だ。
分かりやすい例を紹介しよう。あなたが作成した/dataというディレクトリーにアクセスする必要があるユーザーが100人いるとする。そのフォルダーのアクセス許可を変更して、すべてのユーザーにアクセス許可を与えることも可能だが、セキュリティリスクがある。代わりに、data_usersというグループを作成して、フォルダーの所有グループをdata_usersに変更した後、その新しいグループに必要なユーザーを追加しよう。この方法の利点は、グループの誰かがフォルダーにアクセスする必要がなくなった場合、そのユーザーをグループから削除するだけで済むことだ。
そのようなタスクに取り組む前に、Linuxシステムでグループを管理する方法を知っておく必要がある。具体的には、習得しなければならないコマンドが5つある。
以下でそれらのコマンドを紹介する。
1. groups
ユーザーがどのグループに属しているかを知りたい場合は、このコマンドを使用する。groupsコマンドを入力するだけで、現在のユーザーの全グループが表示される。特定のユーザーのグループを表示する必要がある場合、コマンドは以下のようになる。
groups USER
USERは、対象となるユーザーの名前だ。
機能はほぼこれだけだが、groupsは知っておくべき重要なコマンドである。
2. groupadd
これが次に習得すべきコマンドであることには、理由がある。システムに新しいグループを追加することを可能にしてくれるからだ。groupsと違って、groupaddにはsudo権限が必要であり、便利なオプションもいくつか用意されている。ただし、簡単なグループを作成するのにオプションを使用する必要はない。実際に、筆者がお薦めするのは、利用可能なオプションを一切使用せずに、以下のような単純なコマンドを実行することだ。
sudo groupadd GROUP
GROUPは、追加したいグループの名前だ。
3. groupdel
グループを削除する必要がある場合は、groupdelというコマンドを使用する。注意点が1つある。既存のユーザーのプライマリーグループを削除することはできない(すべてのユーザーには、ユーザー名と同じ名前のグループが割り当てられるため。例えば、jackというユーザーにはjackという名前のグループが割り当てられる)。グループを削除するには、以下のコマンドを使用する。
sudo groupdel GROUP
GROUPは、削除するグループの名前だ。
4. groupmod
groupmodコマンドを使用すると、システム上のグループの設定を変更できる。このコマンドで変更できるのは、グループIDや名前、パスワード(パスワードはユーザーに表示されるので、使用しない方がいい)などだ。
groupmodで設定を変更するには、以下のようなコマンドを実行する。
sudo groupmod -n NEWNAME OLDNAME
NEWNAMEはグループの新しい名前、OLDNAMEは古い名前である。
5. chgrp
chgrpコマンドを使用すると、所有グループを変更できる。chownコマンドに似ているが、chgrpの方が使いやすい(chownは所有者と所有グループの両方を変更できるため)。例えば、data_usersというグループがあり、そのグループのすべてのユーザーに、zdnet_welcome.txtという特定のファイルへのアクセス権を付与したいとしよう。それを行うには、以下のコマンドを実行する。
sudo chgrp data_users zdnet_welcome.txt
コマンドの実行後、data_usersグループのすべてのメンバーがzdnet_welcome.txtファイルを利用できるようになる。
解説は以上である。これら5つのコマンドを習得すれば、Linuxのグループを簡単に管理できるはずだ。
提供:Raimund Linke/Getty Images
この記事は海外Red Ventures発の記事を朝日インタラクティブが日本向けに編集したものです。