Come utilizzare un Raspberry Pi come unità Time Machine in rete per il tuo Mac

raspberry-pi-macchina del tempo-mac

Perché spendere $ 300 su AirPort Time Capsule quando puoi crearne uno tu stesso con un Raspberry Pi e un disco rigido esterno? Ci vuole un po 'di modifiche, ma una volta impostato, il tuo Mac eseguirà il backup automaticamente, senza alcuno sforzo da parte tua. Non è più necessario collegare un'unità al computer.

Ancora meglio: quando arriva il momento di ripristinare i file, è possibile scollegare il disco rigido dal Pi e collegarlo direttamente al Mac, consentendo di recuperare da un errore di sistema totale utilizzando System Recovery. Hack simili non funzionano in questo modo.

Di cosa hai bisogno

Ti abbiamo mostrato come eseguire il backup del tuo Mac con Time Machine e persino come eseguire i backup di Time Machine sulla rete. Ma in quei tutorial, il backup sulla rete richiede un altro Mac che funge da server. Quindi, se vivi in ​​una famiglia single-Mac, potresti pensare che l'unica opzione sia quella di collegare un disco rigido USB o acquistare una Apple Time Capsule da $ 300.

Non è vero. Il Raspberry Pi collegato a un disco rigido esterno è un'ottima alternativa improvvisata a Time Capsule o un altro Mac ed è molto più economico. (Sì, Time Capsule include la funzionalità del router, quindi in realtà è un prezzo decente per quello che offre, ma questo metodo ti consente di utilizzare qualsiasi router tu desideri e offre più spazio per gli aggiornamenti quando l'unità esaurisce lo spazio.)

Questo tutorial presuppone che tu conosca già le basi di come configurare un Raspberry Pi. Richiede anche un po 'di attrezzatura:

  • Un Raspberry Pi. Qualsiasi modello lo farà, ma il modello attuale è il Raspberry Pi 3 Modello B.
  • Una scheda SD, per il sistema operativo di Raspberry Pi. I vecchi Raspberry Pis useranno una scheda SD standard, mentre quelli più recenti richiederanno una scheda microSD, quindi assicurati di ottenere il tipo giusto. Ecco un grande elenco di carte testate per funzionare bene con il Pi.
  • Un alimentatore per il Pi. La porta di alimentazione Pis è solo microUSB, ma raccomandiamo di ottenere un alimentatore progettato per il Pi per prestazioni affidabili: questo da CanaKit funziona bene.
  • Una connessione di rete cablata per il tuo Pi (potresti usare il Wi-Fi, ma richiede più configurazione e cablata sarà molto meglio per quei grandi backup di rete)
  • Un disco rigido esterno, che ti collegherai al Pi tramite USB. Ti consigliamo di ottenere un disco rigido esterno desktop con un alimentatore dedicato, a meno che tu non abbia un'unità USB che è stata testata lavorando con Pi.

Puoi ottenere la maggior parte di queste cose (e altro) in un colpo solo con un buon kit di avvio Raspberry Pi come questo, oppure puoi acquistarli separatamente. La tua chiamata.

Ho scoperto questo metodo da un post sul blog di Caleb Woods e ho compilato alcune cose che non funzionavano per me leggendo questo post su Badbox.de. I miei più sinceri ringraziamenti a entrambi.

Un'ultima nota: questo hack funziona abbastanza bene nella mia esperienza, ma alla fine è ancora proprio questo: un hack. Per questo motivo, consiglio di avere una sorta di backup oltre a questo, preferibilmente qualcosa di fuori sede. (Dovresti sempre avere un backup fuori sede comunque, in caso di incendio o altro disastro naturale.)

RELAZIONATO: Come eseguire il backup del Mac e ripristinare i file con Time Machine

Fase 1: preparare l'unità esterna per Time Machine

La prima cosa che devi fare è preparare l'unità esterna per funzionare con Time Machine. Collega l'unità al Mac, quindi avvia Utility Disco. Seleziona il tuo disco esterno, quindi fai clic sul pulsante “Cancella”. Si desidera formattare l'unità come “Mac OS Extended”, noto anche come HFS +.

macchina del tempo-creare-partizione

Successivamente, desidereremo assicurarci che il tuo Raspberry Pi e tutti i dispositivi dispongano dell'autorizzazione per controllare l'unità. Vai al Finder, quindi fai clic con il pulsante destro del mouse sull'unità nella barra laterale. Fai clic su “Ottieni informazioni”.

mac-finder-get-info

Nella parte inferiore della finestra che si apre, troverai le impostazioni di autorizzazione.

mac-Finder-permessi

Fai clic sul lucchetto in basso a destra, quindi inserisci la password. Successivamente, seleziona “Ignora la proprietà su questo volume”. E con ciò, sei pronto per connettere l'unità esterna al Pi.

Passaggio due: installa Raspbian sul tuo Pi e connettiti ad esso tramite SSH

Successivamente, dovrai configurare Raspberry Pi con Raspbian, come indicato in questo articolo. Non approfondiremo il processo qui, dal momento che è un progetto in sé e per sé, quindi vai a consultare quella guida per configurare Raspbian sul tuo Pi. Ho usato Raspbian Core per la mia configurazione, in quanto non ho collegato il Pi a un display, ma non c'è motivo per cui la versione completa della GUI di Raspbian non funzionasse.

