10Sep

Jak korzystać z Raspberry Pi jako Networked Drive Time Machine na komputer Mac

Po co wydawać 300 USD na urządzenie AirPort Time Capsule, gdy można je zrobić z Raspberry Pi i zewnętrznym dyskiem twardym? Trochę to wymaga poprawek, ale gdy wszystko jest już skonfigurowane, Mac automatycznie wykona kopię zapasową bez żadnego wysiłku z Twojej strony. Koniec z koniecznością podłączania dysku do komputera.

Jeszcze lepiej: gdy przychodzi czas na przywrócenie plików, możesz odłączyć dysk twardy od Pi i podłączyć go bezpośrednio do komputera Mac, co pozwoli ci odzyskać pełną awarię systemu za pomocą odzyskiwania systemu. Podobne hacki nie działają w ten sposób.

Co będzie potrzebne

Pokazaliśmy, jak wykonać kopię zapasową komputera Mac z Time Machine, a nawet jak wykonywać kopie zapasowe Time Machine w sieci. Ale w tych samouczkach tworzenie kopii zapasowej w sieci wymagało innego komputera Mac działającego jako serwer. Więc jeśli mieszkasz w domu jednorodzinnym Macintosha, możesz pomyśleć, że jedyną opcją jest podłączenie dysku twardego USB lub zakup kapsułki Apple Time Capsule za 300 USD.

To nie prawda. Raspberry Pi podłączone do zewnętrznego dysku twardego stanowi doskonałą improwizowaną alternatywę dla Time Capsule lub innego Maca i jest znacznie tańsze.(Tak, Time Capsule ma funkcjonalność routera, więc jest to naprawdę przyzwoita cena za to, co oferuje - ale ta metoda pozwala ci używać dowolnego routera i oferuje więcej miejsca na uaktualnienia, gdy zabraknie miejsca na dysku.)

Totutorial zakłada, że ​​znasz już podstawy konfiguracji Raspberry Pi. Wymaga również odrobiny sprzętu:

  • A Raspberry Pi. Dowolny model zrobi, ale obecny model to Raspberry Pi 3 Model B.
  • Karta SD, dla systemu operacyjnego Raspberry Pi. Starsza Raspberry Pis użyje standardowej karty SD, podczas gdy nowsze będą wymagały karty microSD, więc upewnij się, że masz odpowiedni typ. Oto wspaniała lista kart przetestowanych pod kątem prawidłowego działania Pi.
  • A Zasilanie dla Pi. Port zasilania Pisa to po prostu microUSB, ale zalecamy uzyskanie zasilacza zaprojektowanego dla Pi dla niezawodnej wydajności - ta z CanaKit działa dobrze.
  • Połączenie z siecią przewodową dla twojego Pi( możesz użyć Wi-Fi, ale wymaga to więcej konfiguracji i okablowanie będzie znacznie lepsze dla dużych kopii zapasowych w sieci)
  • Zewnętrzny dysk twardy, który połączyszdo Pi przez USB.Zalecamy zakup zewnętrznego dysku twardego z własnym, dedykowanym zasilaczem, chyba że masz napęd USB, który został przetestowany przy użyciu Pi.

Możesz zdobyć większość tych rzeczy( i nie tylko) za jednym zamachem z dobrym zestawem startowym Raspberry Pi, jak ten, lub możesz je kupić osobno. Twoja decyzja.

Dowiedziałem się o tej metodzie z posta na blogu Caleba Woodsa i wypełniłem kilka rzeczy, które nie działały dla mnie czytając ten post na Badbox.de. Moje szczere podziękowania dla was obojga.

Ostatnia uwaga: ten hack działa całkiem nieźle, ale pod koniec dnia wciąż jest to po prostu: hack. Z tego powodu, oprócz tego polecam mieć coś w rodzaju kopii zapasowej, najlepiej coś poza nim.(Powinieneś zawsze mieć kopię zapasową poza siedzibą firmy, w przypadku pożaru lub innej katastrofy naturalnej.)

POWIĄZANE ARTYKUŁY
Jak wykonać kopię zapasową komputera Mac i przywrócić pliki za pomocą Time Machine
Jaki jest najlepszy sposób tworzenia kopii zapasowej mojego komputera?

