【コラム】

OS X ハッキング!

2 こんなところにSculley元CEOの名前が

    海上忍  [2001/11/30]

    前回、Terminalで「uname -r」 を実行したときの戻り値が「5.1」だった旨を紹介したが、その理由はDarwinのバージョン管理規則の改定にある、との情報をAppleの「darwin-development」メーリングリストより入手した。

    新しい規則では、「このMacについて」画面に表示されるビルド番号(たとえば「5M28」)の先頭にあるメジャーバージョン「5」と、Darwinのカーネル(xnu)のメジャーバージョン「5」が一致するとのこと。ただしNeXT時代の規則が復活したわけではなく、Mac OS X 10.0の頃のメジャーバージョン「4」(Darwinは「1.3.X」)が10.1.xでは「5」になり、それにDarwinが引きずられる格好で「5.x」になった、というのが理由のようだ。

    さて、今回の話題は「AppleTalk」。Macintosh伝統の通信プロトコルであり、LocalTalkが廃れつつある現在はEthernetの上を流れる「EtherTalk」として使われることのほうが一般的となっている。ファイル共有だけでなくプリンタとの接続にも利用されるため、Macintoshには欠かせないプロトコルと言えるだろう。

    Mac OS XでもAppleTalkはサポートされている。「System Preferences(システム環境設定)」の構成要素である「ネットワーク」パネルで「AppleTalk」タブを開き、[AppleTalk使用]チェックボックスを有効にすれば、これまでのMac OS同様に(クライアントとして)AppleTalkを利用できる。Mac OS Xには「セレクタ」がないので、AppleShareサーバへ接続する場合にはFinderのメニューから[移動]→[サーバへ接続...]を選択し、プリンタは独立したアプリケーションの「Print Center」を起動して認識させる、といった方法で使うことになるだろう。

    と、ここまではGUIを利用するときの話。システムログ(/var/log/system.log)を読めばわかるが、実際には「/System/Library/SystemConfiguration/Kicker.bundle/Resources/restart-AppleTalk」を実行することにより、AppleTalkサービスは起動されている。

    さらに「restart-AppleTalk」の内容を「less」などのページャ(Terminalから実行するテキストビューア)で見てみると、実体はシェルスクリプト(シェルで実行される簡易なプログラミング言語)であり、AppleTalkサービスの起動/停止はすべてコマンドにより処理されていることがわかる。

    サービスの起動/停止だけでなく、基盤部分が「Darwin」という独立して動作するOSから成り立っている都合上、AppleTalkに関連する機能の多くもコマンドの形で提供されている。中でも利用価値が高いと思われるのは、「atlookup」と「appleping」の2つのコマンドだ。

    「atlookup」コマンドは、オプションや引数を与えずに実行すると、同一ゾーン内で有効なAppleTalkノードのすべてを表示する。Finderの「サーバへ接続」ウィンドウでは、AppleTalkを利用したAppleShareサーバしか目で確認できない(AFP over TCP/IPのみ有効なAppleShareサーバは、アイコンとして表示されない)ので、ファイルサーバやプリンタなどが物理的に接続されていることの確認に役立つはずだ。

    もう1つの「appleping」コマンドは、その名前から推測できるように、TCP/IPネットワークで接続確認に用いられる「ping」コマンドのAppleTalk版だ。パケットを特定のAppleTalkノードへ宛てて送信すれば、その反応の有無や反応の度合いを調べることにより状態を確認できる。たとえば、コンピュータ名が「G4Cube」のMacintoshでAppleShareサーバが稼働しているかどうかを確認する場合、「appleping G4Cube:AFPServer」と実行し、「64 bytes from …」と一定間隔で反応があれば、稼働中であると判断できる。

    最後に、今回のタイトル名だが、「appleping」コマンドをオプションや引数なしで実行すればわかる。コマンドの書式が示されたあと、用例として「examples: appleping 'John Sculley:Macintosh SE@Pepsi'」と表示されるのだ。Darwin 1.4として公開されているソースを調べたところ、同コマンドはSculley氏がAppleのCEOに在職していた1989年に書かれたものらしい。PEPSIからSculley氏をスカウトしたJobs現CEOが、後に彼からAppleを追われ…という歴史を知る人間にとっては、思わずニヤリとしてしまう"タイムカプセル"である。

    バックナンバー
    http://pcweb.mycom.co.jp/column/osx.html

    新着記事

    特設サイトの情報

      人気記事

      一覧

      イチオシ記事

      新着記事

      特別企画

      マイナビニュースマガジン