一括ユーザー登録

サーバー構築    squidのログ解析 Linux

こに書きとめてあることは、皆さんに御披露することよりも、寧ろ私の備忘録です。もっと色々簡単な方法もあると思いますが、
「もっと良い方法があるよぉ」とか分りましたらメールをくださいね。


生徒のユーザー登録を簡単にすませる方法


 Linuxを使って管理するとなると、はじめはユーザーさんの登録をしないとね。10人くらいなら手動でやるけれど、何百人もとなると、いちいちやってられない。大学の管理者なら何千人ですよね。私も生徒のアカウントを登録する時期になってしまった。みんな 「生徒のアカウント作ったって毎年続きゃしないよ。やめればー」とおっしゃる方が多いです。そりゃそうかもしれないが、何年か作れば、そのうちもっと簡単な運用がでてくるでしょうよ。スクリプトで一発ってのが一番当たり前なんでしょうが、Linuxで飯食ってない私としましてはスクリプトなんぞ書けないよ。・・・と言うことで試行錯誤のユーザー登録の道を披露いたしましょう。

材料


生徒のIDとパスワードを作るのだけれど、IDの方は平成15年度生徒だから初めに15をつけとけば後で、幸せになれそう・・パスワードの方は英数字8文字だよね。カンマで区切ったデータ list.txtをつくる。1行に

loginname,password,groupname,realname,shell の5フィールドを書くのだが、loginnameと、passwordがあれば良いです。これをEXCELで作る。シートの1列目にはユーザー名、2列目にパスワードが入る。ユーザーID、パスワードは英数字8文字以内なので、生徒名の英数字版を用意しないといけない。手持ちの生徒名はひらがな名しかないので、それをローマ字変換する。これには「ひらがなをローマ字に変換.xls」というのがWEBにあったので利用させていただきました。まずこれでローマ字可成功です。次に名前の前に15をつけたいと思います。列をローマ字名の前にいれてそこに15をいれコピー。CONCATENATE関数で結合する。その後、余分な文字をLEFTB関数で取ってしまう。これでユーザー名は英数字8文字でできた。xlsファイルだけと、csvファイルに変えておく。<list.csv>

 次はパスワード生成です。パスワードもなかなか考えるのが難しい。ここでフリーソフトを活用。WEBからpfs12.lzhを持ってくる。
InputFileにlist.csv指定する。list.csvには1列に ユーザID、2列目にエクセル関数randで作った数字を入れておく。output用 output.xlを作っておく。pfs12を起動し、input fileにlist.csv,output fileにoutput.xlを指定する。そこでencodeを押す。ここまではwindowsでやったのですが、これからLinuxで動かすわけですが、私はここではまりました。どうやってもloginできないのです。実は、ここで忘れてはいけなことがあったのです。

          すなわち、

          「ファイル保存のとき、改行コードを<LF>にしないといけなかった」
 
                              のです。私はここでずいぶんはまりました。そこでどうしたかというと、list.csvをそのままLinuxに保存するのではなく、秀丸エディターで 改行コードを変えて保存しました。


料理方法

 ではここからがレシピです。
Linuxで簡単にユーザー登録えきるPerlスクリプトがあるんですなぁ。あっ、もちろん私が作ったわけではありませんよ。toorockってやつです。インストールはそこのサイトをみてくださいね。まぁ、解凍したtoorockディレクトリにlist.txt(list.csvをリネームしたやつ)とtoorock-0.1.3.plがあれば良い。

 そこで、    ./toorock-0.1.3.pl  

                   とやれば一発で何百人のアカウントを作れるのです。私も試しに作っていろいろlogindしてみました。初めは login failedがつづいて原因がわかりませんでしたが、私の経験ではどーしても原因が分らないときは 改行コードでしたね。


この次はユーザー制御をやってみたいと思います。パーミッション関係を極めます。





HOME