papd(8) AppleTalk プリントサーバデーモン

書式

/usr/sbin/papd [ -d ] [ -f configfile ] [ -p printcap ]

説明

papd は AppleTalk プリンタデーモンである。 このデーモンは、 AppleTalk クライアント (通常は Macintosh コンピュータ) から プリンタアクセスプロトコル (Printer Access Protocol, PAP) を使って 印刷ジョブを受け付ける。 papd はネットワークからジョブを受け取ると、 そのジョブを直接 lpd(8) のスプールディレクトリにスプールし、 lpd を起動する。 すると lpd は、対応する適切なスプールディレクトリがあるかどうかを再検査する。 実際の印刷とスプールは、 lpd が全て処理する。 papd は印刷ジョブを外部プログラムにパイプで渡して処理させることができる。 使っている lpd のくせによる互換性の問題を避けるには、 この方法を用いると良い。

通常 papd は、システムの init スクリプトからブート時に起動される。 初めに設定ファイル /etc/netatalk/papd.conf を読み込む。 このファイルは /etc/printcap と同じフォーマットである。 詳細は printcap(5) を参照すること。 エントリの名前は NBP で登録されている。 以下のオプションがサポートされている:

名前タイプデフォルト説明
pdstr`.ppd'PPD ファイルのパス名
prstr`lp'LPD プリンタ名 (または、印刷コマンドへのパイプ)
opstr`operator'LPD スプーリングのオペレータ名
castrNULLCAP 形式認証に使うファイルのパス名
spboolfalsePSSP 形式認証
amstrNULL認証に使う UAM (ユーザー認証モジュール)
pastrNULLプリンタの AppleTalk アドレス?

設定ファイルが指定されない場合、 ホスト名が NBP 名として使われ、全てのオプションがデフォルトの値になる。

オプション

-d
fork しない。または端末から切り離さない。 デバッグ情報を標準エラーに書き出す。
-f configfile
設定情報として /etc/netatalk/papd.conf ではなく configfile を読み込む。
-p printcap
LPD 設定情報として /etc/printcap ではなく printcap を読み込む。

以下の papd 設定ファイルは 3 つのプリントスプーラを設定する。 1 番目のスプーラは NBP 名が Mac Printer Spooler で、/usr/share/lib/ppd にある PPD ファイルを使う。 さらに、ユーザー mcs がスプールされる全てのジョブの所有者になる。 2 番目のスプーラは HP Printer という名前で、全てのオプションがデフォルトである。 3 番目のスプーラは HP 8100 という名前である。 このスプーラは印刷ジョブを行うために lpr を使う。 PSSP 認証印刷が CAP 形式認証印刷と同様に有効にされている。 'am' オプションが指定されているので、 どちらの認証法でも guest と平文の認証が使える。 使用される PPD は /etc/atalk/ppds/hp8100.ppd である。

Mac Printer Spooler:\ 
        :pr=ps:\
        :pd=/usr/share/lib/ppd/HPLJ_4M.PPD:\
        :op=mcs:
HP Printer:\ 
        :
HP 8100:\
        :pr=|/usr/bin/lpr -Plp:\
        :sp:\
        :ca=/tmp/print:\
        :am=uams_guest.so,uams_pam.so:\
        :pd=/etc/atalk/ppds/hp8100.ppd:

注意

PSSP (Print Server Security Protocol) はプリントサーバーに PostScript プリンタの問い合わせをさせる認証プロトコルである。 PSSP を使うにはクライアント Mac 上に LaserWriter 8.6.1 以降が必要である。 印刷を行う前に、ユーザー名とパスワードを入力するプロンプトが出る。 PSSP を初めて有効にしたときは、 各クライアント上のプリンタを再設定する必要があるかもしれない。 これによりクライアントは印刷に認証が必要とされることを理解することができる。 プリンタ毎に PSSP を有効にすることができる。 PSSP は以下で説明する CAP 形式認証より堅牢なので、 プリンタの認証にはこちらを使うと良い。

CAP 形式認証は、Mac クライアントでの印刷の認証で使われる CAP (Columbia APpletalk) パッケージの方法を用いて、 ユーザー名を取得する。 この方法では、印刷をする前に ユーザーがファイル共有にログインしている必要がある。 afpd はユーザー名をクライアントの Appletalke アドレスにちなんだ テンポラリファイルに記録し、 ユーザーが接続を切ると、このファイルを削除する。 papd は接続してきているマシンの Appletalk アドレスと 同じ名前のファイルからユーザー名を取得する。 CAP 形式認証はどの Mac クライアントに対しても動作するだろう。 あるプリンタに対して CAP と PSSP がともに有効になっている場合、 最初に CAP が試みられ、(失敗した場合は) 次に PSSP を試みる。

('am' オプションで指定されて) 認証に使われる UAM (ユーザー認証モジュール) の一覧は全てのプリンタに適用される。 各プリンタ毎に別の認証法を定義することはできない。 UAM のリストを複数回指定することもできるが、 最後の設定のみが使われる。 現在のところ、プリンタの認証法としては uams_guest.so, uams_passwd.so, uams_pam.so のみがサポートされている。 guest による方法では、有効なユーザー名が必要であるが、パスワードは必要ない。 passwd と pam による方法では、 有効なユーザー名と正しいパスワードの両方が必要である。

ファイル

/etc/netatalk/papd.conf
デフォルトの設定ファイル。
/etc/printcap
プリンタ機能のデータベース。
.ppd
PostScript プリンタ記述ファイル。 papd は、設定情報や印刷を行っているクライアントからのフォント要求を、 設定された PPD ファイルに基づいて答える。 このようなファイルは、Adobe, Inc のサイト ftp.adobe.com の /pub/adobe/printerdrivers/mac/all/ppdfiles/ から 匿名 ftp (ftp://ftp.adobe.com//pub/adobe/printerdrivers/mac/all/ppdfiles/) によって、 あるいはプリンタの製造メーカからも入手できる。 PPD ファイルが設定されていない場合、 papd はデフォルトの返答をする。 これは、クライアントに非常に大きなジョブを送信させる可能性がある。

警告

papd は、クライアントから送られる ハイビットセット (フル 8 ビット) の文字を受け付ける。 しかし、(Apple Computer の LaserWriter ファミリーを含む) PostScript プリンタの中には、 デフォルトではシリアルインターフェース上から 7 ビット文字しか受け付けないものがある。 この場合は、プリンタがフル 8 ビットを受け付けるように プリンタを設定する必要がある。