Cum se configureaza un Raspberry Pi 3 model B pe post de NAS

Introducere

 

Raspberry Pi este un “computer” care si-a castigat un bine-meritat renume datorita pretului mic, dimensiunilor mici, faptului ca este modulabil si permite extensii nenumarate. Micul calculator a fost initial creat pentru a creste interesul tinerilor in programare si electronica, indemnandu-i sa fie inovativi si dornici de a explora inca de la o varsta frageda, fascinanta lume a calculatoarelor. In egala masura insa, RPi este utilizat si de catre adulti in diferite medii de business si educationale, sau pentru proiecte DIY (Do It Yourself) si diferite hobby-uri precum muzica, robotica, bricolajul.

Personal, am decis sa fac incursiunea in lumea Raspberry Pi pentru a exersa Python, C/C++ si Linux, avand totodata acces la o multitudine de proiecte inovative si sustinerea unei comunitati numeroase si diverse.

Placa Raspberry Pi 3 model B, alaturi de cardul microSD cu sistemul de operare Raspbian/PIXEL.

 

Configurarea Rpi 3 ca NAS local

 

Unul dintre cele mai intalnite proiecte DIY este de a folosi micul RPi pe post de server local Linux sau unitate locala de stocare atasata retelei (NAS).

 

Ca prim proiect in utilizarea Raspberry Pi, crearea unui NAS este un lucru relativ usor de realizat si ofera un bun exercitiu pentru cei care sunt incepatori in folosirea sistemului de operare Linux si doresc sa isi exerseze constant abilitatile, avand ocazia sa foloseasca comenzi specifice lucrului cu unitatile de disk externe, precum si instalarea si configurarea minimala a unui server de fisiere SAMBA.

 

Astfel, primul pas este sa decidem scopul pentru care realizam NAS-ul, iar acest lucru ne va dicta tipul de unitate externa de stocare pe care il vom folosi. Utilizarea unui hard disk extern mare consumator de energie poate sa afecteze rularea acestuia, precum si ratele de transfer. Daca se doreste folosirea unui hard disk extern, propun alegerea unei variante cu alimentare separata. Personal, am ales ca solutie un stick de memorie extern de 32 GB, care imi ofera spatiu suficient pentru fisierele personale.

 

Pentru a incepe, conectam perifericele (tastara si mouse) la porturile USB, monitorul la portul HDMI, reteaua la portul Ethernet (sau Wifi), cardul microSD cu sistemul de operare este in portul specific, iar stick-ul extern USB cu care vom lucra este conectat la un port USB. Conectam Raspberry Pi la priza, iar acesta va boot-a automat de pe cardul microSD. In mod predefinit, systemul de operare PIXEL intra direct in modul grafic, avand un mediu bazat pe LXDE. Primul pas este astfel sa deschidem terminalul pentru a putea lucra in linie de comanda.

 

Update de sistem

 

Primul lucru pe care il recomand este sa actuaizati sistemul de operare ruland comenzile:

 

sudo apt update

sudo apt upgrade

 

Instalare VIM

Nota: daca va place sa folositi editorul de texte VIM, acesta nu vine default astfel ca trebuie sa il instalati ruland comanda

 

sudo apt install vim

 

Instalare utilitare NTFS

Stiind ca vom folosi un mediu de stocare extern care va trebui sa fie accesibil si din mediul Windows, acesta va fi formatat in format NTFS. Facand abstractie de unii dintre noi care folosim doar Linux, intr-o retea locala cu siguranta vor fi si sisteme care ruleaza Windows, iar pentru asta am folosit in mod expres serverul de fisiere SAMBA. Astfel rulam comanda:

 

sudo apt install ntfs-3g

 

Partitionare si formatare stick extern

Pentru a vedea toate unitatile de disk din sistem (externe sau nu) rulam comanda:

 

sudo fdisk -l

 

Rezultatul comenzii va afisa toate unitatile montate deja pe sistem. Una dintre acestea este cardul microSD de pe care ruleaza PIXEL, iar cu acesta trebuie sa avem grija sa nu operam nicio modificare asupra lui. In cel mai probabil caz, stickul extern va avea denumirea sda, astfel incat asupra acestuia vom opera in continuare.

 

Vom demonta stickul cu comanda:

sudo umount /dev/sda1

iar cu comanda

sudo fdisk /dev/sda

il vom formata in format NTFS.

In situatia in care doriti o formatare mai aprofundata, care sa stearga complet informatiile de pe card si sa inlocuiasca fiecare block cu valoarea 0 (zero) folositi comanda:

sudo shred -vzn 0 /dev/sda

 

Valoarea zero din comanda poate fi inlocuita cu orice valoare, aceasta fiind responsabila cu numarul de iteratii folosite in suprascrierea fiecarui bloc cu valoarea zero. Valoarea zero din comanda stabileste numarul de iteratii la 1. Dupa operatiune, care poate dura cateva ore bune, in functie de dimensiunea unitatii de disk, vom rula comanda

 