Krok pierwszy: Przygotowanie dysku zewnętrznego do maszyny czasu

Pierwszą rzeczą, którą musisz zrobić, to przygotować dysk zewnętrzny do pracy z Time Machine. Podłącz dysk do komputera Mac, a następnie uruchom Narzędzie dyskowe. Wybierz dysk zewnętrzny, a następnie kliknij przycisk "Wymaż".Będziesz chciał sformatować dysk jako "Mac OS Extended", znany również jako HFS +.

Następnie będziemy chcieli upewnić się, że twój Raspberry Pi i każde urządzenie będzie miało uprawnienia do kontrolowania napędu. Udaj się do Findera, a następnie kliknij prawym przyciskiem myszy dysk na pasku bocznym. Kliknij "Pobierz informacje".

W dolnej części okna, które się otworzy, znajdziesz ustawienia uprawnień.

Kliknij blokadę w prawym dolnym rogu, a następnie wprowadź hasło. Następnie zaznacz "Ignoruj ​​prawo własności do tego woluminu". Dzięki temu możesz podłączyć zewnętrzny dysk do Pi.

Krok drugi: Zainstaluj Raspbian na swoim Pi i połącz się z nim przez SSH

Następnie musisz skonfigurować Raspberry Pi z Raspbian, jak opisano w tym artykule. Nie będziemy tu szczegółowo opisywać tego procesu, ponieważ jest to projekt sam w sobie, więc sprawdź w przewodniku, jak ustawić Raspbian na twoim Pi. Użyłem Raspbian Core do mojej konfiguracji, ponieważ nie podłączyłem Pi do wyświetlacza, ale nie ma powodu, dla którego pełna wersja GUI Raspbian nie działałaby.

Mówiąc o tym: masz dwie możliwości, jeśli chodzi o resztę tego samouczka. Możesz podłączyć Raspberry Pi do klawiatury i monitorować i ustawiać w ten sposób, lub możesz połączyć się z twoim Pi przez SSH i uruchamiać każdy krok w zaciszu swojego komputera Mac. Uważamy, że metoda SSH jest znacznie łatwiejsza niż znalezienie losowego monitora, więc oto jak to zrobić.

Uruchom Terminal na Macu, a następnie wprowadź następującą komendę:

ssh [email protected]

Zastąpienie 192.168.1.11 adresem IP twojego Pi. Możesz znaleźć adres IP dowolnego urządzenia podłączonego do twojej sieci, w tym Raspberry Pi, przechodząc do interfejsu sieciowego routera.

Zostaniesz poproszony o podanie hasła dla domyślnego użytkownika, pi. Hasło dla pi jest domyślnie malinowym.

Jeśli łączysz się ze świeżym systemem po raz pierwszy, sugeruję skonfigurowanie kilku rzeczy przed kontynuowaniem. Najpierw uruchom sudo raspi-config i zmień domyślne hasło. Możesz także rozszerzyć swój domyślny system plików, jeśli masz dużą kartę SD( chociaż nie jest to konieczne w tym samouczku). Twoje Raspberry Pi uruchomi się ponownie, w którym to momencie będziesz gotowy do pracy.

Krok trzeci: Zamontuj dysk zewnętrzny

Zanim będziesz mógł skonfigurować swój Wehikuł czasu, musisz zamontować dysk, aby Twój Raspberry Pi mógł go odczytać i zapisać.Wykonanie tej czynności wymaga zainstalowania oprogramowania. Po pierwsze, upewnij się, że wszystkie oprogramowanie na Pi jest aktualne. Uruchom następujące dwie komendy jedna po drugiej:

sudo apt-get update

sudo apt-get upgrade

Następnie zainstaluj dwa pakiety: hfsprogs i hfsplus. Pozwoli to twojemu Raspberry Pi odczytać twój dysk w formacie Mac.

sudo apt-get install hfsprogs hfsplus

Masz teraz oprogramowanie zdolne do zamontowania dysku, ale musi wiedzieć, który dysk zamontować, więc musisz zrobić kilka badań.Zacznij od uruchomienia Parted.