A proposito: hai due scelte quando si tratta del resto di questo tutorial. Puoi collegare il tuo Raspberry Pi a una tastiera e monitorare e configurare le cose in quel modo, oppure puoi connetterti al tuo Pi su SSH ed eseguire ogni passo comodamente dal tuo Mac. Pensiamo che il metodo SSH sia molto più semplice rispetto alla ricerca di un monitor casuale, quindi ecco come farlo.

mac-lampone-pi-ssh

Avvia il Terminale sul tuo Mac, quindi inserisci il seguente comando:

ssh pi@192.168.1.11

Sostituzione 192.168.1.11 con l'indirizzo IP del tuo Pi. Puoi trovare l'indirizzo IP di qualsiasi dispositivo connesso alla tua rete, incluso Raspberry Pi, accedendo all'interfaccia web del tuo router.

Ti verrà quindi richiesta una password per l'utente predefinito, pi . La password per pi è, per impostazione predefinita, raspberry .

Se ti connetti a un nuovo sistema per la prima volta, ti suggerisco di configurare alcune cose prima di procedere. Prima corsa sudo raspi-config e cambia la password predefinita. Puoi anche espandere il tuo filesystem predefinito qui, se hai una scheda SD di grandi dimensioni (anche se questo non è necessario per questo tutorial.) Raspberry Pi si riavvierà, a quel punto sei pronto per iniziare a lavorare.

Passaggio 3: montare l'unità esterna

Prima di poter configurare Time Machine, è necessario montare l'unità in modo che Raspberry Pi possa leggere e scrivere su di essa. Per fare ciò è necessario installare alcuni software. Innanzitutto, assicurati che tutto il software sul Pi sia aggiornato. Esegui questi due comandi, uno dopo l'altro:

sudo apt-get update

sudo apt-get upgrade

Quindi, installa due pacchetti: hfsprogs e hfsplus. Ciò consentirà a Raspberry Pi di leggere l'unità formattata per Mac.

sudo apt-get install hfsprogs hfsplus

tempo-pi-installazione-HFS-plus

Ora disponi di un software in grado di montare l'unità, ma deve sapere quale unità montare, quindi dovrai fare qualche ricerca. Inizia lanciando Parted.

sudo /sbin/parted

Quindi, digitare print per visualizzare un elenco di unità attualmente connesse. Dovresti vedere il tuo disco esterno qui.

tempo-pi-hard-drive

Da questa schermata, possiamo vedere che la mia unità è un'unità Maxtor da 164 GB (ne avrò una più grande in seguito, lo prometto). Le informazioni importanti qui sono /dev/sda. il tuo disco avrà un nome simile, che dovresti scrivere.

Quindi, guarda la tabella sotto quel blocco di testo. Nel mio caso, è ovvio che la seconda partizione più grande è ciò che sto cercando. Pertanto, prendo atto che la partizione che voglio montare è sda2. Potrebbe essere necessaria una cifra leggermente diversa, se si dispone di più di un'unità o più di una partizione sull'unità.

Ora che hai le informazioni di cui hai bisogno, digita quit e premi Invio. Successivamente, creeremo una cartella che fungerà da punto di montaggio …

sudo mkdir -p /media/tm

… e quindi aggiungere alcune informazioni al file fstab. Utilizzare questo comando per aprire un editor di testo:

sudo nano /etc/fstab

Incollare la seguente riga nel documento, sostituendolo /dev/sda2 con la partizione dell'unità, se diversa da / dev / sda2.

/dev/sda2 /media/tm hfsplus force,rw,user,auto 0 0

tempo-pi-fstab

Dopo aver incollato il testo, premi Ctrl + X per uscire dall'editor, assicurandoti di salvare quando lo fai.

Quindi, montare l'unità con:

sudo mount -a

Se non vedi un messaggio di errore, congratulazioni! Hai montato correttamente l'unità.

Passaggio 3: compilare e installare Netatalk

Netatalk è un software che simula AFP, il protocollo di rete che Apple attualmente utilizza per i backup di Time Machine. È possibile installare una versione antica di Netatalk utilizzando sudo apt-get install netatalk , ma Consiglio vivamente di non farlo. Per ragioni (largamente politiche) complesse, Debian, su cui Raspbian è basato, offre una versione molto obsoleta di Netatalk nei suoi repository. Puoi far funzionare Time Machine usando questa versione obsoleta di Netatalk, ma nella mia esperienza è frustrante.

Quindi, ti consiglio invece di compilare l'ultima versione. È più una seccatura da installare, ma ne vale la pena.

Innanzitutto, è necessario installare le dipendenze. Ecco tutto ciò che devi installare, in un solo comando:

sudo aptitude install build-essential libevent-dev libssl-dev libgcrypt11-dev libkrb5-dev libpam0g-dev libwrap0-dev libdb-dev libtdb-dev libmysqlclient-dev avahi-daemon libavahi-client-dev libacl1-dev libldap2-dev libcrack2-dev systemtap-sdt-dev libdbus-1-dev libdbus-glib-1-dev libglib2.0-dev libio-socket-inet6-perl tracker libtracker-sparql-1.0-dev libtracker-miner-1.0-dev

