NetBSD/mac68k 1.2をインストールする


竹岡 尚三、小前 晋 (AXE, Inc.)

Copyright (c) 1996-1998 AXE, Inc. All rights reserved.

目次

  1. はじめに
  2. MacBSDの稼働するハードウェア
  3. インストールの準備
  4. インストール
  5. MacBSDの起動と設定
  6. ネットワークの設定
  7. カーネルの再構築
  8. ファイル・システム
  9. X11R6のインストール
  10. フリーソフトウェアと日本語環境のインストール
  11. おわりに
  12. 参考URL

インデックス・ページに戻る

はじめに
目次へ次の章へ

NetBSD/mac68k (以下MacBSDと略記)はMPUに680X0を使用し たMacintosh(以下Macと略記)のためのNetBSDである。

NetBSD は、先進的な実験が行われているBSD系OSのひとつ である。
BSD系OSはインターネット・プロトコル (TCP/IP)を広めるのに貢献したOSであ り、現在もインターネットの先進的実験は主にBSDを使用(改造)して行われてい る。 NetBSDは 4.4BSDLiteをベースとしている。

このNetBSDがMacでも動く。移植を行ったのは、Allen Briggsらを中心とするAliceというグループである( MacBSDのホームページ )。

本文書は、NetBSD-1.2をMac68kにポーティングした

NetBSD1.2/mac68k
について述べる。
本文書では、MacBSDのインストール方法を紹介した後、 MacBSD用のX windowシ ステム(X11R6)と、MacBSDでの日本語環境について述べる。

また、筆者らは、過去に本文書と似た内容の文章をUNIX USER誌に発表し、 MacBSDを紹介している。

竹岡によるNetBSD1.0/mac68k(UNIX USER誌 1995/Jun)
小前によるNetBSD1.1/mac68k(UNIX USER誌 1996/Oct)

以下にMacBSDの概要を列挙する。

MacBSDはMacOSの代りとなって動作するソフトウェアで、 MacOSと同時には動作できない。この点は、MkLinuxと同様で ある。MacOSと共存できるUNIXライクなシステムはMacMiNTと MachTenが知られている。

MacOSが使えなくなってしまうことは、熱心なMacユーザに とっては、大変に残念なことである。だが、本物のBSDはそ れなりに楽しめるであろう。インターネットの先進的な機能 を試したり、インターネットのゲートウェイを構成したりで きるので、MacOSをなくした代りに得られる価値は非常に大 きい。一般に流布しているインターネット関連のフリー・ソ フトウェアの類は、BSD系OS用に作られていることが多い。 これらのMacBSDへの移植は容易であろう。また、インターネ ットのゲートウェイやファイア・ウォールを旧いMacで実現 できることは、Macを大量にかかえるサイトには、朗報では ないだろうか。

NetBSD1.2/mac68kは、NetBSD1.0/mac68kと比べて、以下に挙げるよ うな進展があり、かなりワークステーションらしく使えるよ うになった。

NetBSD1.2/mac68kは、かなり安定して動作している。現在のMacBSDは十二分に 実用に耐える。



MacBSDの稼働するハードウェア
目次へ前の章へ次の章へ

MacBSD 1.2 のドキュメントによれば、インストールには、最小限4MBのメモ リと60MB程度のディスク容量が必要である。
実用的に使うには、少なくとも8MB のメモリと200MB-300MBのディスク容量が必 要だと記述されている。

サポート機種については、 MacBSDのmachine status pageに詳しい。
サポートされる機種、デバイス等は、以下の通り。

