Ubuntu transformat în Time Machine

  Acasă » Jurnale » Blog claudiu.cristea » Ubuntu transformat în Time Machine  
 

Ubuntu transformat în Time Machine

Pentru că iubesc Mac și iubesc Linux, mi-am transformat un server Ubuntu 10.04 în Time Machine pentru a-mi salva automat, din oră în oră, datele de pe MacBook Pro.

Time Machine

Time Machine îți permite să realizezi un backup automat al întregului sistem în Mac OS X v10.5 și Mac OS X 10.6 sau mai nou. Time Machine păstrează o copie „la zi” a tot ce ai salvat în Mac: fișiere sistem, fotografii digitale, muzică, filme, show-uri TV, documente și așa mai departe. Dacă e nevoie poți foarte ușor să „călătorești înapoi în timp” și să restaurezi fișiere în versiunea de la o anumită dată.

Pentru detalii vezi: http://support.apple.com/kb/ht1427

Alternativa Time Capsule

Apple furnizează un dispozitiv hardware numit Time Capsule cu performanțe impresionante. Time Capsule face backup folosind rețeaua Wi-Fi la mare viteză. Capacitatea de stocare este de asemenea competitivă: varianta 2TB sau 3TB. Cu toate astea mulți preferă o soluție proprie în special din cauza prețului. Un server Linux/Ubuntu poate fi o asemenea opțiune.

Protocolul AFP

Apple folosește protocolul AFP (Apple Filing Protocol) ca și protocol de rețea (network protocol) pentru a oferi servicii de fișiere pentru Mac OS X. AFP este unul dintre serviciile de fișiere suportate de Mac OS X alături de Server Message Block (SMB), Network File System (NFS), File Transfer Protocol (FTP) și WebDAV.

Provocarea principală a folosirii unei mașini Ubuntu ca și server Time Machine este tocmai aceea de a oferi acces la fișierele stocate pe Ubuntu prin AFP. Cu alte cuvinte de a face ca Ubuntu să utilizeze AFP pentru a manipula fișiere.