L'installazione potrebbe richiedere alcuni minuti. Quindi, scarica l'ultima versione di Netatalk. Al momento della stesura di questo, è 3.1.10, anche se potresti voler controllare la home page di netatalk per ottenere il numero della versione più recente. Quindi, esegui questo comando per scaricarlo:

wget http://prdownloads.sourceforge.net/netatalk/netatalk-3.1.10.tar.gz

Sostituisci il numero di versione se trovi una versione successiva sul loro sito.

Ora scompatta il file scaricato con:

tar -xf netatalk-3.1.10.tar.gz

Quindi passa alla nuova cartella appena creata.

cd netatalk-3.1.10

Successivamente, puoi configurare tutte le impostazioni di netatalk prima di compilare il programma, usando questo comando:

./configure 
        --with-init-style=debian-systemd 
        --without-libevent 
        --without-tdb 
        --with-cracklib 
        --enable-krbV-uam 
        --with-pam-confdir=/etc/pam.d 
        --with-dbus-daemon=/usr/bin/dbus-daemon 
        --with-dbus-sysconf-dir=/etc/dbus-1/system.d 
        --with-tracker-pkgconfig-version=1.0

tempo-pi-compile-netatalk

Supponendo che non visualizzi alcun messaggio di errore, puoi passare alla fase successiva ed eseguire:

make

Ci vorrà un po '. Potresti anche prepararti un caffè, alcune focaccine e un pasto di tre portate. Un Raspberry Pi non è veloce nella compilazione di software.

Al termine, puoi finalmente installare Netatalk:

sudo make install

Non è stato divertente? Controlla rapidamente che Netatalk sia effettivamente in esecuzione:

netatalk -V

Vedrai un sacco di informazioni sulla configurazione di Netatalk. Se tutto sembra a posto, configuriamo le cose!

Passaggio quattro: configurare Netatalk

Ora che Netatalk è installato, devi dirgli di condividere il tuo disco. Prima di tutto, dovrai modificare nsswitch.conf.

sudo nano /etc/nsswitch.conf

Qui è necessario aggiungere mdns4 e mdns alla riga che inizia con “hosts:”, in modo che assomigli a questo:

hosts: files mdns4_minimal (NOTFOUND=return) dns mdns4 mdns

tempo-pi-fstab

Questo aggiustamento indica che l'unità Time Machine verrà visualizzata nella barra laterale del Finder non appena connetterai Raspberry Pi alla rete.

Successivamente, dovrai modificare afpd.service:

sudo nano /etc/avahi/services/afpd.service

Copia questo blocco di testo e incollalo in quel file:




    %h
    
        _afpovertcp._tcp
        548
    
    
        _device-info._tcp
        0
        model=TimeCapsule
    

Tra le altre cose, queste informazioni fanno sì che il tuo Raspberry Pi imiti una vera Apple Time Capsule, completa dell'icona appropriata.

Infine, è tempo di configurare l'unità esterna come condivisione di rete.

sudo nano /usr/local/etc/afp.conf

Nella parte inferiore di questo documento, incolla il seguente testo:

(Global)
  mimic model = TimeCapsule6,106

(Time Machine)
  path = /media/tm
  time machine = yes

Se lo desideri, puoi inserire un nome diverso da “Time Machine” tra le seconde parentesi. Questo cambierà il nome dell'unità su cui esegui il backup, come mostrato in Finder e Time Machine stessi.

Infine, vai avanti e avvia i servizi di rete. In ordine, esegui questi due comandi:

sudo service avahi-daemon start
sudo service netatalk start

L'unità è ora disponibile in rete. Per assicurarti che ciò avvenga ogni volta che avvii il tuo Raspberry Pi, inserisci di nuovo questi comandi uno dopo l'altro:

sudo systemctl enable avahi-daemon
sudo systemctl enable netatalk

Siamo molto vicini ora!

Fase cinque: connettiti alla tua macchina del tempo

Vai al Finder sul tuo Mac e dovresti vedere il tuo Raspberry Pi qui.

finder-raspberry-pi

Puoi effettivamente connetterti da qui, facendo clic su “Connetti come” e inserendo lo stesso nome utente e password che usi per connetterti tramite SSH.

Nella mia esperienza, tuttavia, Time Machine funziona meglio se ti connetti all'unità attraverso il suo indirizzo IP, soprattutto se hai impostato indirizzi IP statici con il tuo router (che probabilmente dovresti). Per connetterti, apri Finder, quindi premi Comando + K sulla tastiera.

macchina del tempo-pi-ip-address

Dopo aver montato l'unità, vai su Preferenze di Sistema> Time Machine, quindi seleziona l'unità come backup di Time Machine.

tempo di lavoro-macchina

Verrà eseguito il backup iniziale e, successivamente, i backup verranno eseguiti ogni ora. Ora hai un'unità Time Machine in rete. Godere!

Articoli correlati

Ultimi articoli