<?xml version="1.0" encoding="UTF-8"?>
<refentry id="papd.conf.5">
  <refmeta>
    <refentrytitle>papd.conf</refentrytitle>

    <manvolnum>5</manvolnum>

    <refmiscinfo class="date">24 May 2024</refmiscinfo>

    <refmiscinfo class="source">Netatalk</refmiscinfo>

    <refmiscinfo class="manual">Netatalk AFP ファイルサーバ マニュアル</refmiscinfo>

    <refmiscinfo class="version">@netatalk_version@</refmiscinfo>
  </refmeta>

  <refnamediv>
    <refname>papd.conf</refname>

    <refpurpose>Netatalk 印刷デーモンで使用されるプリンタの構成を決定するために
    <command>papd</command>(8) によって使用される構成ファイル<indexterm>
        <primary>papd.conf</primary>
      </indexterm></refpurpose>
  </refnamediv>

  <refsect1>
    <title>説明</title>

    <para><emphasis remap="B">papd.conf</emphasis> は、netatalk
    が提供する印刷サービスを設定するために papd が使用する設定ファイルです。 <emphasis
    remap="B">papd</emphasis> は、多くのシステムで lpd と同じデフォルトを共有します。注目すべき例外の 1 つは
    Solaris です。</para>

    <para>papd.conf の形式は、<citerefentry>
        <refentrytitle>printcap</refentrytitle>

        <manvolnum>5</manvolnum>
      </citerefentry> から派生したもので、1 つ以上のプリンタの設定を含めることができます。 <emphasis
    remap="B">#</emphasis> で始まっていない行はすべて解釈されます。設定行は次のように構成されます:</para>

    <para><emphasis remap="I">printername:[options]</emphasis></para>

    <para>System V 印刷システムを実行しているシステムでは、最も単純なケースは、papd.conf
    がないか、アクティブな行がないことです。この場合、<emphasis>atalkd</emphasis> はマシン上のローカル
    プリンタを自動検出します。行を <emphasis remap="B">\</emphasis> (バックスラッシュ)
    で分割できることに注意してください。</para>

    <para>printername は単なる名前 (<emphasis remap="B">Printer 1</emphasis>)
    の場合もあれば、nbp_name 形式の完全な名前 (<emphasis remap="B">Printer 1:LaserWriter@My
    Zone</emphasis>) の場合もあります。</para>

    <para>BSD 印刷システムを使用するシステムでは、<emphasis remap="B">pr</emphasis>
    オプション内で該当する印刷コマンドへのパイプを使用する必要があります (例: <emphasis
    remap="B">pr=|/usr/bin/lpr</emphasis>)。</para>

    <para>CUPS サポートがコンパイルされている場合、papd.conf の最初のエントリとして <emphasis
    remap="B">cupsautoadd</emphasis> を使用すると、自動的に構成され、すべてのpapd で使用可能な CUPS プリンタ
    (カスタマイズ可能 - 以下を参照)。これは、CUPS キュー名を <emphasis remap="B">pr</emphasis>
    エントリとして使用して、後で個々のエントリを追加することで、個々のプリンタに対して上書きできます。注意: CUPS サポートは、上記の System
    V サポートとは相互に排他的です。</para>

    <para>使用可能なオプションはコロンで区切られ (<emphasis
    remap="B">:</emphasis>)、行はコロンで終了する必要があります。使用可能なオプションとフラグは次のとおりです:</para>

    <variablelist remap="TP">
      <varlistentry>
        <term><emphasis remap="B">am=(uams list)</emphasis></term>

        <listitem>
          <para><emphasis remap="B">am</emphasis> オプションを使用すると、特定のプリンタに対して特定の
          UAM を指定できます。<emphasis remap="B">au</emphasis>
          フラグが存在しない場合は効果がありません。注: 指定できる値は <emphasis
          remap="B">uams_guest.so</emphasis> と <emphasis remap="B">
          uams_clrtxt.so</emphasis> のみです。最初の方法では有効なユーザー名が必要ですが、パスワードは必要ありません。
          2 番目 には、有効なユーザー名と正しいパスワードの両方が必要です。</para>
        </listitem>
      </varlistentry>

      <varlistentry>
        <term><emphasis remap="B">au</emphasis></term>

        <listitem>
          <para>このフラグが存在する場合、プリンタの認証が有効になります。</para>
        </listitem>
      </varlistentry>

      <varlistentry>
        <term><emphasis remap="B">co=(CUPS オプション)</emphasis></term>

        <listitem>
          <para><emphasis remap="B">co</emphasis> オプションを使用すると、オプションを CUPS
          に渡すことができます (例: <emphasis remap="B">co="protocol=TBCP" </emphasis>
          または <emphasis remap="B">co="raw"</emphasis>)。</para>
        </listitem>
      </varlistentry>

      <varlistentry>
        <term><emphasis remap="B">cupsautoadd[:type][@zone]</emphasis></term>

        <listitem>
          <para>papd.conf の最初のエントリとして使用すると、papd を介してすべての CUPS
          プリンタが共有されます。この特別な共有プリンタに割り当てられたタイプ/ゾーン設定とその他のパラメータは、すべての CUPS
          プリンタに適用されます。<emphasis remap="B">pd</emphasis> オプションが設定されていない場合は、CUPS
          PPD が使用されます。個々のプリンタのこれらのグローバル設定を上書きするには、後でそれらを papd.conf
          に追加し、異なる設定を割り当てるだけです。</para>
        </listitem>
      </varlistentry>

      <varlistentry>
        <term><emphasis remap="B">fo</emphasis></term>

        <listitem>
          <para>このフラグが存在する場合、Mac OS X 以前の LaserWriter
          ドライバから生成された行末を変換するハックが有効になり、<emphasis
          remap="B">foomatic-rip</emphasis> がプリンタ ダイアログで設定された foomatic PPD
          オプションを認識できるようになります。注意: バイナリ印刷ジョブが破損する可能性があるため、注意して使用してください。</para>
        </listitem>
      </varlistentry>

      <varlistentry>
        <term><emphasis remap="B">op=(operator)</emphasis></term>

        <listitem>
          <para>lpd スプールのオペレータ名を指定します。デフォルト値は「operator」です。</para>
        </listitem>
      </varlistentry>

      <varlistentry>
        <term><emphasis remap="B">pa=(appletalk address)</emphasis></term>

        <listitem>
          <para>AppleTalk アドレスの指定を許可します。通常は必要ありません。</para>
        </listitem>
      </varlistentry>

      <varlistentry>
        <term><emphasis remap="B">pd=(ppd ファイルへのパス)</emphasis></term>

        <listitem>
          <para>選択したプリンタに関連付ける特定の PPD (プリンタ記述ファイル) を指定します。</para>
        </listitem>
      </varlistentry>

      <varlistentry>
        <term><emphasis remap="B">pr=(lpd/CUPS プリンタ名またはパイプ
        コマンド)</emphasis></term>

        <listitem>
          <para>スプール先の <emphasis remap="B">lpd</emphasis> または <emphasis
          remap="B">CUPS</emphasis> プリンタを設定します。デフォルト値は「lp」です。</para>
        </listitem>
      </varlistentry>
    </variablelist>
  </refsect1>

  <refsect1>
    <title>例</title>

    <para>CUPS サポートがコンパイルされていない場合 (Netatalk 2.0 以降ではデフォルト)、<option>pr</option>
    パラメータをキュー名に設定することで、問題の lpd キューを定義します (次の例では「ps」)。<option>pr</option>
    パラメータが設定されていない場合は、デフォルトのプリンタが使用されます。</para>

    <example>
      <title>papd.conf System V 印刷システムの例</title>

      <para>最初のスプーラは AppleTalk 名 Mac Printer Spooler
      で知られ、<filename>/usr/share/lib/ppd</filename> にある PPD ファイルを使用します。さらに、ユーザー
      mcs は、スプールされるすべてのジョブの所有者になります。2 番目のスプーラは HP
      プリンタと呼ばれ、すべてのオプションがデフォルトです。<programlisting>Mac Printer Spooler:\
   :pr=ps:\
   :pd=/usr/share/lib/ppd/HPLJ_4M.PPD:\
   :op=mcs:

