10Sep

Hur man använder en Raspberry Pi som en nätverksmaskinsdrift för din Mac

Varför spendera $ 300 på en AirPort Time Capsule när du kan göra en själv med en Raspberry Pi och en extern hårddisk? Det tar lite tweaking, men när det är helt klart, kommer din Mac att säkerhetskopiera automatiskt utan någon ansträngning från din sida. Du behöver inte behöva ansluta en enhet till din dator.

Ännu bättre: När det är dags att återställa filer kan du koppla ur hårddisken från Pi och ansluta den direkt till din Mac, så att du kan återställa från ett totalt systemfel med Systemåterställning. Liknande hack fungerar inte så här.

Vad du behöver

Vi har visat dig hur du återställer din Mac med Time Machine, och även hur du utför Time Machine-säkerhetskopior över nätverket. Men i dessa handledningar krävde en säkerhetskopiering via nätverket en annan Mac som fungerar som en server. Så om du bor i ett enda Mac-hushåll kanske du tror att du bara kan ansluta en USB-hårddisk eller köpa en Apple Time Capsule på 300 kronor.

Det är inte sant. Raspberry Pi ansluten till en extern hårddisk gör ett bra improviserat alternativ till en Time Capsule eller en annan Mac, och det är mycket billigare.(Ja, Time Capsule innehåller routerfunktionalitet, så det är faktiskt ett anständigt pris för vad det erbjuder - men den här metoden låter dig använda vilken router du vill, och erbjuder mer utrymme för uppgraderingar när din enhet går tom för rymden.)

Dettahandledning förutsätter att du redan vet grunderna om hur man ställer upp en Raspberry Pi. Det kräver också lite utrustning:

  • En Raspberry Pi. Varje modell kommer att göra, men den nuvarande modellen är Raspberry Pi 3 Model B.
  • Ett SD-kort, för Raspberry Pi operativsystem.Äldre Raspberry Pis kommer att använda ett vanligt SD-kort, medan nyare kommer att kräva ett microSD-kort, så se till att få rätt sort. Här är en bra lista över kort som testats för att fungera bra Pi.
  • A Strömförsörjning för Pi. Pis-strömporten är bara microUSB, men vi rekommenderar att du får en strömförsörjning avsedd för Pi för pålitlig prestanda. Den här från CanaKit fungerar bra.
  • En kabelansluten nätverksanslutning för din Pi( du kan använda Wi-Fi, men det tar mer setup och trådbundet kommer att bli mycket bättre för de stora säkerhetskopieringarna på nätet)
  • En extern hårddisk som du kommer att anslutatill Pi över USB.Vi rekommenderar att du får en stationär extern hårddisk med egen dedikerad strömförsörjning, om du inte har en USB-driven enhet som har testats med Pi.

Du kan få de flesta av dessa saker( och mer) i ett fall med ett bra Raspberry Pi startpaket som den här, eller du kan köpa dem separat. Ditt samtal.

Jag fick reda på den här metoden från ett blogginlägg av Caleb Woods och fyllde i några saker som inte fungerade för mig genom att läsa det här inlägget på Badbox.de. Mitt uppriktiga tack till er båda.

En sista anmärkning: Denna hack fungerar ganska bra i min erfarenhet, men i slutet av dagen är det fortfarande bara det: ett hack. Av denna anledning rekommenderar jag att du har någon form av backup förutom detta, helst något offsite.(Du bör alltid ha en säkerhetskopiering utan säkerhet i händelse av brand eller annan naturkatastrof.)

RELATERADE ARTIKLAR
Så här säkerhetskopierar du Mac och återställer filer med Time Machine
Vad är det bästa sättet att säkerhetskopiera datorn?

Steg 1: Förbered den externa enheten för Time Machine

Det första du behöver göra är att förbereda den externa enheten för att fungera med Time Machine. Sätt i enheten i din Mac och starta sedan Diskverktyget. Välj din externa enhet och klicka sedan på "Radera" -knappen. Du kommer att vilja formatera enheten som "Mac OS Extended", även känd som HFS +.

Nästa kommer vi att vilja se till att din Raspberry Pi, och varje enhet, har behörighet att styra enheten. Gå till Finder och högerklicka på enheten i sidofältet. Klicka på "Hämta info".

I botten av fönstret som öppnas hittar du behörighetsinställningarna.

Klicka på låset längst ner till höger och ange ditt lösenord. Kontrollera sedan "Ignorera ägandet på den här volymen." Och med det är du redo att ansluta din externa enhet till Pi.

Steg två: Installera Raspbian på din Pi och anslut till den över SSH