標準カーネルのサポート機種:
上記機種でのサポート・デバイス: John P. Wittkoski氏のカーネル (ADBTEST#139)で動作する機種:
シリアル・コンソールは必要無いが、一部機能しか使用できない機種:
シリアル・コンソールのみ(シリアルttyまたはSLIP)から起動、使用できる機種:
PowerBook 180, Color Clasic, LC520, PowerBook 160/165c/170/145, Classic II, Performa 200
シリアル・コンソールのみ、内蔵Ether動作、SCSI動作不可の機種:
Quadora 605, LC475, Performa 475/476
サポートされてないが、よくされる質問:


なお、本稿のために筆者が使用した構成は、

本体:
Macintosh SE/30 (68030, FPU内蔵)
メモリ:
8MBytes/ 20MBytes
ADBキーボード:
Apple Keyboard II
NeXT社製 ADB Keyboard
ADBマウス:
Apple社製 ADB Mouse
米Logitech社製 MouseMan Cordless for Macintosh Model#0106
NeXT ADBマウス
EtherNetカード:
Asante MacCon+30iET64
HDD:
QUANTUM LPS340S (340MBytes)
CDROMドライブ:
PLEXTOR DM-5028 (2倍速)
Zipドライブ:
Zip Drive
MOドライブ:
(日本の)ロジテック社製 LMO-400 (FUJITSU M2512A)
である。

メモリは8MBと20MBの2通りを試用した。8MBでも、X windowは普通に稼働した。またカーネルの再構築に要する時 間でも、20MBと8MBでは数十分程度の差しか出なかった。し かし、8MBのメモリは大規模なソフトウェアのコンパイルに は実用的ではないだろう。

今回試用したキーボードは、Apple社製のKeyboard IIと NeXTのキーボードである。どちらも良好に動作した。

NeXTキーボードというのは、秋葉原や大阪日本橋のジャン ク屋で売られているNeXT社のロゴの入った、ADBプロトコ ルの黒いキーボードである。裏にはNeXT社の銘板までついて いるので、偽物ではないだろう。このキーボードはコントロ ール・キーが'A'キーの左隣に位置しているので、UNIXユー ザには使い易いだろう。

また、今回試用したマウスは、Apple社純正ADB Mouse、 Logitech社の3ボタン・マウス、NeXTの2ボタン・マウスの3 種類である。どれもまったく問題なく使えた。

MacBSDのX windowはADBの3ボタン・マウスをサポートして いる(1ボタンでも使用できる)。X windowのソフトウェアは3 ボタン・マウスの使用を前提としているものが多いので、 3 ボタン・マウスが使い易くてよいだろう。

現在、日本で入手が容易なMac ADB用の3ボタン・マウスは、 米Logitech社のものだけであろう。今回、筆者らは日本橋の T-Zoneで購入した。なお米Logitech社は日本では「(株)ロジ クール」というブランド名を使用している(日本のLogitec とは無関係)。

NeXTのマウスは、キーボードと同時に購入した物である。 NeXTマウスの右ボタンはX windowの中ボタンに対応する。

筆者がZipドライブ、MOドライブを試用したところでは、 異常は見当たらなかった。(しかし問題がないとは保証され ていない)



インストールの準備
目次へ前の章へ次の章へ

MacBSDのインストール方法は、以前にUNIX USER誌に紹介した方法からほと んど変化していない。UNIX USER誌 1995/Jun 1996/Oct を読まれた方は、本章を読む必要はないだろう。

まず、HDDにA/UXパーティションを作成する。MacBSDには、 2つのA/UXパーティション、「Root&User」と「swap」が必 要である。A/UXパーティションの作成方法は、 別文書 を用意したので、そちらを参照していただきたい。

SwapパーティションはINSTALLドキュメントでは、実メモ リの倍程度が勧められている。しかし、本格的な使用を考え るなら、30MB程度はとっておくべきだろう。

パーティションができたならば、次の作業に移る。

今回は、必要なファイルをすべてローカル・ディスクに持っ てきて作業した。本稿では、ローカル・ディスクに全ファイ ルが存在しているとして、説明を進める。ただし、 AppleShareを使用している場合には、実行速度が遅いだけで、 まったく同じ事が行われるはずである。

ローカル・ディスクにファイルを持ってくるには、いくつ かの方法がある。例えばMacにCD-ROMドライブがついていれ ば、MacOSでCD-ROMをマウントし、それをコピーすれば良い。 筆者の場合は、NCSA Telnetのftp サーバ機能を使用し、 SUNからftpプロトコルでMacSE/30に転送した。

ftpする場合、NetBSD-1.2/mac68k/mac_utils/*.hqx は TEXTモードで転送し、 NetBSD-1.2/mac68k/mac_utils/*.binや NetBSD-1.2/mac68k/{binary,X11}/ の下のアーカイブされたファイルはBINARYモードで転送するの が便利で良い。

ファイルが揃ったら、次にMacBSD専用のインストール・ソ フトウェアを準備する。NetBSD-1.2/mac68k/mac_utils/ の下にある、以下 の 4つのファイルを展開する。ただし、mode32は旧い ROMのMacのみ必要である(後述)。

mkfs.cpt.hqx
Installer1.1.sea.hqx
mode32-7.5.hqx
Booter1.9.4.sit.bin

展開するには、StuffIt Expanderを起動し、「File」メニュー の「Expand…」を選択する。すると、ファイル指定ダイアロ グが開くので、所望のファイルを指定する。これを4回繰り 返して、Mkfs, NetBSD/Mac Install Utility 1.1, MODE32 (7.5)の3つのMacOSのアプリケーションと、「Booter1.9.4 Folder」 というフォルダを得る。

StuffIt Expanderは*.hqxや*.binをデコードすると同時に*.cpt(や*.sit や*.sea)アーカイブも展開してしまう。 が、単純なBinHqxデコーダを使用 した場合は、*.cptというファイルができるだけだろう。 *.cptというのは、Compacterというアーカイブ兼圧縮ソフト ウェアで作成したアーカイブである。*.cptを解凍するには、 なんらかのCompacterの解凍ソフトウェアが必要である。

MODE32は、旧いROMのMacに必要な機能拡張である。今回、 MacBSDのBooterはMacOSの32ビット・アドレッシング・モー ドで動作するアプリケーションになった。しかし、旧いROM のMacはそのままでは、MacOSを32ビット・アドレッシング・ モードにできない。そこで、MODE32という機能拡張によって、 MacOSが32ビット・アドレッシング・モードを使えるように する。

旧いROMのMacとは、具体的には、SE/30,MacII, IIx, IIcx など、Macの世界でいう「32bitクリーンでないROM」を搭載 した機種である(MacBSDがサポートするほとんどの機種であ る)。

今回のMacBSDには、MacOS System7.5用のMODE32が含まれ ている。MODE32をMacOS7.5にインストールするには、上で得 られた「MODE32(7.5)」を起動する。すると自己解凍(図1)し、 「MODE32 Installer」というフォルダが得られる。さらに、 そのフォルダ内のMacOSのアプリケーション「MODE32 Installer」を起動(図2)し、「Install」をクリックする。 これで、MODE32がシステム・フォルダ内の「Extensions(機 能拡張)」にインストールされる。MacOSを再起動すれば、 MODE32が有効になる。



インストール
目次へ前の章へ次の章へ

さて、A/UXパーティションはできた。必要なファイルも揃っ た。ユーティリティ・コマンドもできた。ということで、い よいよ、MacBSDのインストールである。

まず、Mkfsでファイル・システムを作る。しかし、パーティ ションはもうあるので、ディスク・ラベルを指定するような 事もない。本当にあっけなく終る。

  1. Mkfsをダブルクリックして起動する。図3のようなダ イアログ画面が出るので、OKをクリックする(returnキーを 押下してもよい)。



    図3 Mkfsの起動画面



  2. SCSIデバイスの一覧が出るので、所望のHDDを選択する(図4)。 ここでは必ずSCSI ID番号のラジオ・ボタンをクリックしなければならない。



    図4 MkfsのSCSIデバイス選択



  3. パーティション一覧が出るので所望のパーティション を「FORMAT」する(図5)。



    図5 Mkfsのパーティション選択とフォーマット



  4. エラー確認ダイアログが出るので、「I Read it」を クリックする。
以上で終りである。

次に、ファイルをインストールしていく。これがもっとも 時間のかかる作業である。しかし、 NetBSD-1.2/mac68k/binary/* のファイルが正しく持って来れていれば、この作業もトラブルは出ないだろう。

  1. NetBSD/Mac Install Utility 1.1を起動する。

  2. SCSIデバイスの一覧が出るので、所望のHDDを選択する(図6)。



    図6 InstallerのSCSIデバイス選択



  3. 「File」メニューの「Build Devices」を選んで/dev/ 下のデバイス・ファイルを作る(Installは時間がかか るため、筆者はBuild deviceを忘れがちである。よっ て、先にデバイスを作る事にしている)。

  4. 「File」メニューの「Install」を選ぶ。

  5. すると、ファイル選択ダイアログが現れる(図7)ので、 netbsd12 を選択し「add」ボタンを押す。 以降同様に、base12, etc12, misc12 等を選択し 「Add」ボタンを押す。



    図7 Installerのファイル選択



  6. 必要なファイルを選択し終ったら、 「Done」ボタンを押し、まとめてインストールさせる。

次々、全部インストールを行えば良い。

ただし、netbsd12, base12, etc12 があれば最低限の起動はできる (Mac SE/30では、netbsd12, base12, etc12 のインストールに約1時間かかった)。 残りのインストールは、後からでも可能なので、最低限のインストールを済ま せたら、先に進んで、MacBSDが起動することを確認した方が よいだろう。


MacBSDの起動と設定
目次へ前の章へ次の章へ

今回、MacBSDのBooterはMacOSの32ビット・アドレッシン グ・モードで動作するアプリケーションになった。

MacOSを32ビット・アドレッシング・モードにするには、 「Control Panels(コントロール・パネル)」の「Memory(メ モリ)」を開き、「32-bit addressing(32ビットアドレス)」 をOnにする(図8)。この設定を有効にするために、 MacOSを 再起動する必要がある。 (注意:前述の通り、旧いROMのMac ではMODE32を入れておかなければ「32-bit addressing(32ビ ットアドレス)」が選択できない)



図8 32ビット・アドレッシング・モードに設定


さて、いよいよ、MacBSDを起動しよう。

「Booter1.9.4 Folder」フォルダ内のMacOSのアプリケーション 「NetBSD/Mac68k Booter」をダブルクリックして起動する。画面はほとん ど変化せず、メニューバーのメニュー項目だけが、変わって いる。

  1. 「Options」メニューの「Booting…」を選ぶ。

  2. 図9のような画面が出る。



    図9 BooterのPreferences



  3. Kernel Nameを「netbsd」に設定する。

  4. Partition Nameを「BSD Root」に設定する。

  5. Root SCSI IDを適切なHDD SCSI番号に設定する。

  6. Auto-size RAMのチェックボックスをチェックする。

  7. GMT Bias(min)を540に設定する。(日本(JST)はGMTに 対して、9時間*60分=540分の時差がある)

  8. 変更内容をセーブするために、「File」メニューの 「Save Preferences」を選択する。

  9. 「Options」メニューの「Boot Now」を選ぶと、 MacBSDの起動が始まる(図10)。



    図10 MacBSDの立ち上げ画面の様子



  10. デバイスがプローブされた後、最終的にプロンプトが 出る。

プロンプトが出れば、一通りなんでもできると思う。 MacBSDのインストールはほぼ成功していると考えて大丈夫で ある。

最低限のインストールが確認できたら、halt -qなどとし て、MacBSDを終了する。必要があれば、NetBSD/Mac Install Utility 1.1によるファイルのインストールを続ける。

次にMacBSDを起動した時にはマルチユーザ・モードで起動 し、gettyがプロンプトを出してくるだろう。これでインス トールは完了である。gamesまですべてのバイナリをインス トールした場合、HDDの容量は47.5MB程度である。

後は、マシン名、タイムゾーン等の設定をしておく。手順 は他のNetBSDと同様である。マシン名は、/etc/mynameに設 定する。今回は、se30というマシン名にした。タイムゾーン は、以下のように日本時間(東京)に設定する。(以下、プロ ンプトが "#" の場合は、rootの権限で実行していることを 示す)

# cd /etc
# mv localtime localtime.ORG
# ln -s /usr/share/misc/zoneinfo/Asia/Tokyo localtime

これで、本物の実用的なBSDが手に入った。さらに、グル ープやユーザを追加したりすると良いだろう。



ネットワークの設定
目次へ前の章へ次の章へ

MacBSD 1.1からイーサネット・カードがサポートされてい る。ネットワーク設定のコマンド等は、通常のBSD系OS とまっ たく同じである。なお、設定はrootとなって行う。

まず、/etc/hosts をリスト1のように編集する。IPアドレ スや、他のマシン名などは、各サイトで適切なものを使って もらいたい。この例では、MacBSDをインストールしたマシン 名をse30、IPアドレスを10.0.0.1、他のマシン名をfoobar、 そのIPアドレスを10.0.0.2としている。

------------------------------------
リスト1 /etc/hosts
#
127.0.0.1       localhost
#
10.0.0.1        se30 loghost mailhost
10.0.0.2        foobar
.....
------------------------------------

続いて、イーサネット・インターフェースにIPアドレスを 設定する。

# ifconfig -a 
ae0: flags=8822<BROADCAST,NOTRAILERS,SIMPLEX,MULTICAST>
ppp0: flags=8010<POINTOPOINT,MULTICAST>
ppp1: flags=8010<POINTOPOINT,MULTICAST>
lo0: flags=8009<UP,LOOPBACK,MULTICAST>
	inet 127.0.0.1 netmask 0xff000000
sl0: flags=c010<POINTOPOINT,LINK2,MULTICAST>

とし、イーサネットのインターフェース名を確認する。今回 使用したasante社のイーサネット・カードのインターフェー ス名はae0である。

次に

# ifconfig ae0 inet se30

としてIPアドレスを設定する。これでイーサネット・インター フェースが使用可能になった。

次のようにpingコマンド等でテストする。同様に他のマシ ンからMacBSDに向けてもpingをテストしてみたほうがよい。

# ping se30
PING se30 (10.0.0.1): 56 data bytes
64 bytes from 10.0.0.1: icmp_seq=0 ttl=255 time=2.322 ms
64 bytes from 10.0.0.1: icmp_seq=1 ttl=255 time=2.569 ms
64 bytes from 10.0.0.1: icmp_seq=2 ttl=255 time=2.568 ms
^C
--- se30 ping statistics ---
3 packets transmitted, 3 packets received, 0% packet loss
round-trip min/avg/max = 2.322/2.486/2.569 ms
# ping foobar
PING foobar (10.0.0.2): 56 data bytes
64 bytes from 10.0.0.2: icmp_seq=0 ttl=255 time=2.671 ms
64 bytes from 10.0.0.2: icmp_seq=1 ttl=255 time=2.924 ms
64 bytes from 10.0.0.2: icmp_seq=2 ttl=255 time=2.942 ms
^C
--- foobar ping statistics ---
3 packets transmitted, 3 packets received, 0% packet loss
round-trip min/avg/max = 2.671/2.845/2.942 ms

以上が、手動での設定方法である。

MacBSD起動時に自動的に設定するには、以下のように、 /etc/hostname.ae0というファイルを作成するだけでよい(こ の例はae0インターフェース用である。インターフェースの 名前に応じて"ae0"を変更し、同様のファイル作成すればよ い)。

# echo "inet se30" > /etc/hostname.ae0

今回使用したMacBSDのイーサネットは非常に快調である。 通常のTCP/IPユーティリティ群は当然のこと、NFSも快調に 動作する。


カーネルの再構築
目次へ前の章へ次の章へ

NetBSDやFreeBSDの醍醐味の一つは、カーネルの再構築が 気軽にできることであろう。MacBSDのカーネルの再構築は、 他のNetBSDと同様の手順でよい。ここでは、NFSサーバとな れるように、カーネルを再構築してみる。

カーネルのコンパイル時にはソースコードと合わせて約 43MB程度のディスク容量を必要とする。

カーネルの再構築には、NetBSD-1.2/source/ksrc12/ksrc12.?? を使用する。これらのファイルを以下のように展開すると、 /usr/src/sysにカーネルのソースが置かれることになる。

# cat ksrc12.?? | tar xvfz - -C /

カーネルの再構築には、まず/usr/src/sys/arch/mac68k/conf/ にあるコンフィギュレーション・ファイルを、必要に応じて 編集する。なお、作業はrootとなって行う。

今回はNFSサーバ機能を追加するために、GAZONKというコ ンフィギュレーション・ファイルを作成することにする。 GAZONKは既存のGENERICというコンフィギュレーション・フ ァイルをほんの少し変更する。

具体的には

#options NFSSERVER

から始まる行の行頭の'#'文字を消して有効とするだけで、 NFSサーバ機能を使用するコンフィグレーションとなる。 GENERICをGAZONKにコピーし、エディタで編集すればよい。

この後、このコンフィギュレーション・ファイルGAZONKを 用いて、以下の手順でカーネルを再構築し、カーネルを置き 換える。

# config GAZONK
# cd ../compile/GAZONK
# make depend && make
# mv /netbsd /netbsd.old
# cp netbsd /

さて、これでカーネルの再構築が済んだ。新しいカーネル でMacBSDを起動してみよう。もしも新しいカーネルで不都合 が起きた場合は、Booterの「Kernel Name」に、古いカーネ ル名(netbsd.old)を指定して再起動し、新しいカーネルの不 具合を修正すればよい。

MacBSDのドキュメントでは、カーネルの再構築には、 8MB メモリ搭載のMac SE/30で、約1.5時間かかると書かれている。 しかし、筆者の環境ではメモリが20MBと非常に多いにも関わ らず、約4時間が必要であった(8MBでも数十分の差しかない)。

NFSサーバの設定については後述する。


ファイル・システム
目次へ前の章へ次の章へ

ここでは、NFS、ISO9660/RockRidge形式のCD-ROM、UFSの MOとZIPドライブのマウント法ついて述べる。さらに、HFSの ハードディスクやMOやZIPを読むツールについても述べる。

1) NFSクライアントとNFSサーバ

GENERIC_62のカーネルでは、NFSクライアントとしては動 作するが、 NFSサーバにはなれない。NFSサーバ機能を使用 するには、NFS_27等のカーネルを使うか、前章に書いたよう にカーネルを再構築する。

NFSクライアント機能を使うには、/etc/netstart内の

nfsclient=NO
nfsclient=YES
に書き換える。

また、NFSサーバとするには、

nfsserver=NO
nfsserver=YES
に書き換える。どちらも書き換え後、再起動する(もしくは、 /etc/rcを参照して、同様のコマンドを手動で実行してもよ い)。

NFSサーバの場合、エクスポート(export)するディレクト リ等の設定を、以下のように/etc/exportsに記述し、mountd に対してHUPシグナルを送る(もしくは、MacBSDを再起動し てもよい)。以下の例では、"/"を全てエクスポートしている。

# cd /etc
# echo "/ -maproot=0:0 -alldirs" > /etc/exports
# kill -HUP `cat /var/run/mountd.pid`

エクスポートされているかどうかは、mountコマンドで、 以下のように確認できる。

# mount
/dev/sd0a on / type ffs (NFS exported, local)
kernfs on /kern type kernfs (local)
procfs on /proc type procfs (local)

2) CD-ROM

MacBSDでは、ISO9660/RockRidge形式のCD-ROMを読むこと ができる。(残念ながら、HFSのCD-ROMを読む手段はないよう である)

CD-ROMドライブをMacOSで使用する場合と同様に接続して、 MacBSDを起動する。ISO9660/RockRidge形式のCD-ROMメディ アを挿入する。インストール直後はCD-ROM用のデバイスがな いので、以下のようにcd0デバイスを作成する。

# cd /dev
# sh MAKEDEV cd0

マウント・ポイントとなるディレクトリを作成し、読み取 り専用でマウントできる。

# mkdir /cdrom
# mount -t cd9660 -o ro /dev/cd0a /cdrom


3) MOとZip

MacBSDでは、MOとZipは、ハードディスク(sdデバイス)と して見える。デバイス番号は、SCSI IDの小さい順番に0か ら割り振られる。起動ハードディスクがsd0となるように SCSI IDを割り当てる必要がある。決して、 MOやZipのSCSI IDを、MacBSDの起動ハードディスクより小さい番号にしては ならない。

MOドライブ(またはZipドライブ)をMacOSで使用する場合と 同様に接続して、MacBSDを起動する。MO(またはZip)のメデ ィアを挿入する。MO(またはZip)をUFSとして使用するには、 リスト2を/etc/disktabに追加し、以下のようにUFSを作成す る。この例では、cパーティションのみを使用している。


(MOの場合)

# disklabel -w -r sd1 mo230
# newfs sd1c
Warning: 140 sector(s) in last cylinder unallocated
/dev/rsd1c:  446324 sectors in 218 cylinders of 64 tracks, 32 sectors
	217.9MB in 14 cyl groups (16 c/g, 16.00MB/g, 3840 i/g)
super-block backups (for fsck -b #) at:
 32, 32832, 65632, 98432, 131232, 164032, 196832, 229632,
 262432, 295232, 328032, 360832, 393632, 426432,
# mkdir /mo
# mount /dev/sd1c /mo

(Zipの場合)

# disklabel -w -r sd2 zip100
# newfs sd2c
/dev/rsd2c:  196608 sectors in 96 cylinders of 64 tracks, 32 sectors
	96.0MB in 6 cyl groups (16 c/g, 16.00MB/g, 3840 i/g)
super-block backups (for fsck -b #) at:
 32, 32832, 65632, 98432, 131232, 164032,
# mkdir /zip
# mount /dev/sd2c /zip

------------------------------------
リスト2 /etc/disktab 追加分
# MO 230MB
mo230:\
	:ty=removeable:ns#32:nt#64:nc#217:\
	:pc#444416:oc#0:bc#8192:fc#1024:

# Zip 100MB
zip100:\
	:ty=removeable:ns#32:nt#64:nc#96:\
	:pc#196608:oc#0:bc#8192:fc#1024:
------------------------------------

NetBSDのUFSは、他のアーキテクチャのNetBSDと互換性が あるようだ。試しに、MacBSDで作成したUFSのMOとZipを、 NetBSD/sparcで使ってみた。両方とも問題なくマウントでき、 読み書きもできた。ちなみに、SunOS-4.1.*(sparc)や、 FreeBSD-2.1.0(i386)とは互換性がなく、マウントすらできな い。


4) HFS

Macなのだから、MacBSDと言えども、今まで使っていたMac のハードディスクが読めた方が便利であろう。

このためのツールhfsを紹介する。hfsは、HFSで書かれた sdデバイスの内容を読むツールである。hfsは、読むだけで、 書き込むことはできない。ハードディスク以外に、MOやZip もsdデバイスなので、これらを読むこともでき、かなり便利 である。

このhfsは、標準ではインストールされない。ソースが用 意されているので、ユーザがmake、インストールして使用で きるようになる。arch/mac68k/progs/hfs-0.00.tar.gz を展開し、makeする。何の問題もなく簡単にmakeできる。

hfsは、sdデバイスに直接アクセスするので、rootの権限 で実行しなければならない。hfsの使用例をリスト3に示す。

------------------------------------
リスト3 hfsの使用例
# hfs

Please wait, probing drives...

Please choose the HFS volume to browse:

1.      HD300 (SCSI 1)
2.      Zip 100 (SCSI 2)

Volume number, or <ENTER> to exit: 2

Type "help" for help.

1.      ANNOUNCE (7041 bytes)
2.      bsd/
3.      Desktop DB (6144 bytes)
4.      Desktop DF (0 bytes)
Zip 100:/ > help
Commands are:
        cd [number]
        cd .
        cd ..
        cd          (top level)
        ls
        cat [number]
        cp [number] [file]
        exit
Zip 100:/ > cp 1 announce
Wrote 7041 bytes to "announce".
Zip 100:/ > cd 2
1.      base.tar.gz (7517789 bytes)
2.      etc.tar.gz (68151 bytes)
3.      misc.tar.gz (1898465 bytes)
4.      netbsd.GENERIC_62.tar.gz (446142 bytes)
Zip 100:/ > exit
#
------------------------------------


X11R6のインストール
目次へ前の章へ次の章へ

MacBSD用のX windowシステム(X11R6)は、Aliceグループに よって移植された。X windowシステムは、 Aliceグループの Allen Briggsが管理している サイト(puma.macbsd.com) から手に入れることができる。このサイトでは、Aliceグ ループが精力的にMacBSDのサポートを行っている。 ここのWWWページ は、 NetBSD/mac68kの公式WWWページ からもリンクが張られている。

MacBSD用のX windowシステムには、白黒とカラーの2種類 のXサーバがある。

以下、白黒X windowについては puma.macbsd.com:/pub/NetBSD/X/README*をもとに述べる。 しかし、筆者の手元にはMac SE/30のみしかないので、内容 の完全な確認はできていない。

白黒(1bit/pixel)のXサーバは、MacBSDでコンソールの使 える機種なら、そのビデオ・システム上で動作する。

さらに、外部ビデオ・カードを用いて、X windowの画面を 2つのモニタ・ディスプレイに出すことも可能である。この 場合は、外部ビデオ・カード側のデバイス・ファイル /dev/grf2を以下のように作る必要がある。

# mknod /dev/grf2 c 10 2

カラーのX windowに関連するソフトウェアは puma.macbsd.com:/pub/NetBSD/X/colorkit/ にある。

README.Xcolorkitによると、カラーのXサーバは、 256色 (8bit/pixel) 以上のQuickDraw互換のビデオ・カード上で使 用可能である。また、動作は確認されていないが、一応、 NuBUS/PDS ビデオや内蔵ビデオ(IIci, IIsiなど)のためのモ ジュールはコーディングされている。

カラーXサーバは、256色(8bit/pixel)の画面モードで動作 する。65536色(16bit/pixel)や1600万色(24bit/pixel)など の画面モードはサポートしていない。たとえ、65536色や 1600万色の出るビデオ・カードであっても、256色の画面モー ドが使われる。

カラーXサーバの場合は、専用のドライバを含むカーネル を使わなければならない。このためのコンパイル済みのカー ネルが、Xサーバと一緒にcolorkitに用意されている。 Xmacbsd.960506.tar.gzがカラーXサーバであり、 netbsd.050896.GENERIC.grf.tar.gzが専用のドライバを含む カーネルである。

今回は、SE/30に白黒のXサーバをインストールした。

まず、NetBSD-1.2/mac68k/X11/xbase12と NetBSD-1.2/mac68k/X11/xserver12を以下のように展開する (NetBSD/Mac Install Utility 1.1を使って インストールしてもよい)。

# tar xvfz xbase12 -C /
# tar xvfz xserver12 -C /

しかし残念なことに、Mac SE/30ではこのXサーバ(Xmac68k)が正常に動作 しなかった。 とりあえず、Xサーバを古いもの(Xmacbsd.960127.tar.gz)と置き換えると、 正常に動作した。

Xサーバを置き換えるには、Xmacbsd.960127.tar.gzを以下のように /usr/X11R6/binに展開し、シンボリックリンクをやりなおす。

# tar xvfz Xmacbsd.960127.tar.gz -C /usr/X11R6/bin
# cd /usr/X11R6/bin/
# mv X X.old
# ln -s Xmacbsd X
 

さて、これでX windowのインストールが終了した。すぐに X windowを使用する場合は、以下のように、ダイナミック・ リンク・ライブラリのパスを設定しなおす。(MacBSDを再起 動するならば、設定しなおす必要はない)

# ldconfig /usr/X11R6/lib

X windowを使用するには、startxコマンドを使って起動す る。図11のようにX window システムを使うことができる。




図11 Xウィンドウ・システムを立ち上げてみた



後は、各ユーザの~/.xinitrcを好みに合わせて編集してお けばよいであろう。

MacBSDのX windowでは、Macで一般的な1ボタン・マウスの ために、中ボタン、右ボタンがキーボードでエミュレーショ ンできるようになっている。各ボタンは次のようなキーにバ インドされている。

<OPTION> + <left-arrow> 中ボタン
<OPTION> + <right-arrow> 右ボタン

前述のように、今回はLogitech社の3ボタン・マウスを試 用したが、3つのボタンは全て問題なく使えている。NeXT社 の2ボタン・マウスもなんの問題もなかった。


フリーソフトウェアと日本語環境のインストール
目次へ前の章へ次の章へ

筆者は、まずtcsh 6.06とGNU make 3.74をインストールし た。フリーソフトウェアの作成には、MacBSD附属のmakeコマ ンドではなく、GNU makeを要求するものがあるので、GNU makeをインストールしておくとよい。

筆者が作成したバイナリとソースを <ftp://ftp.axe-inc.co.jp/pub/mac/netbsd11/> に置く。御利用いただきたい。


表1 フリーソフトウェアとmakeに要する時間
多機能シェル tcsh-6.06 約 1時間
GNU make gmake-3.74 約 23分
(うちconfigureに10分)
日本語の表示 kterm-6.2.0 約 23分
日本語コードの変換 nkf-1.5pl1 約 1分
日本語ページャ less-290(+iso2 pl1) 約 11分
日本語入力 wnn-4.2(Wnnのみ) 約 2時間
日本語エディタ Ng-1.3 約 11分


おわりに
目次へ前の章へ次の章へ

NetBSD 1.2/mac68kは、現段階で充分、実用的に 使える。

このように十分に使えるUNIXが動作することで、旧いMac の新しい使い方ができるであろう。例えば、本稿で述べた機 能を使って、HDDファイル・サーバや、 CDROM, MO, ZIP等の メディアのサーバなどとして使うことができるだろう。

また本稿では触れていないが、MacBSDはインターネットの ゲートウェイやファイア・ウォールなどとしても使うことが できるはずである。

CAPサーバを動かして、UNIX世界とMac世界との間の橋渡し を行わせてみるのも面白いだろう。

このように、MacBSDはCPU性能が必要無いサーバとして、 旧いMacが活用できるたくさんの可能性を持っている。



参考URL:
目次へ前の章へ

本稿を書くにあたって、参考にしたWWWページのURL を以下に挙げる。これ らに注目しておけば、 MacBSDのバージョンアップ情報などが得られるであ ろう。

<http://www.netbsd.org/>
NetBSD.orgの公式ホームページ
<http://www.netbsd.org/Ports/mac68k/>
NetBSD/mac68kの公式WWWページ
<http://www.macbsd.com/>
AliceグループのAllen Briggsが管理しているMacBSDのためのホーム ページ
<http://www.axe-inc.co.jp/~bsd/macbsd10/netbsd.html>
竹岡 尚三のUNIX USER誌(1995/Jun)のNetBSD1.0/mac68kの記事を もとに作成したWWWページ
<http://www.axe-inc.co.jp/~bsd/macbsd11/netbsd.html>
小前 晋のUNIX USER誌(1996/Oct)のNetBSD1.1/mac68kの記事を もとに作成したWWWページ
<http://www.microserve.com/~jpw/adb.html>
John P. WittkoskiによるADBハードウェア・サポートのWWWページ
<ftp://puma.macbsd.com/pub/NetBSD/X/>
ここで、MacBSD用X windowシステムが得られる
<ftp://ftp.axe-inc.co.jp/pub/mac/netbsd11/>
ここで、日本語フリーソフトウェアが得られる

(たけおか しょうぞう、 こまえ すすむ AXE, Inc.)


目次へ前の章へ
インデックス・ページに戻る