sudo /sbin/ parted

Następnie wpisz print, aby zobaczyć listę aktualnie podłączonych dysków. Powinieneś zobaczyć tutaj swój dysk zewnętrzny.

Z tego zrzutu ekranu widzimy, że mój dysk jest dyskiem Maxtor 164 GB( później otrzymam większy, obiecuję). Ważną informacją jest tu /dev/ sda. Twój napęd będzie miał podobną nazwę, którą powinieneś zapisać.

Następnie spójrz na tabelę poniżej tego bloku tekstu. W moim przypadku oczywiste jest, że druga, większa partycja jest tym, czego szukam. Dlatego zauważam, że partycja, którą chcę zamontować, to sda2.Może być potrzebna nieco inna liczba, jeśli masz więcej niż jeden dysk lub więcej niż jedną partycję na dysku.

Teraz, gdy masz już potrzebne informacje, wpisz quit i naciśnij Enter. Następnie utworzymy folder, który będzie służył jako punkt montowania. ..

sudo mkdir -p /media/ tm

. .. a następnie dodaj trochę informacji do pliku fstab. Użyj tego polecenia, aby otworzyć edytor tekstowy:

sudo nano /etc/ fstab

Wklej następującą linię do dokumentu, zastępując /dev/ sda2 partycją twojego dysku, jeśli różni się od /dev/ sda2.

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

Po wklejeniu tekstu naciśnij Control + X, aby opuścić edytor, pamiętając o zapisaniu.

Następnie zamontuj dysk za pomocą:

sudo mount -a

Jeśli nie widzisz komunikatu o błędzie, gratulacje! Pomyślnie zamontowałeś dysk.

Krok trzeci: Skompiluj i zainstaluj Netatalk

Netatalk to oprogramowanie symulujące AFP, protokół sieciowy Apple, który obecnie jest używany do tworzenia kopii zapasowych Time Machine. Możesz zainstalować starą wersję Netatalk używając sudo apt-get install netatalk, ale Gorąco polecam, żebyś tego nie robił .Ze względów( głównie politycznych) złożonych, Debian - na którym Raspbian jest zbudowany - oferuje bardzo nieaktualną wersję Netatalk w swoich repozytoriach. Możesz trochę uruchomić Time Machine przy użyciu tej przestarzałej wersji Netatalk, ale z mojego doświadczenia wynika, że ​​to frustrujące.

Dlatego polecam zamiast tego skompilować najnowszą wersję.Jest to trudniejsze do zainstalowania, ale warto.

Najpierw musisz zainstalować zależności. Oto wszystko, co musisz zainstalować, w jednym poleceniu:

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-klient-dev libacl1-dev libldap2-dev libcrack2-dev systemtap-sdt-dev libdbus-1-dev libdbus-glib-1-dev libglib2.0-dev libio-gniazdo-inet6-perl tracker libtracker-sparql-1.0-dev libtracker-miner-1.0-dev

Instalacja może zająć trochę czasu. Następnie pobierz najnowszą wersję Netatalk. W chwili pisania tego tekstu jest to 3.1.10, ale możesz sprawdzić stronę główną Netatalk, aby uzyskać najnowszy numer wersji. Następnie uruchom to polecenie, aby pobrać:

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

Zastąp numer wersji, jeśli znajdziesz późniejszą wersję na swojej stronie.

Teraz rozpakuj pobrany plik:

tar -xf netatalk-3.1.10.tar.gz

Następnie przejdź do nowo utworzonego folderu.

cd netatalk-3.1.10

Następnie możesz skonfigurować wszystkie ustawienia Netatalk przed kompilacją programu, używając polecenia:

. /configure \ --with-init-style = debian-systemd \ --without-libevent \- bez-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

Zakładając, że nie widzisz komunikatów o błędach, możesz przejść do następnego etapu i uruchomić:

make

To zajmie trochę czasu. Równie dobrze możesz przygotować sobie kawę, bułeczki i trzydaniowy posiłek. Raspberry Pi nie jest szybki w kompilowaniu oprogramowania.

Kiedy wszystko jest gotowe, możesz wreszcie zainstalować Netatalk:

