高度な検索
Developer Connection
Member Login ログイン | ご入会 ADC連絡先


Technote 1151

Creating NetBoot Server-Friendly Applications


目次

はじめに

ガイドライン

要約

参考文献

のテクニカルノートでは、開発したアプリケーションが NetBoot 環境で正しく動作することを保証するため、アプリケーションデベロッパがしたがうべきガイドラインについて説明します。



はじめに

1999 年 1 月、Apple は Mac OS X Server と、Power Macintosh および PowerBook コンピュータがサーバにログインして、ローカルハードドライブではなくサーバから直接ブートすることを可能にする NetBoot サービスを導入しました。すべての NetBoot コンピュータは単一のシステムからブートするため、NetBoot コンピュータはローカルな設定をまったく必要としません。したがって、これまでよりも迅速かつ容易に Mac システムのネットワークを構築できるようになり、サーバを一度更新するだけでネットワーク上のすべての Mac を自動的に更新できるようになります。同時に、NetBoot はシステムフォルダとアプリケーションをトラブルから保護し、システムポリシーを設定してユーザアクセスを制御するための管理ツールが用意されています。また、NetBoot はさらに重要な利点を提供します。つまり、ユーザがネットワーク上のどの Mac からでも、カスタム設定を行ったアプリケーション、自分の書類、パーソナルなデスクトップの初期設定に安全にアクセスできるようになるという利点です。

NetBoot 環境で動作するすべてのソフトウェア (オペレーティングシステムとアプリケーションを含めて) はサーバに常駐してサーバから起動されるため、アプリケーションでは、その起動方法とシステムフォルダとの情報のやり取りについて格別の注意を払う必要があります。開発したアプリケーションがこのような環境で正常かつ適切に動作するため、アプリケーションを次に示すガイドラインに適合させることがソフトウェアデベロッパに要請されます。

先頭ページに戻る


ガイドライン

開発するアプリケーションを「NetBoot サーバにやさしい」ものにするためには、NetBoot クライアントがサーバからロードされたシステムおよびアプリケーションフォルダを共有するということを覚えておく必要があります。「初期設定」フォルダを適切に使用し、書き込み可能なボリュームから起動することを無条件に前提としないアプリケーションを書くことができれば、そのアプリケーションはこの環境で問題なく動作するはずです。

ロックされたボリュームからの起動を許可する

ディスク領域を効率的に使用するため、アプリケーションはロックされた共有ボリュームに格納される可能性があります。このため、アプリケーションはロックされたボリュームからでも起動でき、初期設定やデータなどのユーザ固有の情報を異なるボリュームに格納できなければなりません。少なくともアプリケーションファイルがロックされている状況をチェックして、そのような状況を適切に処理できるようにする必要があります。

複数のユーザが特定のアプリケーションに同時にアクセスすることを許可する

サーバ上のディスク領域を節約するため、アプリケーションはサーバ上の共通/共有ボリュームに格納される可能性があります。

アプリケーションを標準的な AppleShare サーバにインストールして、ネットワークを介して二台のクライアントコンピュータからアプリケーションを起動することで、複数のユーザがアプリケーションを同時に起動できるかどうかをチェックすることができます。

すべてのアプリケーションの初期設定を「システムフォルダ:初期設定」フォルダに格納する

一台の「ステーション」が複数の異なるユーザによって使用されるため、それぞれのユーザの初期設定を確実に保持し、ユーザが Macintosh Manager ソフトウェアを介して同じコンピュータまたは別のコンピュータから再度ログインするときに、それらの初期設定を復元する必要があります。アプリケーションのユーザ初期設定を保持するため、それらは必ずシステムフォルダ内の「初期設定」フォルダに保存してください。初期設定をこの場所に保存することで、サーバの管理が容易になり、ネットワーク上のどの Macintosh を使用するかに関係なく、ユーザは自分の初期設定を確実に使用できるようになります。

ユーザがパーソナルデータの保存場所を指定することを許可する

複数のユーザが同じアプリケーションを使用するため、ユーザが自分の書類やデータベースの保存場所を指定できるようにすることはアプリケーションにとって重要です。ユーザデータをアプリケーションと同じ場所に格納するようにハードコードすることは避けてください。これは特に電子メールアプリケーションで重要になります。

シリアル番号をアプリケーション内に格納することを避ける

繰り返しになりますが、複数のユーザが同じアプリケーションを使用する可能性があるため、シリアル番号はアプリケーション内に格納しないでください。シリアル番号によるアプリケーションの保護が必要または望ましい場合は、シリアル番号を「初期設定」フォルダに格納します。これにより、それぞれのユーザは同一のマスターアプリケーションファイルを使用しつつ、「異なる」シリアル番号を持つことが可能になります。

FindFolder (kSystemDisk など) が refNum に -1 を返すことを前提にしない

重要なフォルダを検索するため、常に FindFolder によって返された vRefNumdirID の両方を使用するようにしてください。

可能なときは、アプリケーション固有のファイルをシステムフォルダの「アプリケーションサポート」フォルダに格納する

アプリケーションが辞書やコンバータなどのシステムフォルダに格納されるファイルを持つ場合は、必ずしもそれらを「機能拡張」フォルダに格納する必要はありません。むしろ、「アプリケーションサポート」フォルダに置いてください。

共有ライブラリを「機能拡張」フォルダに格納する必要はなく、アプリケーションそのものと同じフォルダに置くこともできる

一つのアプリケーションのみによって使用される共有ライブラリは必ずしも「機能拡張」フォルダにコピーする必要はありません。アプリケーションと同じフォルダ内に置いておいてもまったく問題ありません。

先頭ページに戻る


要約

開発したアプリケーションを NetBoot サーバ環境で問題なく動作させることはそれほどむずかしい問題ではありません。実際、現在市販されている大部分のアプリケーションはすでにこのための要件を満たしており、「NetBoot サーバにやさしい」ものになっています。覚えておく必要があるのは、アプリケーションをロックされたボリュームから起動できるように保証すること、複数のクライアントが同時にアプリケーションを使用できるようにすること、それに、システムフォルダの「初期設定」および「アプリケーションサポート」フォルダに書き込まれるファイルを含めて、アプリケーションがファイルを保存する方法に注意を払うことの三点です。

先頭ページに戻る


参考文献


改訂の履歴

  • このテクニカルノートの初版は 1999 年 1 月に書かれました。

先頭ページに戻る