Darwin/x86のインストールとコンソール
(1)Darwinが扱うパーティション/ファイルシステム
x86用Darwin(Darwin/x86)が扱うパーティション/ファイルシステムとしては以下のようなものがあります。
- Apple Booter partiton
Darwinの起動専用パーティションで数MBの容量で間に合います(パーティションIDは「AB」)。
- Apple UFS partition
Darwin本体の入るルートパティションです(パーティションIDは「A8」)。
- HFS
従来のMac OSで採用されていたファイルシステムです。
- HFS+
HFS+(HFS Plus)はHFSを改良したファイルシステムでHFSとはスーパーブロック等の構造が異なっています。
(2)Darwinのインストールについて
Darwin 1.3.1のインストーラ付きバイナリはdarwinx86.isoというISOイメージのファイルとして公開されています。
このファイルはAppleのオープンソースプロジェクトのサイトからダウンロードできます。
(そのサイトはこんな感じです)
ISOイメージのdarwinx86.isoをCD-RまたはCD-RWに書き込みインストールCDを作成しそのCDからPCをブートしてインストールを行います。
(darwinx86.isoに含まれるパッケージリストはこちらです:149個のパッケージがあります)
Darwin/x86 1.3.1のインストールは問い合わせ数が少ないので他のBSD系OS(NetBSD,FreeBSD,OpenBSD等)よりもずっとシンプルで言語区分、キーボードタイプ、マウスタイプ、ネットワーク等の設定は一切ありません。
途中でDarwinインストーラはパーティションの作成方法を尋ねてきますので必要なパーティションはこの時点で作成しておきます。
パッケージのインストール後にHDよりブートするとrootのパスワード設定を行うプロンプトが出てきます。
rootのパスワード設定が済むと「login:」プロンプトが出てきます。
ログインが済むと「Welcome to Darwin!」メッセージが出てコマンドが使えるようになります。
(ログイン前のシステム起動時には2箇所の部分で「Welcome to Macintosh.」が表示されますが...)
Darwin/x86はBSDをベースにしていますのでコンソールを使う限りはNetBSD,FreeBSD,OpenBSD等と同じ感覚で使えます。
(3)DarwinとLinuxのパーティション共用
HFSファイルシステムはDarwinとLinuxで共用できます。
Darwin側でHFSを作成しDarwin及びLinux双方でそれをマウントして共通にアクセスすることができます。
- Darwin側
- HFSファイルシステムの作成
事前に作成したパーティション(たとえばrdisk0s3)にファイルシステムを構築するには次のコマンドを使います。
newfs_hfs -v HFS01 -h /dev/rdisk0s3
-vではボリューム名を指定します。
-hオプションを省略するとHFS Plusファイルシステムになります。
- HFSへの書き込み例
mkdir -p /mnt/hfs
mount -w -t hfs /dev/disk0s3 /mnt/hfs
mkdir /mnt/hfs/darwin.work
cp -R /Library/Documentation/Services/apache /mnt/hfs/darwin.work
cd /mnt/hfs/darwin.work/apache
ls
- Linux側(Laser5 Linux 6.0のKernel 2.2.5使用)
mkdir /mnt/hfs
mount -t hfs /dev/hda3 /mnt/hfs
ファイル一覧表示はこんな感じになります。
またHFSのファイルをLinux側のkfmで表示してみました。
逆にLinux側から書き込んだファイルをDarwin側でアクセスすることも可能です。
(但し、31バイトを超えるような長いファイル名は31バイトに切り捨てられます)
(4)ネットワーク環境
Darwin/x86 3.1.1の制限にも書かれているようにサポートされているネットワークカードはIntel 8255x系のものだけです。
今回はIntel PRO/100 SというPCIカードを使用しています。
- ネットワークの設定
Darwinのインストールにはネットワークの設定を行う過程はありません。
/etc/hostconfig(ホスト名/ルータ設定、各種サービスの有効・無効指定の設定ファイル)はデフォルトの状態です。
また/etc/iftab(IPアドレスやネットマスク等の設定ファイル)もデフォルトの状態です。
そこでデフォルトのhostconfigやiftabを環境に合わせてカスタマイズします。
更にniutil(NetInfoのユティリティ)でリゾルバの設定などを行います。
- Darwin起動時に表示されるネットワークデバイス情報
- サービス
Darwinを起動するといくつかのサービスが自動起動されます。
どのサービスを有効にするかは/etc/hostconfigで指定します。
Apacheが自動起動される場合は以下のようなメッセージが表示されます。
- LinuxからのDarwin Apacheアクセス例
- ftpによるLinuxアクセス例
- telnetによるLinux上のOracleアクセス例
(5)インターネット接続
- ping例
- CVSリポジトリへのログイン例
- wget例
- LynxによるWebブラウズ
Lynx(テキストベースのWebブラウザ)を組み込んでWebアクセスしてみました。
- Lynxの組み込み
Lynxの組み込みは単にソース(lynx2.8.4.tar.gz)を展開し、「./configure」「make install」を実行するだけです。
(ソースは他のプラットフォームと共通のもので、http://lynx.isc.org/にあるものを使用)
「./configure」の実行ではシステム種別が自動判別されて構成処理がなされます。
- まずは内部アクセス
「lynx http://localhost/」でDarwin/x86内のApache Web Serverをアクセスしてみました。
(拡大画像はこちらです)
- 外部アクセス
「lynx http://www.publicsource.apple.com/projects/darwin/1.3/release.html」でAppleのオープンソースのWebサイトをアクセスしてみました。
(拡大画像はこちらです)
WindowsのInternet Explorerでみるとこんな感じのWebページです。