sudo mkfs.ntfs /dev/sda1

 

pentru a formata stickul NTFS. Vom avea astfel o singura partitie pentru intreaga unitate de stocare.

 

Montarea unitatilor de disk externe

 

Pentru a monta unitatea de disk externa care va asigura spatiul necesar pentru NAS, vom crea un nou director. Acesta poate fi in orice locatie doriti, folsind comanda:

 

sudo mkdir -p /home/NAS/backup

 

Pasul urmator este sa montam unitatea externa in directorul nou creat folosind comanda:

 

sudo mount -t auto /dev/sda1 /home/NAS/backup

 

Totodata, in directorul nou creat care gazduieste unitatea externa putem crea subdirectoare in functie de necesitati. In cazul in care vom avea mai multi utilizatori locali in retea, vom crea cate un subdirector pentru fiecare in parte, astfel:

 

sudo mkdir /home/NAS/backup/user1

sudo mkdir /home/NAS/backup/user2

 

Instalare SAMBA

 

Pentru a instala uitilitarele serviciului SAMBA vom folosi comanda:

 

sudo apt install samba

 

aceasta comanda va instala si dependintele necesare, precum si unele utilitare specifice.

 

Adaugare utilizatori SAMBA

 

Pasul urmator este sa adaugam cate un utilizator pentru serviciul SAMBA. Atentie la faptul ca utilizatorii SAMBA trebuie sa fie utilizatori curenti ai sistemului Linux, astfel incat in prima instanta trebuie sa ii cream ca utilizatori de sistem. Acest lucru il vom face utilizand comenzile:

 

sudo useradd user1 -m -G users

sudo useradd user2 -m -G users

 

Puteti creea cati utilizatori aveti nevoie, nu doar doi. Pasul urmator este sa atribuim fiecarui utilizator cate o parola, folosind comenzile:

 

sudo passwd user1

sudo passwd user2

 

Urmati instructiunile de pe ecran pentru fiecare comanda si introduceti pentru fiecare utilizator parola de doua ori, asa cum vi se va solicita de catre sistem.

 

Noii utilizatori creati vor trebui sa fie atribuiti serviciului SAMBA si activati. Pentru serviciul SAMBA, utilizatorii vor trebui sa aiba o alta parola, care se va introduce in momentul utilizarii comenzii:

 

sudo smbpasswd -L -a user1

sudo smbpasswd -L -a user2

 

Pentru a activa fiecare user se va folosi aceeasi comanda insa cu alti parametri:

 

sudo smbpasswd -L -e user1

sudo smbpasswd -L -e user2

 

Editare fisier /etc/fstab

 

Adaugand deja utilizatorii, ne mai raman doar doi pasi de parcurs. Unul dintre ei este sa editam fisierul /etc/fstab pentru a face ca unitatea de disk externa sa fie montata in mod automat la boot-are, iar ulterior sa editam fisierul de configurare al SAMBA.

 

Pentru inceput, vom edita fisierul /etc/fstab cu comanda:

 

sudo vim /etc/fstab

 

iar in interiorul fisierului vom adauga urmatoarea linie

 

/dev/sda1 /home/NAS/backup auto defaults,nofail,noatime 0 0

 

Salvam fisierul si iesim din editorul VIM.

 

Configurarea fisier specific SAMBA

 

Fisierul de configurare SAMBA se afla in locatia /etc/samba/smb.conf. Inainte de a opera orice modificare, este recomandat sa facem o copie a acestuia astfel:

 

sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.bak

 

Acum putem incepe editarea fisierului cu comanda:

 

sudo vim /etc/samba/smb.conf

 

In interiorul fisierului vom cauta urmatoarele linii:

workgroup = WORKGROUP – odata gasita, o lasam neschimbata, daca nu exista, o adaugam manual

In sectiunea Authentication adaugam linia

security = user

 

La finalul fisierului vom adauga doua noi sectiuni pentru a seta cele doua directoare specifice pentru fiecare user creat. Vom avea astfel urmatoarele sectiuni:

 

[backup_user1]

comment = Backup Directory

path = /home/NAS/backup/user1

valid users = user1

force group = users

create mask = 0660

directory mask = 0771

read only = no

writeable = yes

 

[backup_user2]

comment = Backup Directory

path = /home/NAS/backup/user2

valid users = user2

force group = users

create mask = 0660

directory mask = 0771

read only = no

writeable = yes

 

Salvam fisierul si iesim din editorul VIM.

 

Pasul final este sa repornim serviciul SAMBA cu comanda:

 

sudo /etc/init.d/samba restart

 

si sa rulam comanda

 

testparm

 

pentru a vedea daca totul a fost configurat corect.

 

Pentru a testa daca totul functioneaza, putem accesa NAS-ul dintr-un sistem Linux sau Windows din LAN cu datele specifice fiecarui user creat.


 

2 comments for “Cum se configureaza un Raspberry Pi 3 model B pe post de NAS

Comments are closed.