第2章 インストール

Eiichirou UDA(日本語訳)

2016 年 7 月 26 日(訳)

目次

Netatalk の入手の仕方
バイナリーパッケージ
ソースパッケージ
Netatalk のコンパイル
前提条件
Netatalk のコンパイル

警告

Netatalk 3 は他バージョンと共存できないので,以前に Netatalk の古いバージョンを使ったことがあるなら, “Netatalk 2 からのアップグレード”の章をまず読んでいただきたい!!!

Netatalk の入手の仕方

この件の最新の情報は GitHub の netatalk のページを一読いただきたい。

https://github.com/Netatalk/netatalk

バイナリーパッケージ

Netatalk のバイナリーパッケージは,いくつかの Linux,Unix ディストリビューションに含まれている.通常の配布元も見たいだろうと思う。

Ubuntu パッケージ:https://launchpad.net/ubuntu

Debian パッケージ:http://www.debian.org/

様々な RPM パッケージ:http://rpmfind.net/

Fedora/RHEL パッケージ:http://koji.fedoraproject.org/koji/search

Gentoo パッケージ:http://packages.gentoo.org/

openSUSE パッケージ:http://software.opensuse.org/

Solaris パッケージ:http://www.opencsw.org/

FreeBSD ポート:http://www.freebsd.org/ports/index.html

NetBSD pkgsrc: http://pkgsrc.se/search.php

OpenBSD ports:https://openports.pl

などである.

ソースパッケージ

Tarball

Netatalk のソースを tar で固めた .tar.xz および .tar.bz2 形式のものが GitHub の netatalk のページにある.

Git

Git レポジトリ のダウンロードは迅速で容易である:

  1. Git がインストールしてあることを確認する.which git は git のパスを示してくれるはずである.

    $ which git
    /usr/bin/git
  2. ソースを取得してみよう.

    $ git clone https://github.com/Netatalk/netatalk.git netatalk-code
    Initialized empty Git repository in /path/to/new/source/dir/netatalk/.git/
    remote: Counting objects: 2503, done.
    ...
    

    上記で Git リポジトリから,Netatalk のソース全体の完全でまっさらのコピーを含む netatalk-code という名前のローカルディレクトリが作成される.

  3. レポジトリのコピーを最新の状態にしておきたい場合,適宜以下を実行する.

    $ git pull
  4. netatalk-code ディレクトリに cd して, ./bootstrapを実行する.これで次の段階で必要となる configure スクリプトが作成される.

    $ ./bootstrap

さらなる情報についてはDeveloper Notes ページ も参照のこと.

Netatalk のコンパイル

前提条件

注記

お使いのOSには下記ソフトウェアのバイナリーパッケージが提供される可能性が高い.

パッケージマネージャで検索すれば見つけられるだろう.

必要なサードパーティソフトウェア

  • Berkeley DB.

    書き込みの時に最低でもバージョン 4.6 が必要となる.

    推奨バージョンは 5.3 である Sleepycat ライセンスで提供された最終リリースである.

  • Libgcrypt

    OS X 10.7 とそれ以降で必須となった DHX2 のために Libgcrypt が必要である.

任意のサードパーティソフトウェア

Netatalk はその機能性を拡充するために以下のサードパーティソフトウェアを使用することができる.

  • Spotlight サポートのための Tracker

    Netatalk はメタデータのバックエンドとして Tracker を使用する.最近の Linux ディストリビューションには,Tracker のバージョン 0.7 以来使用可能な libtracker-sparql が提供されている.

  • Bonjour(Zeroconf としても知られる)のための mDNSresponderPOSIX または Avahi

    サービス探索のために Mac OS X 10.2 及び以降のものは Bonjour(Zeroconf としても知られる)を使用する.

    Avahi は DBUS サポートのもとで ( --enable-dbus) ビルドされなければならない.

  • TCP wrappers

    TCPD または LOG_TCP としても知られる Wietse Venema のネットワークロガー.

    セキュリティオプションは: ホストごとドメインごとかつ/ないしはサービスごとのアクセス制御; ホスト名のなりすましあるいはホストアドレスのなりすまし検出; 早期警告システムを実装するブービートラップ;である.

  • PAM

    PAM はユーザー認証の柔軟な機構を実現する.PAM は SUN Microsystems によって作り出された. Linux-PAM はアプリケーションがどのようにユーザーを認証するのかを選択できるようなローカルシステム管理を実現する共有ライブラリーのセットである.

  • iconv

    iconv はたくさんの文字エンコーディングの変換ルーチンを提供する.Netatalk は iconv を使用して内蔵されていない ISO-8859-1 のようなキャラクターセット変換を実現する. glibc システムでは glibc の提供する iconv 実装を使うことができる.さもなくば GNU libiconv 実装を使うことができる.

