体験!マイコンボードで組込みLinux

第18回 Fedora Coreの導入[その2]

この記事を読むのに必要な時間:およそ 14 分

リアルタイムクロックの追加

シングルユーザの場合はログイン機構を使わないのでリアルタイムクロックが不要でしたが,マルチユーザモードではユーザ管理に時刻を使用します。そのため,リアルタイムクロックがないとログイン機構が混乱をして正常にログインをすることができません。

T-SH7706LSRでリアルタイムクロックを常時動作させるには,初期スクリプト内でNTPサーバにアクセスして時刻を取得する方法と,電池によるバックアップの2種類があります。常時ネット接続環境にある場合は,起動時にNTPサーバにアクセスして時刻を取得します。具体的な方法については第7回の記事を参照してください。

常時ネット接続できない環境の場合は図1のように基板に電池ホルダを追加して,市販のCR2032電池を取り付けて時刻設定をします。

図1 電池ホルダを取り付けたT-SH7706LSRボード

図1 電池ホルダを取り付けたT-SH7706LSRボード

電子工作ができない方は,新規にTACより電池ホルダ付きオプションで購入してください。電子工作をする場合は以下のサイトで電池ホルダを購入し,半田付けで電池ホルダを取り付けます。

BCR型コイン電池ホルダー
URL:http://www.marutsu.co.jp/shohin_39993/

起動設定の修正

udevはデバイスファイルを自動で管理するシステムでPCでのディストリビューションでは欠かせないですが,組込みボードではPCほどデバイスの不定性がないので,udevを外してデバイスファイル固定で扱ってもかまいません。起動時間が気にならなければudevを外さなくてもいいと思います。

udevを外すには /etc/rc.sysinitファイルを編集し,エディタで「udev」を検索し,以下のようにコメントにしてudev起動を無効にします。

# /sbin/start_udev

起動時にはモジュール検索をするようになっていて,エラー表示が出るので,気になるようならば以下のコマンドでモジュール検索でエラーにならないようにします。

# mkdir /lib/modules/2.6.28.10
# depmod -a

マルチユーザの設定

アカウント作成とパスワード設定

FedoraCore7ではスーパーユーザでログインできないようになっており,スーパーユーザ権限が必要な場合は一般ユーザーからsudoコマンドを用います。

sudoコマンドが使えなかった場合はsuコマンドでスーパーユーザに入ります。そのため,この場合は適当な一般ユーザのアカウントを作成する必要があります。今回は guest という名称で以下のようにアカウントを作成します。

# useradd -g users guest

次にスーパーユーザと作成した一般ユーザのパスワードを設定します。

# passwd root
Changing password for user root.
New UNIX password:********
Retype new UNIX password:********
passwd: all authentication tokens updated successfully.
# passwd guest
Changing password for user guest.
New UNIX password:********
Retype new UNIX password:********
passwd: all authentication tokens updated successfully.

マルチユーザの確認

マルチユーザーの確認はシングルユーザーモードでloginコマンドを実行し,以下のように一般ユーザにログインできて,スーパーユーザにもなれることを確認します。

# login
login: guest
Password:********
[guest@localhost $ su
Password:********
[root@localhost guest]# exit
[guest@localhost$ exit

ランレベルの変更

ランレベルをシングルユーザの1番からマルチユーザの3番に変更しなければいけないので,/etc/inittabをリスト1のように変更します。

ランレベル変更は,リスト1の19行目を変更します。

ついでに,デフォルトでは複数の端末が起動するようになっていますが,46行目だけ残して,あとのgettysを削除してリスト1のように変更します。

リスト1 /etc/inittab

 1  #
 2  # inittab       This file describes how the INIT process should set up
 3  #               the system in a certain run-level.
 4  #
 5  # Author:       Miquel van Smoorenburg, 
 6  #               Modified for RHS Linux by Marc Ewing and Donnie Barnes
 7  #
 8 
 9  # Default runlevel. The runlevels used by RHS are:
10  #   0 - halt (Do NOT set initdefault to this)
11  #   1 - Single user mode
12  #   2 - Multiuser, without NFS (The same as 3, if you do not have networking)
13  #   3 - Full multiuser mode
14  #   4 - unused
15  #   5 - X11
16  #   6 - reboot (Do NOT set initdefault to this)
17  #
18 
19  id:3:initdefault:
20 
21  # System initialization.
22  si::sysinit:/etc/rc.d/rc.sysinit
23 
24  l0:0:wait:/etc/rc.d/rc 0
25  l1:1:wait:/etc/rc.d/rc 1
26  l2:2:wait:/etc/rc.d/rc 2
27  l3:3:wait:/etc/rc.d/rc 3
28  l4:4:wait:/etc/rc.d/rc 4
29  l5:5:wait:/etc/rc.d/rc 5
30  l6:6:wait:/etc/rc.d/rc 6
31 
32  # Trap CTRL-ALT-DELETE
33  ca::ctrlaltdel:/sbin/shutdown -t3 -r now
34 
35  # When our UPS tells us power has failed, assume we have a few minutes
36  # of power left.  Schedule a shutdown for 2 minutes from now.
37  # This does, of course, assume you have powerd installed and your
38  # UPS connected and working correctly.
39  pf::powerfail:/sbin/shutdown -f -h +2 "Power Failure; System Shutting Down"
40 
41  # If power was restored before the shutdown kicked in, cancel it.
42  pr:12345:powerokwait:/sbin/shutdown -c "Power Restored; Shutdown Cancelled"
43 
44 
45  # Run gettys in standard runlevels
46  1:2345:respawn:/sbin/mingetty ttySC1 vt100
47 
48  # Run xdm in runlevel 5
49  x:5:respawn:/etc/X11/prefdm -nodaemon

以上の設定でLinuxを再起動すると,通常のマルチユーザモードでFedora Core 7が起動します。

次回は

次回はFedora Coreでのネットワークサーバ設定について解説します。

著者プロフィール

みついわゆきお

1986年日立製作所入所,その3年後に自社ワークステーションでの開発業務をきっかけにBSDを経てLinux利用を始める。

1991年日立を退社し,その後,ボランティアでLinux関連ツールの整備と開発しながらWindows否定運動およびLinux普及運動を開始し,Linuxディストリビューション草創期にはPlamoLinuxのメンテナンスにもかかわる。

2001年ごろより非営利ベースでボードコンピュータの開発を開始し,やがて,無償によりハードとソフトを開発したH8マイコンボードの販売を秋月電子にて開始した。

現在,ボードコンピュータ用基本ソフトMES2.5や,SHプロセッサ向けLinuxパッチおよびTOPPERS/JSPパッチを無償で一般に提供しながら,ティーエーシーやエムイーシステムより原価率100%を目標(ただし,販売店の営業・販売費用や開発・製造の際の差損を除く)としたSuperHボードコンピュータを販売中。

また,現在でも頑固にMS社否定及びWindows撲滅運動に邁進中。