Udostępnianie plików – serwer Samba

Jeśli posiadamy wiele różnych urządzeń typu: komputer, laptop, smartphone czy tablet dobrym rozwiązaniem jest utworzenie serwera, który będzie udostępniał pliki a także inne urządzenia np. drukarki wszystkim upoważnionym urządzeniom w obrębie sieci lokalnej. Do tego celu wykorzystamy multi-platformowy serwer Samba. Bez względu na to czy nasze urządzenie korzysta z systemu Windows, OS X, Linux czy Android będzie możliwe wykorzystanie współdzielenie plików i urządzeń podpiętych do naszego serwera. W tym wypadku serwerem będzie mini komputerek: Raspberry Pi 2 z systemem Ubuntu Mate.

W zasadzie nie ma znaczenia jaki komputer będzie naszym serwerem i jaki to będzie system operacyjny. Jednak skupimy się tutaj na dość popularnym mini-komputerze Raspberry Pi 2. Urządzenie to jest dość tanie w zakupie dodatkowo posiada sporą społeczność co daje wsparcie nie tylko ze strony producenta. Dodatkowo jest bezgłośne i zadowala się poborem mocy ok. 2-3Watów razem z podpiętym dyskiem 2.5″. Co do systemu operacyjnego, polecam Ubuntu Mate choćby dlatego, że nie ma problemów z obsługą zewnętrznych modułów WIFI, tak więc większość takowych modułów działa Plug&Play bez zbędnej konfiguracji.

Instalacja i konfiguracja

Jak to bywa w systemach opartych na Debianie, instalacja Samby ogranicza się do wklepania poniższego polecenia:

apt-get install samba samba-common-bin

Jeśli chcemy aby część lub wszystkie nasze zasoby były chronione hasłem należy utworzyć odpowiednich użytkowników.
Tak więc kolejnym krokiem jest utworzenie użytkownika widzianego przez serwer Samby. W naszym przypadku utworzymy użytkownika: storage. Należy mieć na uwadze, że taki użytkownik musi istnieć także w systemie. Listę użytkowników systemowych znajdziemy w lokalizacji: /etc/passwd.

Tworzymy użytkownika systemowego:

useradd -s /bin/false storage

Tworzymy użytkownika dla sewera Samby:

smbpasswd -a storage

Jeśli nie będzie wcześniej utworzonego użytkownika systemowego o tej samej nazwie jak ten dla serwera Samby dostaniemy stosowny komunikat: Failed to add entry for user [USER]

Użytkownicy, którzy są przypisani do Samby znajdują się w następującej lokalizacji: /var/lib/samba/private/passdb.tdb

Lista użytkowników Samby ( dodatkowo informacje na temat każdego użytkownika ):

pdbedit -L -v
-L : wyświetla tylko listę użytkowników
-v : wyświetla dodatkowe inforamcje na temat użytkowników

Podstawowe operacje wykonywane na użytkownikach Samby:

pdbedit -x -u username

Tworzymy konfigurację dla zasobu, który chcemy udostępnić w pliku konfiguracyjnym: /etc/samba/smb.conf

[storage]
comment = Private Storage
path = /mnt/Storage
valid users = storage
read only = no

Powyższa konfiguracja dotyczy udostępniania zasobu zamontowanego w lokalizacji: /mnt/Storage. Uzyskanie dostępu wymaga autoryzacji ( użytkownik storage ) dodatkowo istnieje możliwość zapisu/modyfikowania plików.

Jeśli chcemy udostępnić zasoby bez autoryzacji to konfiguracja zasobu „storage” powinna wyglądać następująco :

[storage]
comment = Public Storage
path = /mnt/Storage
guest ok = yes
read only = no

Kolejny etap to zamontowanie dysku lub innego zasobu przeznaczonego do udostępniania:

Montowanie dysku zewnętrznego dla użytkownika samby:

Tworzymy katalog, który ma wskazywać na późniejsze zamontowanie naszych zasobów, na przykład:

mkdir /mnt/Storage

Sprawdzamy uid naszego użytkownika:

id -u username

Załóżmy, że nasz użytkownik ma uid=1000

Sprawdzamy identyfikator i system partycji naszego dysku, który chcemy zamontować:

fdisk -l

Identyfikator naszego dysku to: sda1 a system plików to FAT32.
Następnie montujemy „ręcznie” nasz dysk:

mount -t vfat -o umask=0022,gid=1000,uid=1000 /dev/sda1 /mnt/Storage

Aby przy każdym restarcie nie podpinać ręcznie naszego dysku dodajemy go do pliku: /etc/fstab jak poniżej:

/dev/sda1	/mnt/Storage	vfat	rw,noatime,uid=1000,gid=1000	0	0

Na koniec restartujemy Sambę wydając polecenie w terminalu:

service smbd restart

lub:

/etc/init.d/smbd restart

Łączenie się z serwerem Samba

Połączenie się z serwerem Samba w zależności od systemu operacyjnego wygląda podobnie, choć w niektórych przypadkach ( szczególnie w mobilnych OS ) wymagane jest zainstalowanie odpowiedniej aplikacji, która będzie miała zaimplementowaną obsługę Samby ( wymagany client Samba ). W systemie Windows i OS X mamy obsługę Samby domyślnie aktywną i korzystamy z niej za pośrednictwem systemowych menadżerów plików.

System Apple: OS X

Połączenie z naszym serwerem wykonamy za pośrednictwem Findera. Wybieramy odpowiednią opcję z górnego paska menu ( lub skrót: Command+K

GO -> Connect to Server

I wpisujemy adres IP lub nazwę komputera, np:

smb://192.168.1.11

Pojawi się okienko do autoryzacji, logujemy się wedle potrzeby jako User lub Guest.

Dodaj komentarz