Netatalk のコンパイル

ビルドの設定をする

バイナリーをビルドするには最初にソースのディレクトリで ./configure プログラムを実行する.これによって Netatalk がターゲットのオペレーティングシステム向けに自動的に設定されるはずである. もし普通とは違う要求がある場合,以下を実行すれば特殊なオプションで有効化できるものを見ることができる.

$ ./configure --help

最も頻繁に使用されるオプションは:

  • --with-init-style=redhat-sysv|redhat-systemd|suse-sysv|suse-systemd|gentoo-openrc|gentoo-systemd|netbsd|debian-sysv|debian-systemd|solaris|openrc|systemd|macos-launchd

    このオプションがスタートアップスクリプトをどこにインストールするかの助けになる.

  • --with-bdb=/path/to/bdb/installation/

    Berkeley DB を標準的な場所以外にインストールした場合,このオプションを使って netatalk に Berkeley DB をインストールした場所(訳注:すなわち /path/to/bdb/installation/ )を指示しなければならない

  • --with-ssl-dir=/path/to/ssl/installation/

    OpenSSL または LibreSSL を標準以外の場所にインストールした場合, このオプションを指定しなければならない

そして必要なあらゆるオプションを含めて configure を実行する.

$ ./configure [arguments]

Netatalk の Makefile 作成に使われた設定の概要を表示して configure は終了する.

Spotlight

Netatalk はメタデータのバックエンドに Gnome Tracker を用いる.少なくとも最初に SPARQL をサポートしたバージョン 0.7 以降が必要である.

まだインストールしていなければ tracker パッケージと tracker-devel パッケージをインストールする.Solaris では OpenCSW をインストールした後に OpenCSW の不安定版レポジトリーにある Tracker のパッケージをインストールする.

Tracker のパッケージは pkg-config 経由で見つかる.デフォルトのバージョン 0.12 より新しいバージョンがインストールされている場合もあるので, 末尾のバージョン番号も渡す必要があるかもしれない.すなわち

$ pkg-config --list-all | grep tracker
        tracker-sparql-3.0             tracker-sparql-3.0 - Tracker : A SPARQL triple store library

であれば:

$ ./configure --with-tracker-pkgconfig-version=3.0 ...

とする.

もし Solaris と OpenCSW 由来の Tracker を使っていれば,PKG_CONFIG_PATH 環境変数を設定し,--with-tracker-prefix configure オプションを加え, LDFLAGS="-R/opt/csw/lib" を加える必要がある.

PKG_CONFIG_PATH=/opt/csw/lib/pkgconfig LDFLAGS="-R/opt/csw/lib" ./configure --with-tracker-prefix=/opt/csw --with-tracker-pkgconfig-version=0.16 ...

Tracker ライブラリーが見つけられているかどうか,configure の出力を確認する:

checking for TRACKER... yes
        checking for TRACKER_MINER... yes
        ...
        Configure summary:
        ...
          AFP:
            Spotlight: yes
        ...

コンパイルとインストール

次に以下を実行

$ make

すると Netatalk のバイナリーを生成するはずである.(この段階は完了するのに数分かかる)

この過程が終了すれば,以下のコマンドを使って

$ make install

ドキュメントとバイナリーのインストール(デフォルトの場所を使う場合は "root" として行わなければならない)ができる.