sudo make install

Czy to nie było zabawne? Szybko sprawdź, czy Netatalk działa:

netatalk -V

Zobaczysz garść informacji o konfiguracji Netatalk. Jeśli wszystko wygląda dobrze, skonfigurujmy wszystko!

Krok czwarty: Konfiguruj Netatalk

Po zainstalowaniu Netatalk musisz powiedzieć, aby udostępnił swój dysk. Najpierw musisz edytować plik nsswitch.conf.

sudo nano /etc/ nsswitch.conf

Tutaj musisz dodać mdns4 i mdns do linii rozpoczynającej się od "hosts:", aby wyglądała następująco:

hosty: pliki mdns4_minimal [NOTFOUND = return] dns mdns4 mdns

To ustawienieoznacza, że ​​twój dysk Time Machine pojawi się na pasku bocznym Findera, gdy tylko podłączysz swój Raspberry Pi do sieci.

Następnie musisz edytować afpd.service:

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

Skopiuj ten blok tekstu i wklej go do tego pliku:

& lt;? Xml version = "1.0" standalone = 'no'? & Gt;; & lt;! - * - nxml - * - & gt;& lt;! DOCTYPE service-group SYSTEM "avahi-service.dtd" & gt;& lt; service-group & gt;& lt; nazwa replace-wildcards = "yes" & gt;% h & lt; / name & gt;& lt; usługa & gt;& lt; typ & gt; _afpovertcp._tcp & lt; / type & gt;& lt; port & gt; 548 & lt; / port & gt;& lt; / service & gt;& lt; usługa & gt;& lt; typ & gt; _device-info._tcp & lt; / type & gt;& lt; port & gt; 0 & port & gt;& lt; -txt-record & gt; model = TimeCapsule & lt; / txt-record & gt;& lt; / service & gt;& lt; / service-group & gt;

Między innymi, ta informacja sprawia, że ​​twój Raspberry Pi naśladuje rzeczywistą kapsułę czasu Apple, wraz z odpowiednią ikoną.

Wreszcie nadszedł czas, aby skonfigurować dysk zewnętrzny jako udział sieciowy.

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

Na dole tego dokumentu wklej następujący tekst:

[Global] mimic model = TimeCapsule6,106 [Time Machine] path = /media/ tm time machine = yes

Możesz ustawić inną nazwę niż"Time Machine" pomiędzy drugimi nawiasami, jeśli chcesz. Spowoduje to zmianę nazwy dysku, na którym się zapisujesz, jak pokazano w Finderze i wehikule czasu.

Na koniec uruchom usługi sieciowe. W celu uruchomienia tych dwóch poleceń:

usługa sudo avahi-daemon start
usługa sudo netatalk start

Dysk jest teraz oferowany w sieci. Aby upewnić się, że tak się stanie za każdym razem, gdy uruchamiasz swoje Raspberry Pi, wprowadź te polecenia, ponownie, jeden po drugim:

sudo systemctl enable avahi-daemon
sudo systemctl enable netatalk

Jesteśmy teraz naprawdę blisko!

Krok piąty: Połącz się ze swoją maszyną czasu

Udaj się do Findera na swoim Macu i powinieneś zobaczyć swoje Raspberry Pi tutaj.

Z tego miejsca można się połączyć, klikając "Połącz jako" i wprowadzając tę ​​samą nazwę użytkownika i hasło, których używasz do łączenia się przez SSH.

Z mojego doświadczenia wynika jednak, że Time Machine działa lepiej, jeśli łączysz się z napędem za pośrednictwem jego adresu IP, szczególnie jeśli masz skonfigurowane statyczne adresy IP z routerem( co prawdopodobnie powinieneś).Aby się połączyć, otwórz Findera, a następnie naciśnij Command + K na klawiaturze.

Po zamontowaniu dysku przejdź do opcji Preferencje systemowe & gt;Time Machine, a następnie wybierz dysk jako kopię zapasową Time Machine.

Początkowa kopia zapasowa zostanie uruchomiona, a po wykonaniu tej czynności kopie będą wykonywane co godzinę.Masz teraz połączony z siecią dysk Time Machine. Cieszyć się!