HP Printer:\
   :</programlisting></para>
    </example>

    <para>上記の手法の代替として、papd
    の出力をパイプ経由で別のプログラムに送る方法があります。このメカニズムを使用して、ほぼすべての印刷システムを操作できます。</para>

    <example>
      <title>パイプを使用した papd.conf の例</title>

      <para>最初のスプーラは HP 8100 と呼ばれています。印刷ジョブを <command>/usr/bin/lpr</command>
      にパイプして印刷します。 PSSP 認証印刷が有効になっており、CAP
      スタイルの認証印刷も有効になっています。どちらの方法も、'<option>am</option>'
      オプションで指定されたゲスト認証とクリアテキスト認証をサポートしています。使用される PPD
      は、<filename>/etc/atalk/ppds/hp8100.ppd</filename> です。<programlisting>HP 8100:\
   :pr=|/usr/bin/lpr -Plp:\
   :sp:\
   :ca=/tmp/print:\
   :am=uams_guest.so,uams_clrtxt.so:\
   :pd=/etc/atalk/ppds/hp8100.ppd:
      </programlisting></para>
    </example>

    <para>Netatalk 2.0 以降では、直接 CUPS 統合が利用できます。この場合、キュー名のみを <option>pr</option>
    パラメータとして定義すると、SysV lpd デーモンは呼び出されず、代わりに CUPS が使用されます。<option>pd</option>
    スイッチを使用して特定の PPD が割り当てられていない限り、CUPS で構成された PPD は <command>papd</command>
    でも使用されます。</para>

    <para>「cupsautoadd」という特別な共有が 1 つ存在します。これが最初のエントリとして存在する場合、使用可能なすべての CUPS
    キューは、このグローバル共有に割り当てられたパラメータを使用して自動的に処理されます。ただし、後続のプリンタ定義を使用して、個々のスプーラのこれらのグローバル設定を上書きできます。</para>

    <example>
      <title>papd.conf CUPS の例</title>

      <para>最初のエントリは、すべての CUPS プリンタの自動共有を設定します。これらの共有はすべてゾーン「1st
      floor」に表示され、追加の設定が行われていないため、CUPS プリンター名を NBP 名として使用し、CUPS で構成された PPD
      を使用します。2 番目のエントリは、1 つの CUPS プリンターに対して異なる設定を定義します。その NBP
      名はプリンター名とは異なり、登録は別のゾーンで行われます。 <programlisting>cupsautoadd@1st floor:op=root:

