職場で導入した MacBookAir の設定をしていました。
バックアップはTimeMachineだよね。家ではTimeCupsuleだから楽々バックアップ取れてるけど、さすがに職場では買えないな。
それならばと、BuffaloのTeraStationにバックアップ先に指定できないか奮闘していました。
どうやらLionになってからは、TimeMachineのバックアップは出来ないらしい。
ファームウェアの更新したら出来るかも、と思い実行してみたがダメorz
こうなったらなんとしてもTimeMachineでバックアップしてやる。
いろいろと調査してわかってきました。
- TimeMachineは
AppleTalkAFPで通信している - Lionになってからはdhx2の認証方式が必須
- 市販のNASはnetatalkベースで
AppleTalkAFPの通信をしているらしいが、バージョン古いことが多い - netatalkは2.2以降でLionのTimeMachineに対応できる
※2011.9.20追記 AppleTalkはもう無いプロトコルだという指摘を受け変更しました。
ちょうど、職場にはsambaサーバーをやってるLinuxマシンがあるので、そのマシンをTimeCupsule化します。
ディストリビューションはVineLinux。
netatalk2.2.1をソースからコンパイルして導入します。
- Berkley DBの導入
まずnetatalkのコンパイルをしようとするとこれが無いと言われて先に進みません。
Oracleからダウンロード可能ですね。ユーザー登録しないとダウンロードできません。
http://www.oracle.com/technetwork/jp/database/berkeleydb/downloads/index.html
展開後、次の手順でインストールします。
- build_unixの中に移動
- ../dist/configure
- make
- make install
- netatalk 2.2.1の導入
以下からダウンロードしました
http://netatalk.sourceforge.net/
インストールは次の手順
- apt-get install avahi (インストールされていない場合)
- apt-get install avahi-devel (configureのオプションでzeroconfするなら必要かな)
- apt-get install libgcrypt-devel (libgcryptは標準で入っていると思う。コンパイル時にdevelが必要か)
- ./configure --with-bdb=/usr/local/BerkleyDB.5.2/ --enable-redhat-sysv --enable-zeroconf
- make
- make install
※2011.9.21追記 avahi とlibgcrypt のインストールについて追加
--with-bdb=/usr/local/BerkleyDB.5.2/ これを指定しないと、BerkleyDBの場所を見つけてもらえません。
--enable-redhat-sysv が無いと起動スクリプトが出来ません。使っているディストリビューションに合わせて選びます。
--enable-zeroconf これで、TimeMachineの設定からボリュームが選べます。avahi-daemonが別途起動している必要あり。
- 設定
標準では /usr/local/etc/netatalk に設定が置かれています。
AppleVolumes.default がデフォルト設定を書くファイル。
~は自分のディレクトリを公開するのでコメントアウト
#~
以下の設定を追加
/var/tmbackup "TimeMachineVol" options:tm volsizelimit:50000
tm でTimeMachine対応
volsizelimit は 容量の制限 MB単位
これで、TimeMachineの設定からバックアップ先が見えるようになりました。
あれやこれや寄り道した結果なので、実はこの操作以外にも必要な事があるかもしれない。
自宅環境で試してみましたが、Linuxサーバはバックアップ用途ではないのでHDDの空きがなく、バックアップ実行までは検証できませんでした。
でも、出来そうな手応えはあるので、今度職場で試してみようと思っています。