Därefter måste du konfigurera din Raspberry Pi med Raspbian, som beskrivs i den här artikeln. Vi kommer inte att detaljera processen här, eftersom det är ett projekt i sig, så kolla in den guiden för att få Raspbian att sätta upp på din Pi. Jag använde Raspbian Core för min inställning, eftersom jag inte har anslutit Pi till en bildskärm, men det finns ingen anledning att den fullständiga GUI-versionen av Raspbian inte skulle fungera.

Tala om vilka: du har två val när det gäller resten av denna handledning. Du kan koppla din Raspberry Pi till ett tangentbord och övervaka och ställa saker på så sätt, eller du kan ansluta till din Pi över SSH och köra varje steg från din Macs komfort. Vi tycker att SSH-metoden är mycket enklare än att hitta en slumpmässig bildskärm, så här är hur du gör det.

Starta terminalen på din Mac och ange sedan följande kommando:

ssh [email protected]

Byta 192.168.1.11 med din Pis IP-adress. Du kan hitta IP-adressen till vilken enhet som är ansluten till ditt nätverk, inklusive din Raspberry Pi, genom att gå till routerns webbgränssnitt.

Du kommer då att bli ombedd för ett lösenord för standardanvändaren, pi. Lösenordet för pi är som standard hallon.

Om du ansluter till ett nytt system för första gången föreslår jag att du konfigurerar några saker innan du fortsätter. Först kör sudo raspi-config och ändra ditt standardlösenord. Du kan också expandera ditt standardfilsystem här om du har ett stort SD-kort( även om det inte är nödvändigt för denna handledning.) Din Raspberry Pi startar om, och då är du redo att komma till jobbet.

Steg tre: Montera din externa enhet

Innan du kan konfigurera din Time Machine måste du montera enheten så att din Raspberry Pi kan läsa och skriva till den. Det här kräver att du installerar lite programvara. Först, se till att all programvara på Pi är uppdaterad. Kör dessa två kommandon, en efter en:

sudo apt-get uppdatering

sudo apt-get uppgradering

Installera sedan två paket: hfsprogs och hfsplus. Dessa låter din Raspberry Pi läsa din Mac-formaterad enhet.

sudo apt-get install hfsprogs hfsplus

Du har nu programvara som kan montera din enhet, men den behöver veta vilken enhet som ska monteras, så du behöver göra lite forskning. Börja med att starta Parted.

sudo /sbin/ delas

Skriv sedan ut skriv ut för att se en lista över anslutna enheter. Du bör se din externa enhet här.

Från den här skärmdumpen kan vi se att min enhet är en 164 GB Maxtor-enhet( jag kommer att bli större senare, lovar jag.) Den viktiga informationen här är /dev/ sda. Din enhet har ett liknande namn som du borde skriva ner.

Se sedan på tabellen under det här textblocket. I mitt fall är det uppenbart att den andra, större partitionen är det jag letar efter. Därför noterar jag att den partition jag vill montera är sda2.Det kan hända att du behöver en lite annorlunda bild om du har mer än en enhet eller mer än en partition på din enhet.

Nu när du har den information du behöver skriver du upp och trycker på Enter. Därefter kommer vi att skapa en mapp som ska fungera som vår monteringspunkt. ..

sudo mkdir -p /media/ tm

. .. och lägg sedan till information i fstab-filen. Använd det här kommandot för att öppna en textredigerare:

sudo nano /etc/ fstab

Klistra in följande rad i dokumentet, ersätt /dev/ sda2 med din enhetens partition, om det skiljer sig från /dev/ sda2.

/dev/ sda2 /media/ tm hfsplus kraft, rw, användare, auto 0 0

När du har klistrat in texten, tryck på Control + X för att lämna redigeraren, var noga med att spara när du gör det.

Montera sedan enheten med:

sudo mount-en

Om du inte ser ett felmeddelande, grattis! Du har lyckats montera din enhet.

Steg tre: Kompilera och installera Netatalk

Netatalk är ett program som simulerar AFP, nätverksprotokollet Apple, som för närvarande använder Time Machine-säkerhetskopior. Du kan installera en gammal version av Netatalk med sudo apt-get install netatalk, men rekommenderar jag starkt att du inte gör det .För( till stor del politiska) komplexa orsaker, Debian-vilket Raspbian är byggt på erbjuder en mycket föråldrad version av Netatalk i sina repositories. Du kan snälla få Time Machine att arbeta med den här föråldrade versionen av Netatalk, men enligt min erfarenhet är det frustrerande.

Så jag rekommenderar att du sammanställer den senaste versionen istället. Det är mer krångel att installera, men det är värt det.

Först måste du installera beroenden. Här är allt du behöver installera, i ett kommando:

sudo aptitude installera nödvändig libevent-dev libssl-dev libgcrypt11-dev libkrcd-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-spårar libtracker-sparql-1.0-dev libtracker-miner-1.0-dev

Det kan ta ett tag att installera. Hämta sedan den senaste versionen av Netatalk. Med detta skrivande är det 3,10, även om du kanske vill kolla på nätatals hemsida för att få det senaste versionsnumret. Sedan kör detta kommando för att ladda ner det:

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

Ersätt versionsnumret om du hittar en senare version på deras webbplats.

Packa upp filen du hämtade med:

tar -xf netatalk-3.1.10.tar.gz

Växla sedan till den nya mappen du just skapat.

cd netatalk-3.1.10

Därefter kan du konfigurera alla nätverksinställningar innan du sammanställer programmet genom att använda det här kommandot:

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

Om du inte ser några felmeddelanden kan du gå vidare till nästa steg och köra:

gör

Det här tar ett tag. Du kan också göra dig själv en kaffe, några scones och en trerätters måltid. En Raspberry Pi är inte snabb vid kompilering av programvara.

När allt är klart kan du äntligen installera Netatalk:

sudo installera

Var det inte kul? Kontrollera snabbt att Netatalk faktiskt körs:

netatalk -V

Du får se en massa information om din Netatalk-inställning. Om allt ser bra ut, låt oss konfigurera saker!

Steg fyra: Konfigurera Netatalk

Nu när Netatalk är installerat måste du berätta för att dela din enhet. Först måste du redigera nsswitch.conf.

sudo nano /etc/ nsswitch.conf

Här måste du lägga till mdns4 och mdns till raden som börjar med "hosts:" så att det ser ut så här:

-värdar: filer mdns4_minimal [NOTFOUND = return] dns mdns4 mdns

Denna tweakinnebär att din Time Machine-enhet visas i Finder sidobalk så snart du ansluter din Raspberry Pi till nätverket.

Därefter måste du redigera afpd.service:

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

Kopiera det här textblocket och klistra in det i den filen:

& lt;? Xml version = "1.0" standalone = 'nej??>; & lt; -! * - nxml - * - & gt;& lt;! DOCTYPE tjänstegrupps-system "avahi-service.dtd" & gt;& Lt; servicegrupp & gt;& lt; name replace-wildcards = "yes" & gt;% h & / name & gt;& Lt; service & gt;& Lt; typ & gt; _afpovertcp._tcp & lt; / Typ & gt;& Lt; port & gt; 548 & lt; / hamnen & gt;& Lt; / tjänsten & gt;& Lt; service & gt;& Lt; typ & gt; _device-info._tcp & lt; / Typ & gt;& Lt; port & gt; 0 & lt; / hamnen & gt;& Lt; txt-post & gt; modell = TimeCapsule & lt; / txt-post & gt;& Lt; / tjänsten & gt;& Lt; / tjänst-gruppen & gt;

Bland annat gör denna information din Raspberry Pi mimic till en faktisk Apple Time Capsule, komplett med lämplig ikon.

Slutligen är det dags att konfigurera din externa enhet som en nätverksdelning.

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

Längst ner i det här dokumentet klistra in följande text:

[Global] mimic model = TimeCapsule6.106 [Time Machine] sökväg = /media/ tm time machine = ja

Du kan ange ett annat namn än"Time Machine" mellan andra parentes, om du vill. Det här ändrar namnet på den enhet du säkerhetskopierar, som visas i Finder och Time Machine själv.

Slutligen, fortsätt och starta nätverkstjänsterna. För att köra dessa två kommandon:

sudo service avahi-daemon starta
sudo service netatalk start

Din enhet erbjuds nu i nätverket. För att se till att detta händer varje gång du startar din Raspberry Pi, skriv dessa kommandon igen, en efter en:

sudo systemctl enable avahi-daemon
sudo systemctl enable netatalk

Vi är verkligen nära nu!

Steg fem: Anslut till din tidsmaskin

Gå till Finder på din Mac och du bör se din Raspberry Pi här.

Du kan faktiskt ansluta härifrån genom att klicka på "Connect As" och ange samma användarnamn och lösenord som du använder för att ansluta via SSH.

I min erfarenhet fungerar Time Machine dock bättre om du ansluter till enheten via dess IP-adress, speciellt om du har ställt in statiska IP-adresser med din router( vilket du förmodligen borde).För att ansluta, öppna Finder och klicka sedan på Command + K på tangentbordet.

När du har monterat enheten kör du till Systeminställningar & gt;Time Machine, välj sedan enheten som din Time Machine-säkerhetskopia.

Den ursprungliga säkerhetskopian körs, och efter det kommer säkerhetskopior att hända varje timme. Du har nu en nätverksbaserad Time Machine-enhet. Njut av!