Cum facem asta? Avem noroc cu universul opensource :) Netatalk este soluția. Netatalk este un fileserver AFP Open Source. Un sistem *NIX/*BSD care rulează Netatalk este capabil să servească simultan mai mulți clienți Macintosh pe post de AppleShare fileserver (AFP), AppleTalk router, *NIX/*BSD print server și pentru a accesa imprimante AppleTalk via Printer Access Protocol (PAP).

La treabă...

Netatalk. Instalare și configurare

Instalarea pe Debian/Ubuntu e simplă:

$ sudo apt-get install netatalk

Fișierele /etc/default/netatalk și /etc/netatalk/afpd.conf trebuie lăsate nemodificate. Singurul fișier de configurare care necesită atenție este /etc/netatalk/AppleVolumes.default. Aici, la finalul fișierului, vom specifica care este directorul pe care îl punem la dispoziția Time Machine. Orice director din mașina Linux poate fi specificat aici, singura condiție fiind aceea ca toată lumea să aibă permisiune de citire/scriere. În exemplul nostru vom folosi /var/TimeMachine:

# By default all users have access to their home directories.
#~/ "Home Directory"
/var/TimeMachine "TimeMachine" options:tm,usedots

Bineînțeles că poți înlocui /var/TimeMachine cu orice alt director. Partea importantă aici este opțiunea options:tm. Ea furnizează suport pentru Time Machine. De asemenea se poate observa opțiunea usedots. Aceasta previne transformarea numelor de fișiere care încep cu "." (dot) prin înlocuirea punctului în reprezentare hex.

Asigură-te că toată lumea are acces de citire/scriere:

$ sudo chmod a+rw /var/TimeMachine

Tot acum poți să definești și alte share-uri. Acestea nu au legătură cu Time Machine dar poți folosi Netatalk pentru a realiza și alte puncte de share, adică de interacțiune între Mac și Linux. Imaginează-ți, pentru similaritate, share-urile Samba.

Poți să transformi fiecare director utilizator în share:

~/ "Home Directory" options:usedots

Sau să adaugi un director care să fie folosit de toți userii:

/var/share_all "Share" options:usedots

Cu aceste configurări, fișierul /etc/netatalk/AppleVolumes.default devine:

# By default all users have access to their home directories.
~/ "Home Directory" options:usedots
/var/TimeMachine "TimeMachine" options:tm,usedots
/var/share_all "Share" options:usedots

Salvează și repornește Netatalk:

$ sudo /etc/init.d/netatalk restart

În acest moment serviciul afpd trebuie să ruleze corect. Poți verifica:

$ ps -ef | grep afpd
root      4270     1  0 20:39 ?        00:00:00 /usr/sbin/afpd -U uams_dhx2.so,uams_clrtxt.so -g nobody -c 50 -n sweet

Dacă totul e OK ar trebui să poți să te conectezi din Mac la directorul căruia i-ai dat share. Deschide o fereastră Finder, în Mac, și selectează „Go > Connect to Server...”. Sub „Server Address” va trebui să introduci IP-ul serverului Linux. De exemplu:

Server Address: afp://192.168.1.100

Finder trebuie să-ți solicite datele de login. Introduci numele și parola oricărui user de pe serverul Linux care are permisiuni la acel director.

Dacă lucrurile au mers conform planului trebuie să vezi directorul TimeMachine fără conținut. Poți verifica dacă ai drepturi de citire/scriere pe acel director. Din Mac creează, vizualizează și șterge un fișier de test sub TimeMachine.

Dacă nu reușești să te conectezi sau apar alte probleme, verifică fișierul /var/log/daemon.log. Ar trebui să conțină informații utile pentru depanare.

Configurare Avahi

Avahi este o implementare a specificațiilor Apple Zeroconf care include un sistem pentru multicast DNS/DNS-SD service discovery. Avahi este o alternativă GPL la Bonjour.

Configurarea Avahi va permite ca share-urile să fie afișate în Mac fără să fie necesară maparea lor cu „Go > Connect to Server...”.

Pachetul Avahi trebuie să fie preinstalat pe Ubuntu. Tot ceea ce trebui făcut este să creezi un fișier /etc/avahi/services/afpd.service cu următorul conținut:

$ sudo nano /etc/avahi/services/afpd.service
<service-group>
<name replace-wildcards="yes">%h</name>
<service>
<type>_afpovertcp._tcp</type>
<port>548</port>
</service>
<service>
<type>_device-info._tcp</type>
<port>0</port>
<txt-record>model=Xserve</txt-record>
</service>
</service-group>

Nu e nevoie să restartezi Avahi, serverul trebuie să apară automat în partea stângă a Mac Finder. În cazul meu se numește sweet:

Alege volumul Time Machine pentru backup

Deschide Time Machine Preferences și selectează volumul TimeMachine pentru backup.

Asta e tot. Succes!

Comentarii

Claudiu, multam de acest articol! Mi-a fost de mare ajutor, ca ma chinuiam prin NFS care merge infect intre ubuntu si mac.

-Teodor

Teodor (neverificat), 4 Februarie 2012 21:55

superb.
chiar o sa testez si eu pe centos si o sa va zic rezultatele

tipit.info (neverificat), 1 Aprilie 2012 00:02

Publică un comentariu nou

Conţinutul acestui câmp va fi considerat confidenţial şi nu va fi făcut public.
  • Adresele de situri web şi adresele de e-mail se transformă automat în linkuri.
  • Taguri HTML permiseŞ <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Liniile şi paragrafele sunt rupte automat.

Mai multe informaţii despre opţiunile de filtrare

   
   
 
 
  ©2007-2019, Claudiu Cristea. All rights reserved | Powered by Grafit SRL    Get Firefox!