この節には、PPD ファイルを管理するための参照情報が含まれています。
ppdmgr ユーティリティーを使用してシステムに PPD ファイルを追加する場合は、指定された PPD ファイルの (gzip で) 圧縮されたコピーがシステムに格納されます。この目的は、システム上のすべての既知の PPD ファイルからの PPD ファイル情報から成る現在のキャッシュを保持することにあります。
システムにコピーされる PPD ファイルのフルパスは次のとおりです。
repository/label/manufacturer/ppd-file-name |
指定されたリポジトリ。-R オプションを使用してリポジトリが指定されていない場合、デフォルトリポジトリはユーザーリポジトリ /var/lp/ppd/ である。
指定されたラベル。-L オプションを使用してラベルが指定されていない場合、デフォルトラベルは、user リポジトリ内の user である。
PPD ファイル内に含まれているメーカーの名前。この名前は、/var/lp/ppd/manufaliases ファイルに定義されているメーカー別名に従って変更される可能性がある。「メーカー別名ファイル」を参照。
ppdmgr ユーティリティーで指定された元の PPD ファイル名と同じである。また、PPD ファイルが圧縮されている場合は、このファイルに .gz 拡張子が含まれている可能性もある。
次の図は、標準的な PPD ファイルリポジトリのレイアウトと、ppdmgr ユーティリティーのディレクトリレイアウトを示しています。このディレクトリレイアウトには、PPD user ファイルリポジトリを含む、関連するすべての提供および生成された ppdmgr ファイルが含まれています。
次の表は、システム上に配置されている PPD ファイルリポジトリを示しています。
表 12–12 PPD ファイルリポジトリの説明
リポジトリ |
場所 |
内容 |
追加または変更するために使用される方法 |
---|---|---|---|
admin |
/usr/local/share/ppd/ |
この PPD ファイルリポジトリは、システム管理者が使用する PPD ファイルを格納するために使用されます。 |
ppdmgr ユーティリティーまたは pkgadd コマンドのいずれかを使用して、PPD ファイルをこのリポジトリに手動で追加できます。 |
all |
システム上のすべての PPD リポジトリを表します。 |
このリポジトリは、システム上のサポートされているすべての PPD リポジトリの場所を表します。 |
all リポジトリは、ppdmgr ユーティリティーを使用して PPD キャッシュファイルの更新または再作成を要求する場合にのみ指定できます。 |
system |
/usr/share/ppd/ |
このリポジトリには、Oracle Solaris とともに提供される PPD ファイルが含まれています。 |
Oracle から提供されている PPD ファイルは、pkgadd および patchadd コマンドを使用して system リポジトリに追加できます。 このリポジトリ内の PPD ファイルを手動で、または ppdmgr ユーティリティーを使用して変更してはいけません。このリポジトリを手動で変更した場合、加えた変更は失われる可能性があります。 |
user |
/var/lp/ppd |
このリポジトリは、必要に応じて、管理者および適切な特権 (プリンタ管理) を持つユーザーによって使用されます。 |
ppdmgr コマンドの -a オプションを使ってシステムに追加された PPD ファイルは、特に指定しないかぎり、このリポジトリに追加されます。 |
vendor |
/opt/share/ppd/ |
このリポジトリは、ベンダーから Oracle Solaris に提供される PPD ファイルを格納するための中央の場所です。 |
このリポジトリに PPD ファイルを追加するために pkgadd コマンドが使用されます。 注 – このリポジトリは、ppdmgr ユーティリティーを使用して変更できません。 |
PPD ファイルや ppdcache ファイルの場所は非公開であり、したがって変更される可能性があります。これらのファイルが現在の場所にあることや、データが現在の形式であることに依存するようなソフトウェアを作成しないでください。
Oracle Solaris ソフトウェアを実行しているシステムでは、PPD ファイルをデフォルトラベルディレクトリに格納できます。また、PPD ファイルを構成するための独自に選択したラベルを指定することもできます。ただし、そのラベルがシステムで予約されている場合を除きます。
次のラベル名は予約されています。
caches
ppdcache
manufaliases
all
all のラベル名を除き、これらのラベル名は、ppdmgr ユーティリティーの -L または -R オプションのどちらでも指定できません。ただし、-r および -u オプションを使用している場合は、-L または -R オプションで all のラベル名を指定できます。SUNW で始まるラベル名はすべて、Oracle が使用するために予約されていますが、禁止はされていません。
システムに PPD ファイルを追加するときに、存在しないラベルを指定した場合は、指定されたリポジトリ内にそのラベル名を持つディレクトリが作成されます。デフォルトでは、PPD ファイルリポジトリが指定されていな場合、このディレクトリは /var/lp/ppd/label になります。システムに PPD ファイルを追加するときのラベルの指定の詳細については、「ppdmgr ユーティリティーのコマンド行オプションの説明」を参照してください。
Solaris 印刷マネージャーの「プリンタドライバ」フィールドは、「新しいプリンタを設定」(ローカルまたはネットワーク) か「プリンタのプロパティを変更」(ローカルまたはネットワーク) メニューオプションを選択したときに表示されます。このフィールドには、選択したプリンタモデルに基づいた、PPD キャッシュファイルからのプリンタドライバの説明が含まれています。PPD ファイルリポジトリ内にある異なるラベルを持つ重複したプリンタドライバの説明を区別するために、PPD ファイルリポジトリ名のラベルと省略名も表示されます。
プリンタドライバの説明に使用される形式は次のとおりです。
label(repository-letter): driver-description
たとえば、次の PPD ファイルは、user PPD ファイルリポジトリ内の PHOTOS ラベルにあります。
/var/lp/ppd/PHOTOS/HP/HP-PhotoSmart_P1100-hpijs.ppd.gz
この PPD ファイルは、Solaris 印刷マネージャーの「プリンタドライバ」フィールドの選択リストに次のように表示されます。
PHOTOS(U): Foomatic/hpijs (recommended)
次の例では、次の PPD ファイルが system PPD ファイルリポジトリ内の SUNWfoomatic ラベルにあります。
この PPD ファイルは、Solaris 印刷マネージャーの「プリンタドライバ」フィールドの選択リストに次のように表示されます。
SUNWfoomatic(S): Foomatic/hpijs (recommended)
次の表は、PPD ファイルリポジトリの文字、各文字が表すリポジトリ、およびシステム上のリポジトリの場所を示しています。
リポジトリ省略名 |
リポジトリ名 |
リポジトリの場所 |
---|---|---|
A |
admin |
/usr/local/share/ppd |
S |
system |
/usr/share/ppd |
U |
user |
/var/lp/ppd |
V |
vendor |
/opt/share/ppd |
システム上の PPD リポジトリには、メーカーごとに 1 つずつ、メーカーディレクトリが配置されています。PPD ファイルがシステムに追加されると、その PPD ファイルに含まれているメーカー名を使用して、PPD ファイルをコピーする先のメーカーディレクトリが決定されます。専有ファイル /var/lp/ppd/manufaliases には、PPD ファイル内のすべてのメーカーエントリの別名が含まれています。この manufaliases ファイルを参照して、PPD ファイルをコピーする先のメーカーディレクトリが決定されます。このプロセスによって、メーカー別名ごとに 1 つのディレクトリではなく、メーカーごとに 1 つのディレクトリが存在することが保証されます。たとえば、PPD ファイルにメーカー名 Hewlett-Packard が含まれている場合、manufaliases ファイル内に Hewlett-Packard の別名 HP が示されていると、その PPD ファイルは HP ディレクトリに格納されます。この方法は、ppdmgr ユーティリティーおよび lpadmin -n コマンドを使用してシステムに追加されるすべての PPD ファイルに適用されます。
manufaliases ファイルは専有ファイルです。このファイルは編集しないでください。このファイルが現在の場所にあることや、データが現在の形式であることに依存するようなソフトウェアを作成しないでください。
/var/lp/ppd/caches/ ディレクトリには、各リポジトリ内のラベルごとに 1 つずつ、非公開の PPD ファイルキャッシュが保持されています。
使用されるキャッシュファイル名の形式は次のとおりです。
PPD-repository: label
PPD キャッシュファイル内にある PPD ファイルに関する情報は、ppdmgr ユーティリティーを使用して管理されます。PPD キャッシュファイルを手動で編集しないでください。/var/lp/ppd/caches ディレクトリ内のキャッシュファイルは、非公開の PPD キャッシュファイル /var/lp/ppd/ppdcache を生成するために使用されることに注意してください。このファイルは、printmgr ユーティリティーで使用されます。詳細は、printmgr(1M) のマニュアルページを参照してください。
ppdcache の場所やその内容は非公開です。このファイルが現在の場所にあることや、データが現在の形式であることに依存するようなソフトウェアを作成しないでください。この情報は、ppdmgr ユーティリティーで使用するために生成または提供されるすべての専有ファイルに適用されます。
この節では、ppdmgr ユーティリティーのコマンド行オプションについて説明します。また、ppdmgr ユーティリティーを使用して PPD ファイルを管理するためのプロセス、ガイドライン、および制限に関する追加情報についても説明します。
PPD マネージャー (ppdmgr) ユーティリティーは、/usr/sbin/ppdmgr にあります。
システムに PPD ファイルを追加するには、次の構文を使用します。
ppdmgr -a ppd-file-path |
-a オプションは、ppd-file-path で指定された PPD ファイルを PPD リポジトリにコピーしたあと、この変更が反映されるように PPD キャッシュファイルを更新します。-R オプションを使用して PPD ファイルリポジトリを指定しない場合、PPD ファイルは user PPD ファイルリポジトリに格納されます。-L オプションを使用してラベルを指定しない場合、PPD ファイルは user ラベルディレクトリに格納されます。
ppdmgr ユーティリティーで -a オプションを使用した場合は、次の検証が実行されます。
ラベルの検証 – ラベル名を予約されたラベル名にしてはいけません。
次のラベル名は予約されています。
caches
ppdcache
manufaliases
all
PPD ファイルパスの検証 – 指定された ppd-file-path はアクセス可能であり、.pdd または ppd.gz のいずれかの拡張子を含んでいる必要があります。
PPD ファイルの検証 – ppd-file-path で指定された PPD ファイルは、有効な PPD ファイルである必要があります。
さまざまな検証確認に合格しない情報を指定した場合や、ppdmgr ユーティリティーによって実行されるいずれかの動作が失敗した場合は、エラーメッセージが表示され、ユーティリティーは終了します。
実行される追加の動作
必要に応じて、出力先パスの親ディレクトリが作成されます。
PPD ファイルリポジトリ内に拡張子が .gz のバージョンの PPD ファイルがすでに存在し、かつ gzip で圧縮されたバージョンが複製でない場合は、エラーメッセージが表示されます。
ppd-file-path が出力先パスにコピーされます。
次に、ppdcache ファイルの変更が反映されるように更新動作が適用されます。
PPD ファイルリポジトリを指定するには、次の構文を使用します。
ppdmgr -R repository |
repository の前にある -R オプションは、サポートされている PPD ファイルリポジトリの 1 つを識別するために使用されます。-R オプションが指定されていない場合、デフォルトの repository は user です。-R オプションが -a オプションとともに指定されている場合、有効なリポジトリ名は user と admin です。サポートされているすべてのリポジトリ名とその場所の詳細については 「PPD ファイルリポジトリ」を参照してください。
ラベルを指定するには、次の構文を使用します。
ppdmgr -L label-name |
label-name の前にある -L オプションは、PPD ファイルリポジトリ内の PPD ファイルのグループ化を識別するために使用されます。ラベルはまた、PPD ファイルリポジトリ内にあるディレクトリの名前でもあります。ラベルは、移植可能文字セットにある任意の文字で構成できます。ただし、ラベルにセミコロン (;) を含めることはできません。
-L オプションが指定されていない場合、ラベル名を指定するために使用されるデフォルト値は次のようになります。
ppdmgr コマンド行オプション |
デフォルトラベル |
---|---|
-a |
サポートされているリポジトリ内に ppd-file-path が存在する場合は、ppd-file-path 内の label がデフォルトになります。それ以外の場合は、user が label のデフォルトになります。 |
-r |
all ラベルがデフォルトになります。 |
-u |
all ラベルがデフォルトになります。 |
PPD キャッシュファイルの更新を要求するには、次の構文を使用します。
ppdmgr -u |
このオプションによって、PPD ファイルリポジトリ内の変更が反映されるようにキャッシュファイルが更新されます。PPD キャッシュファイルは、変更が検出された場合にのみ更新されます。
-a オプションが指定されている場合、PPD キャッシュファイルの更新は、PPD ファイルがコピーされたリポジトリ内のラベルディレクトリの変更が反映されるように自動的に行われます。
-R または -L オプションが指定されていない場合、PPD キャッシュファイルは、user リポジトリ内の all ラベルディレクトリの変更が反映されるように更新されます。
PPD キャッシュファイルの再作成を要求するには、次の構文を使用します。
ppdmgr -r |
-r オプションによって、指定された PPD ファイルリポジトリ内の指定されたラベルに関連付けられた中間キャッシュファイルをすべて削除し、再生成することによりキャッシュが再作成されます。中間キャッシュファイルがすべて削除された場合は、この動作によって PPD キャッシュファイル /var/lp/ppd/ppdcache が更新されます。指定された PPD ファイルリポジトリ内の指定されたラベルの再生成が必要なため、PPD キャッシュ情報の再生成は非常に時間がかかる場合があります。PPD キャッシュファイルの再作成にかかる時間は、影響を受ける PPD ファイルの数によって異なります。そのため、-r オプションは、PPD キャッシュファイルの破壊が疑われる場合にのみ使用するようにしてください。
-R または -L オプションが指定されていない場合は、user PPD ファイルリポジトリ内のすべてのラベルに関連付けられた中間キャッシュファイルが削除されます。次に、これらの変更が PPD キャッシュファイルに反映されます。
リポジトリ内の PPD ファイルのフルパスを表示するには、次の構文を使用します。
ppdmgr -a ppd-file-path -w |
-a オプションとともに -w オプションを指定する必要があります。PPD ファイルがシステムに正常に追加された場合は、PPD ファイルの出力先のフルパスが stdout に表示されます。それ以外の場合、このオプションは無視されます。