CentOSでTimeMachineサーバを作る

Macを何台か買ったのを機に、その辺に余っていたハード使ってTimeMachineサーバを立てたメモ

環境

CentOS6.3(Minimalでインストール)

必要なパッケージを入れる


yum -y update
yum -y install wget cracklib-devel openssl-devel quota-devel libtool automake autoconf db4-devel pam-devel tcp_wrappers-devel libgcrypt-devel avahi-dnsconfd avahi-devel libacl-devel openldap-devel make lynx

nss-mdnsのインストール

avahiで使うので導入する


cd /usr/local/src
wget http://0pointer.de/lennart/projects/nss-mdns/nss-mdns-0.10.tar.gz
tar xzvf nss-mdns-0.10.tar.gz
cd nss-mdns-0.10
./configure
make
make install

vi /etc/nsswitch.conf
hostsの行を下記の用に書き換え
hosts:      files mdns4_minimal [NOTFOUND=return] dns mdns4

netatalkのインストール


cd /usr/local/src
wget http://prdownloads.sourceforge.net/netatalk/netatalk-3.0.2.tar.gz
tar xzvf netatalk-3.0.2.tar.gz
cd netatalk-3.0.2
./configure --with-init-style=redhat-sysv
make
make install

バックアップを取りたいmacごとのアカウントの作成


useradd user1
passwd user1
su user1
mkdir ~/TM
exit

useradd user2
passwd user2
su user2
mkdir ~/TM
exit

以下、必要な台数分繰り返し

netatalkの設定


vi /usr/local/etc/afp.conf

[Global]
; Global server settings
vol preset = default_for_all_vol

[default_for_all_vol]
file perm = 0600
directory perm = 0700

[user1TimeMachine]
path = /home/user1/TM
valid users = user1
time machine = yes
vol size limit = 100000

[user2TimeMachine]
path = /home/user2/TM
valid users = user2
time machine = yes
vol size limit = 100000

以下、必要な台数分繰り返し

iptablesの設定


vi /etc/sysconfig/iptables
-A INPUT -m state --state NEW -m tcp -p tcp --dport 548 -j ACCEPT
-A INPUT -m state --state NEW -m udp -p udp --dport 548 -j ACCEPT
-A INPUT -m state --state NEW -m udp -p udp --dport 5353 -j ACCEPT
service iptables restart

netatalkの自動起動


chkconfig netatalk on
service messagebus start
service avahi-daemon start
service netatalk start

これでmac側のTimeMachineのディスク選択に表示されるはず
mac側で見えるようになるまで時間がかかることもあるかも
vol size limitはHDDの容量と相談