AirMacは購入不要!CentOSでTimeMachineサーバを作る!(Netatalk編)
2016/06/17
今回はCentOSにNetTalkを入れてMacのTimeMachineサーバとして活用する話。
もちろんAFPファイルサーバとしても活用できる。(Windowsではアクセスできないファイルサーバためセキュリティ的には若干有利)
特にMacBookシリーズを使用している方には有益な内容。
メリットとしてはAirMac Extremeを購入しなくても無線LANでTimeMachine環境が構築可能。
もちろん複数台のMacにも対応。Mac毎に容量をいくつまで食い潰せるかも設定可能。
Netatalkインストール
Netatalkは海外の個人の方が作成・アップデートをしている。なのでありがたく使わせて頂く。
執筆時点での最新版は 3.1.8 。
今回はNetatalk 3.1.8 を構築する手順を記載する。
以下のコマンドを実行してもらえればインストール可能。参照したのはこのページ
コンパイルに必要なパッケージ群なのですでにインストール済みだったら不要
# yum install rpm-build gcc make
wgetでローカルにダウンロード。ディレクトリはどこでも
# wget http://www003.upp.so-net.ne.jp/hat/files/netatalk-3.1.8-0.1.4.fc24.src.rpm
SRPMファイルをインストール
# rpm -ivh netatalk-3.1.8-0.1.4.fc24.src.rpm
rpmbuildディレクトリへ移動してRPMファイルを作成
# cd ~/rpmbuild
# rpmbuild -bb SPECS/netatalk.spec
rpmbuildが作成したゴミを削除
# rpmbuild --clean SPECS/netatalk.spec
正常にコンパイルできたなら「~/rpmbuild/RPMS/x86_64」にrpmファイルが作成されているのでインストール
# rpm -ivh RPMS/x86_64/netatalk-3.1.1-0.0.3.el6.x86_64.rpm
インストールされているか確認。バージョン値が表示されたらOK
# rpm -qa | grep netatalk
Netatalk 設定
設定は/etc/netatalk/afp.conf
を編集。
TimeMachine用は以下な感じ。今回は外付けHDDをターゲットにしているので/mnt以下のディスクを指定
「vol size limit」で指定した値をデータサイズの上限に設定できる。今回は256GBを上限にする。
多数のディレクトリに 「vol size limit」を設定することで柔軟な運用が可能。
[BackupHD]がFinderに表示されるディスク名となる。
コンフィグの詳細はここを参考に。
[Global]
uam list = uams_dhx2.so
spotlight = yes
mac charset = MAC_JAPANESE
log file = /var/log/netatalk.log
log level = default:warn
cnid scheme = dbd
[Homes]
basedir regex = /home
[BackupHD]
path = /mnt/backuphd
time machine = yes
vol size limit = 256000
spotlight = no
起動スクリプトを有効
# chkconfig netatalk on
TCP:548を通過するようにiptablesを変更
# iptables -A INPUT -p tcp -m tcp --dport 548 -j ACCEPT
その他TimeMachine用ライブラリのインストール
すべて必要。お付き合い願います。
Avahi deamon のインストールとUDP:5353の解放
# yum install avahi nss-mdns avahi-tools avahi-devel
# iptables -A INPUT -p udp -m udp --dport 5353 -j ACCEPT
Berkeley DB のインストール
# yum install db4-devel
Libgcryptのインストール
# yum install libgcrypt libgcrypt-devel
libacl-devel のインストール
# yum install libacl-devel
quota-devel のインストール
# yum install quota-devel
Netatalk起動
以下のコマンドで起動。OS起動時の起動スクリプトの登録を忘れずに。
# /etc/rc.d/init.d/netatalk start
# chkconfig netatalk on
問題なければMacのBonjourのおかげでTimemachine設定画面でTimemachineターゲットに設定できる。
まずは「ディスクを選択...」をクリックする。
正常に稼動していれば、CentOS上に作成したTimeMachineサーバを自動的に検知して表示される。
AirMacのアイコンでもなく、Macの外付けHDDのアイコンでもないがTimeMachineに設定できる。
ディスク選択後、自動的にバックアップが開始されると思うがそこまで到達すれば作業は終了と見て良いだろう。