ログとログイン時の設定
前回までに,初期化プロセスの実行に必要なファイルやスクリプトがすべて完成した。最後に,passwdファイルにユーザーの設定を,profileファイルに後述するログイン・シェルが起動したときに反映される設定を記述する。さらに,syslog.confファイルとservicesファイルを作成してログやメッセージの取得に関する設定を記し,自分Linuxに必要なファイルをすべてそろえる。
なお,これらのファイルも先ほどのスクリプトと同様,/usr/local/src/origlinux/rootsys/etcディレクトリ以下に作成する。
● passwdファイル
passwdファイルには,自分Linuxを利用するユーザーを登録する。最低限,システム操作に関する全権限を持つユーザー「root」だけは登録しておこう(図7)。
図7●/usr/local/src/origlinux/rootsys/ etc/passwdファイル |
このように,ユーザー名,パスワード,ユーザーID,グループID,ユーザー情報(氏名など),ホーム・ディレクトリ,ログイン・シェルという順番に,「:」(コロン)で区切って記述する。ホーム・ディレクトリとログイン・シェルはそれぞれ,ユーザーがログインした時に表示あるいは実行されているディレクトリとシェルとして登録される。
● profileファイル
ログイン・シェルにbashが指定されていれば,profileファイルが,そのログイン・シェルの初期設定になる。そして,このprofileファイルを/etcディレクトリ以下に作成することで,すべてのユーザーのログイン・シェルに対してこの初期設定を反映できる。
ログイン・シェルに設定可能な内容はさまざまだが,自分Linuxでは実行ファイルが格納されているディレクトリへのパスとプロンプトの表示形式の2つを設定した(図8)。
図8●/usr/local/src/origlinux/rootsys/etc/profileファイル [画像のクリックで拡大表示] |
パス設定は,パスを設定したいディレクトリ名を「:」で区切りながら文字列として環境変数PATHに代入する。一方,プロンプト設定は,プロンプトとして表示したい文字列を環境変数PS1に代入する。
なおプロンプトの設定では,「\u」がログインしているユーザー名,「\h」がホスト名などといった特殊な文字列を使用できる。例えば,,「'[\u@\H]\$ '」と記すと,rootでログインした場合には「[root@mylinux]#」というプロンプトが表示される。
● syslog.confとservicesファイル
syslog.confファイルとservicesファイルは,rc3スクリプト内で記した,システム・ログとカーネル・メッセージを取得するデーモンに関する設定を記述する。自分Linuxでは,図9のように設定した。この設定では,カーネルからのメッセージをコンソールに表示したり,認証やメール,定期実行に関するジョブなどのログを特定のファイルに保存するようにした。
図9●/usr/local/src/origlinux/rootsys/etc/syslog.confファイル [画像のクリックで拡大表示] |
そして,システム・ログを外部から一元管理できるように,servicesファイルにsyslogdのサービス・ポート番号「514」を記述した(図10)
図10●/usr/local/src/origlinux/rootsys/ etc/servicesファイル |
自分linuxをHDDから起動
最後に,作成したスクリプトに実行権限を与えて,自分Linuxのルート・ファイル・システムを完成させる。
早速,完成したルート・ファイル・システムを用いて,自分LinuxをHDDから起動してみよう。手順は,前回の講座と同様だ。前回とは異なり,起動途中に「Kernel panic」が出力されて停止することなく,「mylinux login:」というログイン・プロンプトが表示されただろう。「root」と入力し,自分Linuxにログインしてみよう。
* * *
次回はいよいよ,フラッシュ・メモリーに自分Linuxのルート・ファイル・システムを書き込み,フラッシュ・メモリーから起動する自分Linuxとして完成させる。