Linux上で複数のユーザーが使えるようchmod 770などと指定するディレクトリを用意しても,それぞれのユーザーが書き込んだファイルやディレクトリは,他のユーザーが書き換えることができない。
そこで行わなければならないのは,「グループ」の設定と,該当するディレクトリに「sgidビット」の設定だ。順番に解説していこう。
1. 共有ディレクトリの作成
まず最初に共有するためのディレクトリを作成する。ここでは/pubとした。このディレクトリ下にもサブディレクトリが存在するため「-R」オプションでディレクトリ下すべてに設定を適用させている。
# mkdir /pub # groupadd help |
2. 共有ディレクトリにグループを適用
次に,groupaddで設定したグループ名を/pubに反映させる。ここではグループ名を「help」としている。
# chgrp -R help /pub # chmod -R 770 /pub |
3. グループに加えるユーザーを指定
さらに,usermodコマンドの「-G」オプションでどのユーザーアカウントをhelpグループに追加するかを指定しよう。
# usermod -G help kimafuji kegoto ykida |
idコマンドで確認すれば,helpグループが追加されていることが分かる。
# id kimafuji uid=500(kimafuji) gid=500(kimafuji) groups=500(kimafuji),504(help) |
4. 共有ディレクトリにsgidビットを立てる
最後に,対象のディレクトリ(ここでは/pub)にsgidビットを立てておく必要がある。ディレクトリに対してsgidビットを立てると,ディレクトリ下に作成されるファイルやディレクトリは,ビット設定したものと所有グループやパーミッションが同じになるのだ。
# chmod -R 2770 /pub |
Copyright © ITmedia, Inc. All Rights Reserved.