アカウントの作り方

みぞっち(仮)さん、ごめんなさい



アカウントを作る作業は、私のノートの最初のページにあるくらい基本的な仕事です。 毎年、春になると新しい人が研究室にやってきます。 その人たちが bio-math10 のメールを使えるようにするためには、bio-math10 にアカウントがなければなりません。



まず最初に私が先輩計算機係(ここでは仮に"みぞっち"と呼ぶ)から教わった方法をここに書きます。


 … … … … … … … … … 

1、/home/bio-math10/ の下で

mkdir newuser

2、次にこれまた /home/bio-math10/ の下で

cp olduser/.login newuser/
cp olduser/.emacs newuser/
cp olduser/.cshrc newuser/

3、それから /etc/passwd を編集

4、もひとつ/etc/shadow を編集

5、これも /home/bio-math10/ で

chown -R newuser newuser/
chgrp -R users newuser/

6、最後に新しく来た人を呼んで

passwd newuser

でパスワードを入力してもらう

 … … … … … … … … … 



一応説明しておくと、各手順は次のような意味を持っています。


まず1で新しいユーザのホームディレクトリを作ります。

次に2で必要なファイルを、既に存在するユーザのディレクトリから新しいユーザのディレクトリにコピーします。

/etc/passwd はユーザ情報(ユーザ名、ユーザID、グループID、パスワードなど)が書き込まれているファイルです。 3でこれを編集し、ユーザ情報を書き込むことで、実際にアカウントが作成されたと言えます。

/etc/passwd は誰にでも見ることのできるファイルなので、 bio-math10 ではパスワードをより厳重に管理するために、 /etc/shadow という一般ユーザからは見られないファイルでパスワードが管理されています。 ちなみに、 /etc/passwd でも /etc/shadow でもパスワードは暗号化されていますので、 設定したパスワードはそのままは見えません。ということで、4でパスワードを仮入力。

それから新しく作ったディレクトリとその中のファイルの所有者とグループを、chown と chgrp で変更するのが5です。

そんで、6で本人にパスワードを変更してもらって終了。

…とまぁ、こんな感じです。


私はみぞっち(仮)に教わったこの方法が唯一の方法だとずっと信じてその通りに実行していました。



ところが私がこれを教わってからおよそ半年後、研究室に新しいワークステーションが入ることになり、 私がとーや先生に遠隔操作されながらそのマシンのセットアップを行っていた時のことです。



とーや先生「じゃあ、tohya というアカウントを作ってください」
上原「わかりました。/home/ の下にディレクトリを作ればいいんですよね?」
とーや先生「なにそれ?だれに聞いたの?」
上原「えっ?だってみぞっち(仮)が…」

とーや先生「 みぞっち(仮)、× × じゃん … 」(ここで書けない表現があったため、伏字を使用)



…ということがありました。


このとき、とーや先生が授けてくださったコマンドが adduser です。 じゃあ今度は adduser を使って hoge というアカウントを作ります。

 … … … … … … … … … 

1、(どこにいてもいいから)

adduser hoge

 … … … … … … … … … 


これでアカウントができました。 ホームディレクトリも作成されていますし、所有者もグループも適切に設定されています。 パスワード入力をその場で hoge さんにしてもらえば、パスワードも後で入れる必要がありません。 つまり、上の方法の1〜6がたったの

adduser hoge

だけで終了してしまうのです。









みぞっち(仮)、× × じゃん …







…と書いてみましたが、みぞっち(仮)の方法も実は必要です。 というのは、duke, douglas, donald の3兄弟は、NIS(Network Information Service)でアカウント情報を管理しているため、 adduser を使うと問題が出てきます。 なので、duke, douglas, donald でアカウントを作るには、上のみぞっち(仮)の方法を使わなければなりません。 ただし、こちらではアカウント情報は /var/yp/ypfiles/passwd で管理されているため3、4の手順が少し違います。 /etc/passwd や /etc/shadow の編集ではなく /var/yp/ypfiles/passwd を編集した後、 /var/yp/ に移動してから

make

として、変更した設定を有効にしなければなりません。 ホームディレクトリを作るところも /home/bio-math10/ ではなく /home/bio-math40/ です。これを duke で行えば douglas, donald でアカウントを作る必要はありません。



NIS を使っていない他のホストでは adduser(もしくはuseradd)を使って問題ありません (adduser の方がオプションが要らないので useradd よりも簡単)。ちなみに adduser の設定ファイルは /etc/adduser.conf になっており、 これをいじくればホームディレクトリの作成される場所、新規ユーザのデフォルトでの所属グループ、などを変更できます。



# passwd ファイルの書式に関してはこちらに詳しく載っています。
# 複数ホストで同一ユーザのパスワードが一緒でいいなら、
# 別ホストの暗号化されたパスワードをコピー&ペーストすることで、
# それぞれのホストでいちいちユーザにパスワードを入力してもらう手間を省けます。
# それから、アカウントに使えるユーザ名は8文字以内です。
# 以前からいる他のユーザと同じ名前にならないようにも注意して下さい。


戻る