グループユーザ権限で作業をする方法


1.はじめに

EP サーバには”グループユーザ”が存在する.
グループユーザのメリットは EP サーバ内の複数のユーザ間でファイルなどの 資源を共有したり、メーリングリストを作成するのに適している、などがある.

グループユーザの実体は直接ログインすることのできないユーザで、 何故そのようにしているのかというと、複数の人たちでパスワードを共有するのは セキュリティ上危険だからである. (詳しくはこちら

2.グループユーザになる方法

まず、個人ユーザとしてサーバにログインします.
”ログインって何?”という方はまずこちらへどうぞ.
次に以下のコマンドを入れるとグループユーザになれます.

$ sudo -u [グループユーザ名] -s

このときパスワードを聞かれますが、ここで入力するパスワードは 個人ユーザのログインパスワードです.

例えば、ユーザhogehogeさんがwwwにログインしたあと グループユーザepnetfanになる場合は以下のようになります.

$ sudo -u epnetfan -s
Password:hogehogeさんのwwwサーバのログインパスワード

$ whoami
epnetfan
whoamiというコマンドを打つと文字通り現在のユーザ名がわかります.

グループユーザから個人ユーザに戻るときには

$ exit
とすると元に戻れます.

また sudo では 前回コマンドを打ってから 5 分以内に打つとパスワードを聞かれない. この設定を変更する際は, bash の人は, .bashrc, .bash_profile, csh の人は .cshrc に

alias sudo='sudo -k ; sudo'
と書き込む.

3.ファイルの所属グループを変更する

ファイルには所有者、所属グループ、パーミッション(許可権)というものがあり、 そのファイルを読み書きできる人を設定しています. グループ間でファイルを共有するには所属グループとパーミッションを 適宜変更する必要があります. ファイルの情報を確認するには以下のコマンドを打ちます.

$ ls -la
合計 ***
drwxr-xr-x    1 hogehoge    hogehoge        4096  Jun  5 19:13 foo
-rw-r--r--    1 hogehoge    hogehoge        1234  Jun 14 17:15 file1
-rwxrw-r--    1 hogehoge    epcore          5678  Jun 14 17:15 file2
-rw-r-----    1 hogehoge    epnetfan        9012  Jun 14 17:15 file3
-rw-rw----    1 hogehoge    epnetfan        3456  Jun 14 17:15 file4
-rw-------    1 epnetfan    epnetfan        7890  Jun 14 17:15 file5

見方は左から順にパーミッション、所有者、所属グループ、ファイルサイズ、
更新日時、ファイル名となっています.

ただし、sudoでグループユーザになってから作成したファイルは、 所有者、グループは共にグループユーザになるのでわざわざ変更する必要はありません. chmod、chownはいったん自分の権限でファイルを作ってからグループ所属に 変更するときに使います.

4.ファイルを転送する方法

研究室等, グループユーザのディレクトリにファイルを転送したく なるかもしれません. その場合は以下の手順で行なって下さい.

  1. EP サーバの自分のホームディレクトリにファイルを転送する.
  2. EP サーバにログインし, グループユーザになる.
  3. 自分のホームディレクトリに転送したファイルを グループユーザのホームディレクトリへコピーする.

    ファイルのコピーは cp コマンドを用いて行ないます.
    $ cp [コピー元ファイル名] /home/[グループユーザ名]/

    cp コマンドの一般的な使い方は以下の通りです.
    $ cp [コピー元ファイル名] [コピー先ファイル名]

5.その他

sgというコマンドがあります. 筆者は使ったことがないのでよくわかりませんが、 このコマンドを使ってもグループ権限でファイルの操作が行えるようです.

$ sg [グループユーザ名]

このコマンドはパスワード入力は必要ありません.


最終更新日: 2010/02/23(小高正嗣) Copyright © 2001 EPnetFaN