Mountain LionとNASで作るTime Machine環境

time machine IT
※当サイトにはプロモーションが含まれます。

Snow Leopaldの頃はNASのSMB上にTime Machine環境を構築していたのですが、Lion以降からその手法が使えなくなりました(※1)。
Time Machineの要件がAFP 3.3/Netatalk 2.2に変更になり、SMBでは利用不可になってしまったらしいのです。
それ以来、面倒になってしまい、そのまま放置していました。

先日、NASのOSをDebian Wheezyに入れ替えたのを期にTime Machine環境も構築することにしました。

※1 tmultiというツールを使えば、今でもSMB上にTime Machine環境を構築できるらしいです。
MountainLionでSMBなNASにTimeMachine環境を構築する – daidai7の日記

photo credit: brianjmatis via photopin cc

NAS(QNAP 459 ProII On Debian Wheezy)にTime Machine環境を構築する

今回使用する機材

NAS: QNAP 459 ProII
現在は販売終了となり、後継品が出ているようです。


qnap 469 pro

HDDを4台格納可能であり、とても静かで、おすすめです。
正面の液晶が青く光るところも気に入っています。
少々高価な製品なのですが、秋葉原の某店の在庫処分セールで格安で入手しました。

OSをDebian Wheezyに入れ替えて稼働しています。

Mac: MacBookAir 11インチ(Late 2010)

MacBook Air

NASでの作業

Debian WheezyにNetatalk3.0を導入する

今回はこちらの大変親切なマニュアルを元に作業しましたので、何の問題も無く導入できました。

Install Netatalk 3.0.5 on Debian 7 Wheezy – The Netatalk Wiki

Netatalk3.0のコンパイル

コンパイル前の事前準備として下記のパッケージをインストールします。

% sudo aptitude install build-essential libssl-dev libgcrypt11-dev \
    libkrb5-dev libpam0g-dev libwrap0-dev libdb-dev \
    libavahi-client-dev libacl1-dev libldap2-dev libcrack2-dev \
    systemtap-sdt-dev libdbus-1-dev libdbus-glib-1-dev \
    libglib2.0-dev libevent-dev

Netatalk3.0のソースを入手します。

% wget "http://prdownloads.sourceforge.net/netatalk/netatalk-3.0.5.tar.bz2?download" -O netatalk-3.0.5.tar.bz2

解凍して解凍先に移動します。

% tar xvjf netatalk-3.0.5.tar.bz2
% cd netatalk-3.0.5

configureを行い、Makefileを生成します。

% ./configure \
        --with-init-style=debian \
        --with-cracklib \
        --enable-krbV-uam \
        --without-libevent \
        --with-pam-confdir=/etc/pam.d \
        --with-dbus-sysconf-dir=/etc/dbus-1/system.d

結果が下記のようであればOKです。

Compilation summary:
    CPPFLAGS       = -I$(top_srcdir)/include -I$(top_builddir)/include
    CFLAGS         = -D_U_="__attribute__((unused))" -g -O2
    LIBS           = -ldl  -lcrack
    PTHREADS:
        LIBS   =
        CFLAGS = -pthread
    SSL:
        LIBS   =  -lcrypto
        CFLAGS =  -I/usr/include/openssl
    LIBGCRYPT:
        LIBS   = -L/lib/i386-linux-gnu -lgcrypt
        CFLAGS =
    PAM:
        LIBS   =  -lpam
        CFLAGS =
    WRAP:
        LIBS   = -lwrap
        CFLAGS =
    BDB:
        LIBS   =  -ldb-5.1
        CFLAGS =
    GSSAPI:
        LIBS   = -Wl,-z,relro -lgssapi_krb5 -lkrb5 -lk5crypto -lcom_err
        CFLAGS =
    ZEROCONF:
        LIBS   =  -lavahi-common -lavahi-client
        CFLAGS =  -D_REENTRANT
    LDAP:
        LIBS   =  -lldap
        CFLAGS =
    LIBEVENT:
        LIBS   =
        CFLAGS =