Boss' LaserWriter@2nd floor:\
   :pr=laserwriter-chief:</programlisting></para>
    </example>
  </refsect1>

  <refsect1>
    <title>注意</title>

    <para>15 台を超えるプリンターをネットワークでは、papd プリンタ構成に AppleTalk
    ゾーンを指定する必要があります。そうでない場合、Mac クライアントのセレクターには一部のプリンタしか表示されない場合があります。</para>
  </refsect1>

  <refsect1>
    <title>関連項目</title>

    <para><citerefentry>
        <refentrytitle>papd</refentrytitle>

        <manvolnum>8</manvolnum>
      </citerefentry>, <citerefentry>
        <refentrytitle>atalkd.conf</refentrytitle>

        <manvolnum>5</manvolnum>
      </citerefentry>, <citerefentry>
        <refentrytitle>lpd</refentrytitle>

        <manvolnum>8</manvolnum>
      </citerefentry>, <citerefentry>
        <refentrytitle>lpoptions</refentrytitle>

        <manvolnum>8</manvolnum>
      </citerefentry></para>
  </refsect1>

  <refsect1>
    <title>著者</title>

    <para><ulink url='https://netatalk.io/contributors'>CONTRIBUTORS</ulink> を参照</para>
  </refsect1>
</refentry>
