4. AX.25/NET/ROM/ROSE ソフトウェアのインストール

AX.25 機能のインストールを成功するためには、まず適切にカーネルを設定し、 その上で AX.25 ユーティリティをインストールする必要があります。

Tip: ソースからコンパイルしなおしてインストールするより、あらかじめコンパイ ルされたバイナリーのパッケージをシステムにインストールする方がお好みか も知れませんね。Debian や RPM 形式のパッケージは http://www.debian.orghttp://rpmfind.net をはじめとする様々 なアーカイブサイトで手に入れられます。 「AX.25」というキーワードを頼りに探してみてください。 ところで Debian Linux は多くの人から「アマチュア無線向き」なディストリ ビューションであると見られています。 アマチュア無線用のアプリケーションもたくさん Debian パッケージの形で提 供されています (このプロジェクトの創始者の一人がハムなのです)。

4.1. カーネルのコンパイル

Linux カーネルのコンパイルの手順についてよく知っているなら、この章は読 み飛ばしていただいて結構です。カーネルのコンパイルの際には適切なオプショ ンを選ぶことだけ気をつけてください。もしよく分からなければ、このまま読 みましょう。Linux Kernel HOWTO (訳注:日本語訳) も読むと参考になると思います。

通常カーネルソースを展開するための場所は /usr/srclinux というサブディレクトリに展開されます。 この作業のために root としてログインして以下のコマ ンドを順番に実行していきます。

# cd /usr/src
# mv linux linux.old
# tar xzvf linux-2.4.9.tar.gz
# cd linux

カーネルソースを展開したなら、つぎに設定用のスクリプトを実行して、あな たのお持ちのハードウェア環境に適切なオプションや、カーネルに組み込みた いと思っている機能のオプションを選択する必要があります。 以下のコマンドにより行います。

# make menuconfig

X を使っているなら以下のコマンドでグラフィックインターフェイスが使える でしょう。

# make xconfig

あるいは以下の方法もあります。

# make config

以降の説明ではフルスクリーン (menuconfig) の方法を使うことにします。 これの方が各オプションの項目を動きまわりやすいと思うので。 ですが、あなたがもっとも使いやすいと感じる方法を選んでもらえば結構です。

どの方法でも「Y」とか「N」とか答えるオプションの一覧が表示されるでしょ う。(モジュールを使うなら「M」と答えます。ただし説明を簡単にするために ここでは触れません。必要に応じて読み換えてください。)

AX.25 の設定に関係するオプションは以下の通りです:

Code maturity level options  --->
    [*] Prompt for development and/or incomplete code/drivers
    ...
General setup  --->
    ...
    [*] Networking support
    ...
Networking options  --->
    <*> UNIX domain sockets
    ...
    [*] TCP/IP networking
    ...
    [?] IP: tunneling
    ...
Amateur Radio Support --->
    --- Packet Radio protocols
    [*]   Amateur Radio AX.25 Level 2 protocol
    [?]     AX.25 DAMA Slave support
    [?]     Amateur Radio NET/ROM protocol
    [?]     Amateur Radio X.25 PLP (Rose)
    AX.25 network device drivers  --->
    <?> Serial port KISS driver
    <?> Serial port 6PACK driver
    <?> BPQ Ethernet driver
    <?> High-speed (DMA) SCC driver for AX.25
    <?> Z8530 SCC driver
    <?> BAYCOM ser12 fullduplex driver for AX.25
    <?> BAYCOM ser12 halfduplex driver for AX.25
    <?> BAYCOM picpar and par96 driver for AX.25
    <?> BAYCOM epp driver for AX.25
    <?> Soundcard modem driver
    [?]   soundmodem support for Soundblaster and compatible cards
    [?]   soundmodem support for WSS and Crystal cards
    [?]   soundmodem support for 1200 baud AFSK modulation
    [?]   soundmodem support for 2400 baud AFSK modulation (7.3728MHz crystal)
    [?]   soundmodem support for 2400 baud AFSK modulation (8MHz crystal)
    [?]   soundmodem support for 2666 baud AFSK modulation
    [?]   soundmodem support for 4800 baud HAPN-1 modulation
    [?]   soundmodem support for 4800 baud PSK modulation
    [?]   soundmodem support for 9600 baud FSK G3RUH modulation
    <?> YAM driver for AX.25

*」で示したオプションは「Y」と答えなけ ればならないものです。 残りのオプションはあなたがお持ちのハードウェアや、他のオプションをどう 組み込むかにもよります。 いくつかのオプションについては後でより詳しく説明しますので、まだどれが 必要か分からなければ先の方を読んでからこの箇所に戻ってきてください。

