venerdì 24 dicembre 2010

Ubuntu come file server per Time Machine

Questa breve guida raccoglie un collage di altre guide sparse per internet e opportunamente corrette al fine di rendere il vostro sistema ubuntu un perfetto file server per i backup di Time Machine del vostro Mac.

Tutti i passi sono esaustivamente descritti in questa ottima guida:
http://www.kremalicious.com/2008/06/ubuntu-as-mac-file-server-and-time-machine-volume/
E' pensata per Tiger e Leopard, ma funziona benissimo anche per Snow leopard a patto che si modifichi la seguente linea del file di configurazione di netatalk (/etc/netatalk/afpd.conf) da:

- - transall -uamlist uams_randnum.so,uams_dhx.so -nosavepassword -advertise_ssh
a:
- - transall -uamlist uams_randnum.so,uams_dhx2.so -nosavepassword -advertise_ssh
Il resto della guida dovrebbe andare bene per tutte le versioni di Mac OSX da Tiger al più recente Snow Leopard.

Se pero' volete che Time Machine usufruisca di uno spazio ben definito e limitato (cosa che consiglio visto che effettuerà ogni volta il backup incrementale fino all'esaurimento dello spazio disponibile), ci sono alcune guide come questa:
http://talklikeaduck.denhaven2.com/2010/07/19/ubuntu-timemachine-server-for-snow-leopard
dove suggeriscono l'uso di LVM (Logical Volume Manager), una tecnica che consente di creare al volo nuovi volumi logici o gruppi di volumi logici all'interno delle partizioni esistenti.

Abbiamo optato per una soluzione diversa, per certi versi più semplice e che non richiede l'installazione di servizi aggiuntivi.

In primo luogo con il comando dd abbiamo creato un file vuoto di 80 Gbyte:

dd if=/dev/zero of=/percorso_destinazione/file_vuoto bs=4096 count=20000

per dimensioni del file diverse basta riferirsi alla seguente formula bs= byte trasferiti count = numero di volte che si trasferiscono -> bs*count=dimensione file in byte.

Dopodiché lo abbiamo formattato in ext3 (ma anche altri filesystem vanno più che bene):

mkfs -t ext3 /percorso_destinazione/file_vuoto

Il comando genererà un errore in quanto il file non viene riconosciuto come un dispositivo a blocchi, basta dargli yes e la procedura continuerà senza intoppi.

A questo punto non resta altro che montarlo nella cartella desiderata con l'opzione loop (in quanto non è un dispositivo a blocchi, appunto):

sudo mount -t ext3 -o loop /percorso_destinazione/file_vuoto /cartella_desiderata

e per rendere la cosa permanente aggiungere la seguente linea al file /etc/fstab aprendolo con diritti di root con il vosro editor preferito (io uso nano):

/percorso_destinazione/file_vuoto /cartella_desiderata ext3 loop 0 0

Questo trucco può essere usato non solo per limitare lo spazio fagocitato da time machine ma anche per la creazione di un qualsivoglia filesystem senza dover fare backup e partizionamenti vari.