Configure summary:
    INIT STYLE:
         debian
    AFP:
         Extended Attributes: ad | sys
         ACL support: yes
    CNID:
         backends:  dbd last tdb
    UAMS:
         DHX     (PAM SHADOW)
         DHX2    (PAM SHADOW)
         RANDNUM (afppasswd)
         Kerberos V
         clrtxt  (PAM SHADOW)
         guest
    Options:
         Zeroconf support:        yes
         tcp wrapper support:     yes
         quota support:           yes
         admin group support:     yes
         valid shell check:       yes
         cracklib support:        yes
         ACL support:             yes
         Kerberos support:        yes
         LDAP support:            yes
         dbus support:            yes
         dtrace probes:           yes
    Paths:
         Netatalk lockfile:       /var/lock/netatalk
         init directory:          /etc/init.d
         dbus system directory:   /etc/dbus-1/system.d
         pam config directory:    /etc/pam.d
    Documentation:
         Docbook:                 no

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

% make 
% sudo make install

正常にインストールされたことを確認する。

/usr/local/sbin/afpd -V

afpd 3.0.5 - Apple Filing Protocol (AFP) daemon of Netatalk

This program is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free Software
Foundation; either version 2 of the License, or (at your option) any later
version. Please see the file COPYING for further information and details.

afpd has been compiled with support for these features:

          AFP versions: 2.2 3.0 3.1 3.2 3.3 
         CNID backends: dbd last tdb 
      Zeroconf support: Avahi
  TCP wrappers support: Yes
         Quota support: Yes
   Admin group support: Yes
    Valid shell checks: Yes
      cracklib support: Yes
            EA support: ad | sys
           ACL support: Yes
          LDAP support: Yes
         D-Bus support: Yes
         DTrace probes: Yes

              afp.conf: /usr/local/etc/afp.conf
           extmap.conf: /usr/local/etc/extmap.conf
       state directory: /usr/local/var/netatalk/
    afp_signature.conf: /usr/local/var/netatalk/afp_signature.conf
      afp_voluuid.conf: /usr/local/var/netatalk/afp_voluuid.conf
       UAM search path: /usr/local/lib/netatalk//
  Server messages path: /usr/local/var/netatalk/msg/

afpdの設定

% sudo vi /usr/local/etc/afp.conf

[Global]
    mac charset = MAC_JAPANESE
    afpstats = yes

[Homes]
    basedir regex = /home

[My Time Machine Volume]
    path = /export/timemachine
    time machine = yes
    vol size limit = 512000

vol size limitの単位はGB。

Time Machine用のディレクトリを作成

% sudo mkdir -p /export/timemachine
% sudo chmod -R 777 /export/timemachine

daemonを起動する

% sudo insserv netatalk
% sudo /etc/init.d/netatalk start

iptablesの設定

iptablesを使用している場合にはnetatalkが利用するポートを許可する必要がありますので、下記のルールを追加します。

% vi /etc/iptables/rules.v4

-A INPUT -m state --state NEW -m tcp -p tcp --dport 548 -j ACCEPT

% sudo /etc/init.d/iptables-persistent restart

Macの設定

システム環境設定を開きTime Machineを起動する。

システム環境設定

先ほど設定したディレクトリを選択してディスクを使用を選択する。

time machine

NASにログイン可能なIDとパスを入力

以上でOKでした。
過去にSMBでTime Machineを構築したときは、ディスクユーティリティを使用して、Time Machine用のイメージファイルを作成しなければなりませんでしたが、今回の方法ではそのあたりの作業は一切、必要ありませんした。

今回は初回のバックアップなのでこのくらいの時間がかかるようです。

time machine 時間

待っている間にこの記事を作成しています。

QNAP 459 ProIIDebian Wheezyを導入した時の記事は後日、作成予定です。
こちらはかなり苦労しました。

スポンサーリンク
スポンサーリンク
ほしいものリスト
IT
nekokan BLOG

コメント

タイトルとURLをコピーしました