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

    <manvolnum>8</manvolnum>

    <refmiscinfo class="date">19 Jan 2013</refmiscinfo>

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

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

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

  <refnamediv>
    <refname>afpd</refname>

    <refpurpose>Apple Filing Protocol デーモン</refpurpose>
  </refnamediv>

  <refsynopsisdiv>
    <cmdsynopsis>
      <command>afpd</command>

      <arg>-d</arg>

      <arg>-F <replaceable>configfile</replaceable></arg>
    </cmdsynopsis>

    <cmdsynopsis>
      <command>afpd</command>

      <group>
        <arg choice="plain">-v</arg>

        <arg choice="plain">-V</arg>

        <arg choice="plain">-h</arg>
      </group>
    </cmdsynopsis>
  </refsynopsisdiv>

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

    <para><command>afpd</command>はUnixファイルシステムにApple Filing Protocol
    (AFP)インターフェースを提供する。これは通常、<command>netatalk</command>(8)によってブート時に起動される。</para>

    <para><command>afpd</command>はファイルサーバの挙動と設定を決めるために<filename>afp.conf</filename>を利用する。</para>
  </refsect1>

  <refsect1>
    <title>オプション</title>

    <variablelist>
      <varlistentry>
        <term>-d</term>

        <listitem>
          <para>デーモンをターミナルから切り離さない。</para>
        </listitem>
      </varlistentry>

      <varlistentry>
        <term>-v</term>

        <listitem>
          <para>バージョン情報を表示してから終了する。</para>
        </listitem>
      </varlistentry>

      <varlistentry>
        <term>-V</term>

        <listitem>
          <para>詳細情報を表示してから終了する。</para>
        </listitem>
      </varlistentry>

      <varlistentry>
        <term>-h</term>

        <listitem>
          <para>ヘルプを表示してから終了する。</para>
        </listitem>
      </varlistentry>

      <varlistentry>
        <term>-F <replaceable>configfile</replaceable></term>

        <listitem>
          <para>利用する設定ファイルを指定する。 (デフォルトは<filename>afp.conf</filename> )</para>
        </listitem>
      </varlistentry>
    </variablelist>
  </refsect1>

  <refsect1>
    <title>シグナル</title>

    <para>最終手段を除いて、ユーザの<command>afpd</command>をシャットダウンするために<command>SIGKILL
    (-9)</command>を使うのは推奨しない。なぜなら、CNIDデータベースが矛盾したままになるかもしれないからである。<command>afpd</command>を終了する安全な方法は、<command>SIGTERM
    (-15)</command>シグナルを送ってそれ自身が停止するのを待つことである。</para>

    <para>メインの<command>afpd</command>プロセスにSIGTERMやSIGUSR1を送れば子プロセスに伝わるので、全部に作用するだろう。</para>

    <variablelist>
      <varlistentry>
        <term>SIGTERM</term>

        <listitem>
          <para>きれいに終了する。マスタプロセスから子プロセスに伝わる。</para>
        </listitem>
      </varlistentry>

      <varlistentry>
        <term>SIGQUIT</term>

        <listitem>
          <para>マスタ<command>afpd</command>にこれを送ると全ての子プロセスを終了する。休止時間なしでAFPサービスを実施するのに使われる。</para>
        </listitem>
      </varlistentry>

      <varlistentry>
        <term>SIGHUP</term>

        <listitem>
          <para>afpdに<command>SIGHUP</command>を送ると設定ファイルを再読み込みする。</para>
        </listitem>
      </varlistentry>

      <varlistentry>
        <term>SIGINT</term>

        <listitem>
          <para>子プロセスの<command>afpd</command>に<command>SIGINT</command>を送ると、このプロセスの<emphasis>max_debug</emphasis>ログを有効にします。ログは<filename>/tmp/afpd.PID.XXXXXX</filename>に送られます。更に<command>SIGINT</command>を送ると元のログ設定に戻ります。</para>
        </listitem>
      </varlistentry>

      <varlistentry>
        <term>SIGUSR1</term>

        <listitem>
          <para><command>afpd</command>プロセスはクライアントに「The server is going down
          for
          maintenance.」というメッセージを送り、5分後に自身を終了します。新規接続を許しません。子プロセスのafpdにこれを送った場合、他の子プロセスには影響しません。それでもメインプロセスは終了するだろうし、全ての新規接続は無効になります。</para>
        </listitem>
      </varlistentry>

      <varlistentry>
        <term>SIGUSR2</term>

        <listitem>
          <para><command>afpd</command>プロセスはビルド時に設定したメッセージディレクトリの下のmessage.pidという名前のファイルを探します。発見したプロセスについて、その内容をメッセージとして対応するAFPクライアントに送ります。メッセージを送った後にファイルは削除されます。このシグナルは子プロセスの<command>afpd</command>にのみ送るべきです。</para>
        </listitem>
      </varlistentry>
    </variablelist>
  </refsect1>

  <refsect1>
    <title>ファイル</title>

    <variablelist>
      <varlistentry>
        <term><filename>afp.conf</filename></term>

        <listitem>
          <para>afpdが使う設定ファイル</para>
        </listitem>
      </varlistentry>

      <varlistentry>
        <term><filename>afp_signature.conf</filename></term>

        <listitem>
          <para>サーバシグネチャのリスト</para>
        </listitem>
      </varlistentry>

      <varlistentry>
        <term><filename>afp_voluuid.conf</filename></term>

        <listitem>
          <para>Time MachineボリュームのUUIDのリスト</para>
        </listitem>
      </varlistentry>

      <varlistentry>
        <term><filename>extmap.conf</filename></term>

        <listitem>
          <para>ファイル名拡張子マッピング</para>
        </listitem>
      </varlistentry>

      <varlistentry>
        <term><filename>message.pid</filename></term>

        <listitem>
          <para>ユーザへ送るメッセージの内容。</para>
        </listitem>
      </varlistentry>
    </variablelist>
  </refsect1>

  <refsect1>
    <title>参照</title>

    <para><citerefentry>
        <refentrytitle>netatalk</refentrytitle>

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

        <manvolnum>5</manvolnum>
      </citerefentry>, <citerefentry>
        <refentrytitle>afp.conf</refentrytitle>

        <manvolnum>5</manvolnum>
      </citerefentry>, <citerefentry>
        <refentrytitle>afp_signature.conf</refentrytitle>

        <manvolnum>5</manvolnum>
      </citerefentry>, <citerefentry>
        <refentrytitle>afp_voluuid.conf</refentrytitle>

        <manvolnum>5</manvolnum>
      </citerefentry>, <citerefentry>
        <refentrytitle>extmap.conf</refentrytitle>

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

        <manvolnum>1</manvolnum>
      </citerefentry>.</para>
  </refsect1>

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

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