Jak zmienić Raspberry Pi w NAS do udostępniania plików w całym domu?
Opublikowany: 2022-01-29Mój dom jest niesamowicie schludny i zorganizowany, ale jeśli chodzi o moje cyfrowe życie, na myśl przychodzi mi słowo „zbieracz”. Jeśli to brzmi jak Ty, sieciowe urządzenie pamięci masowej — lub w skrócie NAS — jest idealną inwestycją, aby Twoje pliki były dostępne bezprzewodowo na dowolnym urządzeniu w domu. Ale te urządzenia mogą być drogie, więc jednym ze sposobów na zaoszczędzenie pieniędzy jest samodzielne zbudowanie ich za niewielką opłatą z Raspberry Pi w rdzeniu.
Co to jest NAS?
Sieciowa pamięć masowa umożliwia udostępnianie plików z jednego, zawsze aktywnego urządzenia w całym domu. Z serwerem NAS w sieci możesz go używać do przechowywania filmów i odtwarzania ich z wielu skrzynek Kodi, przechowywania na nim kopii zapasowych z komputera lub używania go jako skrzynki BitTorrent, która udostępnia pliki 24 godziny na dobę, 7 dni w tygodniu.
Oczywiście, możesz to wszystko zrobić na swoim głównym komputerze, ale NAS ma mniejsze zużycie energii i jest zaprojektowany do pracy w dzień iw nocy, nawet jeśli Twój komputer nie działa. Kiedy zaczniesz go używać, trudno jest wrócić.
Istnieje wiele gotowych urządzeń NAS od takich firm jak Synology, QNAP i Asustor. Po prostu kup jeden, włóż dysk i ruszaj na wyścigi. Ale mogą być drogie, a jeśli nie masz pewności, czy serwer NAS jest dla Ciebie, trudno jest uzasadnić inwestycję — zwłaszcza jeśli potrzebujesz czegoś, co może rosnąć wraz z Twoimi potrzebami w zakresie pamięci masowej.
Z drugiej strony Raspberry Pi jest tak wszechstronną małą płytką, że może działać jako tani próbny serwer NAS, który – gdy już z niego wyrośniesz – może zostać wykorzystany do czegoś innego. Nie jest tak solidny jak, powiedzmy, jednostka Synology NAS, a RAID nie działa szczególnie dobrze na Pi, jeśli potrzebujesz nadmiarowości danych. Będziesz chciał się upewnić, że wszelkie ważne dane na twoim NAS opartym na Pi są również archiwizowane w innym miejscu.
Jest to jednak świetny projekt, jeśli masz leżące Pi i chcesz zobaczyć, o co chodzi w życiu NAS. Następnie, gdy już się spodobasz, możesz uaktualnić do specjalnie opracowanego modelu Synology lub QNAP, który odpowiada Twoim długoterminowym potrzebom.
Co będziesz potrzebował...
Raspberry Pi ze wszystkimi dodatkami
Oczywiście do tego projektu będziesz potrzebować Raspberry Pi wraz z niezbędnymi akcesoriami: zasilaczem, kartą microSD i myszą, klawiaturą i monitorem do początkowej konfiguracji. Każdy z najnowszych modeli Pis powinien działać w tym projekcie, a więcej o innych akcesoriach można przeczytać w naszym przewodniku, jak zacząć korzystać z Raspberry Pi.
Napęd dyskowy (lub dwa lub trzy)
Jeśli nie udostępniasz tylko kilku plików, Twoja karta microSD prawdopodobnie nie ma wystarczającej ilości miejsca na NAS. Będziesz potrzebować kilku dysków, aby zapełnić swoje filmy, muzykę lub inne pliki, które chcesz udostępniać między urządzeniami. W większości przypadków standardowy dysk zewnętrzny załatwi sprawę, chociaż możesz potrzebować takiego, który podłącza się do ściany osobno - lub zasilanego koncentratora USB - ponieważ Pi może nie być w stanie dostarczyć wystarczającej mocy do wszystkich twoich dysków. Jeśli chcesz czystszej konfiguracji, możesz użyć dysku wewnętrznego przeznaczonego do przechowywania w sieci, ale wymagałoby to obudowy.
Obudowa przyjazna dla NAS (opcjonalnie) :
Jeśli chcesz, aby Twój system miał czysty wygląd, może być konieczne uzyskanie obudowy dla Pi i dysków, więc nie jest to tylko ośmiornica przewodów i dysków. Na przykład Geekworm tworzy płytę o nazwie X825, która umożliwia zadokowanie 2,5-calowego wewnętrznego dysku twardego, podłączenie go do Pi i zamontowanie wszystkiego w małej, wykończonej obudowie. (Upewnij się tylko, że masz taki, który jest kompatybilny z twoim Pi - istnieją różne przypadki dla Pi 3, Pi 4 i tak dalej.)
Na razie używam tylko standardowej obudowy Raspberry Pi z zewnętrznym dyskiem USB zapinanym na rzep, ale jeśli chcesz wykazać się kreatywnością, świat jest tutaj twoją ostrygą. Gdy masz już wszystkie komponenty pod ręką, nadszedł czas, aby uruchomić serwer NAS.
Zainstaluj system operacyjny
Istnieją specjalne systemy operacyjne, takie jak Openmediavault, które zamieniają Twoje Pi w NAS, ale dla początkujących konfiguracji polecam zwykły stary Raspbian — jest elastyczny, łatwy w użyciu i wystarczająco dobry, aby udostępniać kilka plików przez sieć. Zacznij od zainstalowania Raspbian z zalecanym oprogramowaniem, jak opisano w naszym przewodniku dla początkujących.
Polecam podłączenie Pi do sieci przez Ethernet w celu szybkiego przesyłania plików, ale Wi-Fi zrobi to w mgnieniu oka. Po pierwszym uruchomieniu Raspbian, wyznaczeniu nowego hasła i pobraniu wszystkich aktualizacji, podłącz dysk twardy do jednego z portów USB Pi.
Zobaczysz, że pojawi się na pulpicie, ale większość naszej pracy będziemy wykonywać w Terminalu. (Jeśli wolisz, możesz SSH do swojego Pi i wykonywać te polecenia z innego komputera.)
Odmontuj swój dysk
Przed kontynuowaniem będziemy musieli wymazać podłączony dysk, więc jeśli masz na nim ważne pliki, musisz je przechowywać w innym miejscu, zanim prześlesz je do swojego Pi-NAS. W oknie Terminala uruchom następujące polecenie, aby zobaczyć dyski podłączone do twojego Pi:
sudo fdisk -l
Znajdź dysk zewnętrzny, którego chcesz użyć dla swoich plików — w moim przypadku jest to dysk o pojemności 80 GB o nazwie „MyExternalDrive” — i zanotuj jego ścieżkę. Na powyższym zrzucie ekranu dysk 80 GB podłączony do mojego Pi odpowiada /dev/sda. (Upewnij się, że zapisałeś właściwy dysk, ponieważ zaraz go wykasujemy!) Najpierw musisz odmontować dysk. Jeśli używasz interfejsu Raspbian, możesz po prostu kliknąć przycisk wysuwania obok dysku, aby go odmontować. Ale jeśli używasz terminala przez SSH, będziesz musiał uruchomić:
umount /dev/sda1
W zależności od dysku może być konieczne uruchomienie umount /dev/sda2 , umount /dev/sda3 i tak dalej, w zależności od tego, ile partycji znajduje się na dysku z poprzedniego użycia.
Następnie, aby wymazać i sformatować dysk flash do użytku z systemem Linux, uruchom:
sudo parted /dev/sda
Spowoduje to otwarcie kreatora o nazwie Parted, który umożliwi utworzenie nowej partycji na dysku. Uruchom to polecenie, naciskając klawisz Enter po każdej odpowiedzi w kreatorze i zastępując MyExternalDrive nazwą, której chcesz użyć dla dysku:
mklabel gpt
Jeśli pojawi się monit o usunięcie dysku, wpisz y i naciśnij klawisz Enter. Następnie uruchomić:
mkpart
MyExternalDrive
ext4
0%
100%
quit
Ostatnie polecenie quit spowoduje wyjście z kreatora Parted. Oczywiście możesz dostosować te polecenia, aby pasowały do nazwy dysku, liczby i rozmiaru partycji, które chcesz na nim utworzyć, itd. - ale dla większości podstawowych użytkowników, którzy dopiero zaczynają, te polecenia powinny działać dobrze.
Podziel swój dysk na partycje
Następnie musimy sformatować tę partycję. Jeśli twój dysk znajduje się w /dev/sda , nowa partycja będzie znajdować się w /dev/sda1 (jeśli dysk to /dev/sdb , użyjesz /dev/sdb1 i tak dalej):
sudo mkfs.ext4 /dev/sda1
Naciśnij yi Enter, gdy pojawi się pytanie, czy chcesz kontynuować. Następnie uruchomić:
sudo e2label /dev/sda1 MyExternalDrive
Po prostu zastąp MyExternalDrive dowolną nazwą swojego dysku. Formatowanie zajmie kilka minut, zwłaszcza jeśli masz duży dysk, więc bądź cierpliwy. Kiedy skończysz, uruchom to polecenie, aby ponownie uruchomić Pi:
sudo shutdown -r now
Po ponownym uruchomieniu Pi powinieneś zauważyć, że dysk zewnętrzny pojawia się automatycznie na pulpicie, gotowy do działania. Będziesz jednak musiał uruchomić jedno ostatnie polecenie, aby nadać sobie uprawnienia do zapisywania nowych plików na dysku. W Terminalu uruchom:
sudo chown -R pi /media/pi/MyExternalDrive
Udostępnij dysk
Teraz nadszedł czas, aby udostępnić ten dysk w sieci, aby móc dodawać pliki i uzyskiwać do nich dostęp z dowolnego urządzenia w domu. W tym celu użyjemy narzędzia o nazwie Samba, które jest implementacją protokołu udostępniania plików SMB/CIFS systemu Windows o otwartym kodzie źródłowym. Nie jest to jedyna opcja udostępniania plików, ale jest łatwa do skonfigurowania i kompatybilna z prawie każdym systemem, który możesz mieć w sieci, więc to właśnie polecam.
Raspbian nie jest domyślnie instalowany z Sambą, więc musisz upewnić się, że Twoje repozytoria są aktualne i zainstalować je za pomocą następujących poleceń:
sudo apt update
sudo apt upgrade
sudo apt install samba samba-common
Instalator zapyta, czy chcesz zmodyfikować smb.conf, aby używał ustawień WINS z DHCP. Wybierz Tak i naciśnij Enter. Teraz samodzielnie edytujesz ten plik konfiguracyjny, aby udostępnić swój dysk. Uruchomić:
sudo nano /etc/samba/smb.conf
Następnie w wyświetlonym edytorze tekstu wiersza polecenia użyj klawisza strzałki, aby przewinąć do dołu dokumentu. Będziesz chciał dodać blok tekstu, który wygląda mniej więcej tak:
[MyMedia]
path = /media/pi/MyExternalDrive/
writeable = yes
create mask = 0775
directory mask = 0775
public=no
W twojej wersji MyMedia byłaby nazwą twojego udziału (nadaj mu dowolną nazwę), a /media/pi/MyExternalDrive byłaby zamontowaną lokalizacją twojego dysku. (Być może będziesz musiał otworzyć menedżera plików i przejść do /media/pi/ , aby dowiedzieć się, jak to się nazywa.) Kiedy skończysz, naciśnij Ctrl + X, aby wyjść z nano, naciskając y i Enter, gdy pojawi się pytanie, czy chcesz Zapisz plik.
Utwórz hasło i dodaj użytkowników
Na koniec musisz utworzyć hasło dla Samby, aby móc zobaczyć swój udział z innych komputerów. (Istnieją sposoby na skonfigurowanie Samby bez wymagania hasła, ale generalnie nie jest to dobra praktyka bezpieczeństwa, więc polecam dodanie hasła.) Aby dodać hasło do istniejącego użytkownika Pi, uruchom:
sudo smbpasswd -a pi
Po wyświetleniu monitu wprowadź żądane hasło — nie musi być takie samo jak hasło użytkownika w samym Pi, ale może być — i naciśnij Enter.
Możesz dodać innych użytkowników za pomocą sudo adduser jeff , gdzie jeff jest użytkownikiem, którego chcesz dodać, i uruchomić sudo smbpasswd -a jeff , aby nadać temu użytkownikowi własne hasło. Nie jest to bezwzględnie konieczne, ale może być przydatne, jeśli w gospodarstwie domowym masz wiele osób, którym chcesz nadać różne uprawnienia do odczytu i zapisu niektórych udziałów.
Po zakończeniu uruchom następujące polecenie, aby ponownie uruchomić Sambę:
sudo systemctl restart smbd
Uzyskaj dostęp do swoich multimediów
I wszystko powinno być gotowe do działania. Udaj się na komputer z systemem Windows, otwórz okno Eksploratora plików i wpisz \\raspberrypi\MyMedia w pasku adresu (zastępując MyMedia dowolną nazwą twojego udziału). Jeśli naciśniesz Enter, powinieneś być w stanie wprowadzić swoją nazwę użytkownika Samby (pi) i hasło oraz zobaczyć swój dysk współdzielony. Jeśli wpadniesz w kłopoty, być może będziesz musiał użyć adresu IP Pi, takiego jak \\192.168.1.10\MyMedia .
Aby połączyć się na komputerze Mac, otwórz Finder i kliknij Przejdź > Połącz z serwerem , wpisując smb://raspberrypi po wyświetleniu monitu.
To tylko zarysowuje powierzchnię tego, co możesz zrobić z NAS opartym na Pi. W miarę rozwoju potrzeb w zakresie pamięci masowej możesz dodawać więcej dysków i udziałów, dodawać więcej użytkowników z różnymi uprawnieniami lub konfigurować macierz RAID, aby uniknąć utraty danych w przypadku awarii dysku twardego. Kiedy jednak dojdziesz do tego punktu, prawdopodobnie warto wydać trochę więcej na dedykowane urządzenie NAS, aby uzyskać lepszą wydajność.