Time Capsule Home Made
Segunda-feira, 17 de Dezembro de 2012Há 4 anos atrás publiquei um artigo descrevendo como usar a Time Machine com SMB. Usei essa estratégia para conseguir usar o meu router com dispositivo de backup. Na altura referi a tentativa frustrada de usar o protocolo AFP (através do Netatalk) em vez do SMB, visto que o AFP é suportado de forma mais transparente que o SMB pela Time Machine.
Com a nova funcionalidade introduzida na última versão do MacOSX (10.8), que permite definir vários dispositivos de backup, decidi configurar uma máquina Linux à qual tenho acesso como um dispositivo de backup alternativo. E também decidi tentar novamente o Netatalk, de modo a simplificar ao máximo o processo de backup. Desta vez, e com a flexibilidade adicional de estar a usar um PC em vez de um router, fui bem sucedido
Neste artigo vou então descrever os passos necessários para configurar um PC com Linux (Debian 6 neste caso) para funcionar como uma Time Capsule.
O primeiro passo consiste em instalar o Netatalk na máquina com Linux. É recomendável instalar a versão 3, visto que adicionou algumas novas funcionalidades, que são úteis quando se pretende usar a Time Machine. A versão disponibilizada nos repositórios oficiais do Debian é bastante antiga (2.2), pelo que vamos instalar o Netatalk compilando o código fonte. Assim, começa-se por fazer o download da última versão do Netatalk (3.0.2, na presente data) a partir do site oficial do projecto. Isto deverá colocar no vosso PC um ficheiro comprimido, que, obviamente, é necessário descomprimir. Depois disto, vamos então passar à compilação do Netatalk. Para tal, temos de abrir o Terminal (no meu caso, disponível em Applications > Accessories > Terminal), e mudar para a pasta que contém os ficheiros descomprimidos (usando o comando cd /caminho/da/pasta/). Antes de passarmos à compilação, temos que instalar algumas dependências. Usando uma aplicação como o Synaptic, ou o apt-get directamente no Terminal, é necessário instalar os seguintes pacotes (e respectivas dependências):
- libacl1
- libacl1-dev
- libdb-dev
- libldap2-dev
- libavahi-client-dev
- libgcrypt11-dev
O último é particularmente importante para quem usa a versão 10.7 ou posterior do MacOSX, pois na ausência do mesmo irão muito provavelmente obter erros de autenticação quando se tentarem ligar ao dispositivo de backup.
Podemos agora passar à compilação e instalação do Netatalk, que é feita usando os seguinte comandos:
./configure --enable-quota --enable-zeroconf --with-init-style=debian
make
sudo make install
No primeiro comando definimos algumas opção de compilação. O enable-quota servirá para limitarem o espaço que será disponibilizado para backup (caso não queiram disponibilizar o espaço todo disponível no volume). O enable-zeroconf permitirá que o volume de rede seja automaticamente encontrada pelo MacOSX. A última opção é para que as scripts de inicialização automática do Netatalk quando o SO (Linux) arranca sejam também geradas.
O último comando, que instala o Netatalk, necessita de permissões de administrador, e pode ser necessário introduzir a sua password.
Para termos a certeza que o Netatalk irá sempre arrancar com o SO, deve-se correr o comando sudo update-rc.d netatalk defaults no Terminal.
Depois disto, é só configurar o Netatalk. O ficheiro de configuração está localizado em /usr/local/etc/afp.conf, vamos editá-lo usando o comando sudo gedit /usr/local/etc/afp.conf. Mais uma vez vai precisar de permissões de administrador, e poderá ser necessário introduzir a sua password. Em vez do gedit pode utilizar outro editor qualquer da sua preferência. Abaixo segue uma configuração minimalista.
[Global]
; Global server settings
zeroconf = yes
uam list = uams_dhx2.so
[time-machine]
path = /path/para/paste/de/backup/
time machine = yes
vol size limit = 80000
Primeiro temos um conjunto de configurações globais. A opção zeroconf convém activar para que o volume seja mais facilmente detectado no MacOSX. A opção seguinte define o mecanismo de autenticação, e é necessário definir esta opção nas versões mais recentes do MacOSX (10.7+).
Depois temos as configurações do volume de backup, ao qual chamei time-machine. Primeiro definimos o caminho para o pasta que será partilhada (e onde serão armazenados os backups). Depois indicamos que o volume suporta Time Machine. E por último definimos o tamanho do volume (que será o espaço disponível para a Time Machine usar).
Existem muitas outras opções de configuração. Para uma descrição exaustiva das mesmas, podem aceder a este link.
Depois de concluída a configuração, deverá ser suficiente ter o mac (que pretendemos fazer backup) na mesma rede que o sistema Linux, e ir às preferências da Time Machine para adicionar um novo dispositivo de backup, e deverão ter lá um volume chamado time-machine (ou com o nome que vocês escolheram).
Extra: Cifrar os Backups
O Mountain Lion disponibiliza a opção de cifrar os backups ao adicionarem o volume nas preferências da Time Machine. Em versões anteriores podem usar o este tutorial para obterem backups cifrados.