netatalk.io

Netatalk 4.5.0

名前

afpd — Apple Filing Protocol デーモン

概要

afpd [-d] [-F configfile]

afpd [-v | -V | -h]

説明

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

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

オプション

-d

デーモンをターミナルから切り離さない。

-v

バージョン情報を出力して終了する。

-V

詳細情報を表示してから終了する。

-h

ヘルプを表示してから終了する。

-F configfile

利用する設定ファイルを指定する。

シグナル

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

afpdプロセスにSIGTERMやSIGUSR1を送れば子プロセスに伝わるので、全部に作用するだろう。

SIGTERM

きれいに終了する。親プロセスから子プロセスに伝わる。

SIGQUIT

afpdにこれを送ると全ての子プロセスを終了する。 休止時間なしでAFPサービスを実施するのに使われる。

SIGHUP

afpdにSIGHUPを送ると設定ファイルを再読み込みする。

SIGINT

afpdSIGINTを送るとmax_debugロギングが有効になり、 システムのtmpディレクトリにキャッシュをダンプする:

ディレクトリキャッシュダンプ (afp.conf(5)のdircache modeを参照):

もう一度SIGINTを送ると元のログ設定に戻る。

SIGUSR1

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

SIGUSR2

afpdプロセスのAFPクライアントにサーバメッセージを送る。 シグナルが受信されると、afpdはメッセージディレクトリ(デフォルト: LOCALSTATEDIR/netatalk/msg/; コンパイル時のパスはafpd -Vで表示) で以下の順序でメッセージファイルを探す:

  1. message.PID — 子プロセスIDで終わるファイル名のファイル
  2. message — PID特定のファイルが見つからないときのフォールバック

ファイルの内容は読み取られ、接続されたAFPクライアントにサーバメッセージとして転送される。ファイルは読み取られた後に削除される。 このシグナルはafpdプロセスにのみ送るべきである。 親afpdはSIGUSR2ハンドラをインストールしないので、親プロセスに送ると親プロセスが終了し、新しい接続ができなくなる。

使用例:

# 接続されたユーザの子afpd PIDを見つけてから:
echo "Scheduled maintenance tonight at 22:00" \
    > LOCALSTATEDIR/netatalk/msg/message.PID
kill -USR2 PID

ファイル

afp.conf

afpdが使う設定ファイル

extmap.conf

ファイル名拡張子マッピング

afp_signature.conf

サーバシグネチャのリスト

afp_voluuid.conf

Time MachineボリュームのUUIDのリスト

LOCALSTATEDIR/netatalk/msg/message.PID, LOCALSTATEDIR/netatalk/msg/message

SIGUSR2で読み取られるサーバメッセージファイル。PID特定の形式(message.PID)は単一の接続されたクライアントを対象とする。 プレーンなmessage形式はPID特定のファイルが存在しないときのフォールバックである。両方とも読み取られた後に削除される。 コンパイル時のディレクトリパスはafpd -Vで表示される。

関連項目

netatalk(8), hosts_access(5), afp.conf(5), afp_signature.conf(5), afp_voluuid.conf(5), extmap.conf(5), dbd(1)

著者

CONTRIBUTORS を参照