カーネルの設定がおわれば新しいカーネルを問題なくコンパイルできることで しょう。

# make dep
# make clean
# make zImage

arch/i386/boot/zImage を必要な場所に移動し、次回ブー ト時にこのカーネルが立ち上がるよう /etc/lilo.conf を変更してから lilo を実行します。

Note: (訳注) カーネルのコンパイルの仕方については各ディストリビューションの推 奨する方法に従ってください。

4.1.1. カーネルモジュールについてちょっとだけ

AX.25 はたまに使うだけだからシステムリソースの消費量を減らすためにもオ ンデマンドでロードしたりアンロードしたりしたい、というのならドライバー をモジュールとしてコンパイルするのが便利でしょう。 ただし、設定はより複雑になりますから、モジュール化したドライバーが動作 しないといった問題の起こることもあります。 ドライバーをモジュールとしてコンパイルするよう指定した場合、各モジュー ルを適切な場所にインストールするために以下のコマンドも実行する必要があ るでしょう。

# make modules
# make modules_install

プログラム kerneld がカーネルモジュールを見つけら れるように /etc/modules.conf にいくつか項目を追 加する必要があります。以下のように追加または変更してください。

alias net-pf-3     ax25
alias net-pf-6     netrom
alias net-pf-11    rose
alias tty-ldisc-1  slip
alias tty-ldisc-3  ppp
alias tty-ldisc-5  mkiss
alias bc0          baycom
alias nr0          netrom
alias pi0a         pi2
alias pt0a         pt
alias scc0         optoscc    (または、その他の SCC ドライバーを一つ)
alias sm0          soundmodem
alias tunl0        newtunnel
alias char-major-4 serial
alias char-major-5 serial
alias char-major-6 lp

Tip: Debian 系の Linux システムではこのエントリーを /etc/modutils/aliases に書き込んでから /sbin/update-mpodules を実行します。

4.2. AX.25 用ライブラリー、ツール、アプリケーション

新しいカーネルのコンパイルと起動がうまくいったら次は ax25 用のライブラ リー、ツール、アプリケーションの各プログラムをコンパイルしてインストー ルします。

libax25 をコンパイルしてインストールするには以下のコマンドを順番に実行 してください。

# cd /usr/src
# tar xzvf libax25-0.0.7.tar.gz
# cd libax25-0.0.7
# ./configure --exec_prefix=/usr --sysconfdir=/etc --localstatedir=/var
# make
# make install

Tip: configure コマンドの引数は各ファイルが /usr 以下の bin, sbin, etc, man といった「標準」の場所に インストールされるよう指定するものです。 configure をオプションをつけずに起動すると全てのファイルを /usr/local 以下の各サブディレクトリに置くようになり ます。 こうすると設定ファイルが /usr/usr/local にバラバラに置かれるということが起きたり します。 そうならないようにしたければ、インストール作業の最初の段階で /usr/local/etc/ax25/etc/ax25 へのシンボリックリンクになるようにしておくことです。 そうすれば設定ファイルがどこへいってしまったか、などと悩んだりすること はないでしょう。

このインストール作業がはじめて、つまりそのマシンに ax25 用プログラムを 今まで一度も入れたことがなければ、/etc/ax25/ 以下に 設定ファイルのサンプルをインストールするために以下のコマンドを実行して ください。

# make installconf

次に AX.25 ツールも同様な手順でコンパイル、そしてインストールします。

# cd /usr/src
# tar xzvf ax25-tools-0.0.6.tar.gz
# cd ax25-tools-0.0.6
# ./configure --prefix=/usr  --sysconfdir=/etc --localstatedir=/var
# make
# make install
# make installconf (設定ファイルをインストールする場合)

最後は AX.25 アプリケーションのインストールです。

# cd /usr/src
# tar xzvf ax25-apps-0.0.4.tar.gz
# cd ax25-apps-0.0.4
# ./configure --prefix=/usr  --sysconfdir=/etc --localstatedir=/var
# make
# make install
# make installconf (設定ファイルをインストールする場合)

もし次のようなメッセージが表示されたら、

gcc -Wall -Wstrict-prototypes -O2 -I../lib -c call.c
call.c: In function `statline':
call.c:268: warning: implicit declaration of function `attron'
call.c:268: `A_REVERSE' undeclared (first use this function)
call.c:268: (Each undeclared identifier is reported only once
call.c:268: for each function it appears in.)

ncurses パッケージが正しくインストールされているか 確認してください。 configure スクリプトはパッケージが標準の場所にインストールされているか を確認しますが、なかには変な場所にインストールされているため見つけられ ないケースもあります。