it:server:samba

Samba

sudo apt install samba
systemct status smbd

Konfigurační soubor Samby:

[global]

   protocol = SMB3
   hosts allow = 192.168.1.
   
   usershare allow guests = no


   min receivefile size = 16384    
                                   

[movies]                           
   path = /mnt/movies  
   browsable = yes                 
   read only = yes                  

Tady příklad sdílení složky pouze pro čtení a omezené pro konkrétní skupinu:

[public-data]
   path = /mnt/public-data
   browsable = yes
   read only = yes
   valid users = @usergroup
   guest ok = no

Příklad sdílení složky pro zápis:

[change]
   path = /mnt/change
   browsable = yes
   read only = no
   valid users = @writeable_group
   guest ok = no
   create mask = 0666
   directory mask = 0777
   unix extensions = yes

Na otestování, zda je konfigurace ok, použít příkaz:

testparm
# smbpasswd -a jmeno_uzivatele
New SMB password:
Retype new SMB password:

Pro jistotu restartovat Sambu:

sudo systemctl restart smbd

Pro vypsání uživatelů, kteří mají vygenerované heslo do Samby lze použít příkaz:

sudo pdbedit -L

Při nastavování hesla je třeba si uvědomit, že uživatel je pojmenovaný stejně jako v Linuxu, práva k souborům a skupinám má také stejně jako v Linuxu, ale heslo má jiné, než do Linuxu a to právě skrze příkaz výše.

Ve chvíli, kdy se mi nepodařilo přihlásit pod uživatelem, tak jsem dal vypisovat všechny logy Samby:

tail -f /var/log/samba/*

Nakonec jsem zjitil, že všechno funguje, ale uživatel se snaží vstoupit do složky, do které nemá právo vstupu. Proto při ladění je dobré si otestovat vstup do adresáře tak, že se nejdříve přihlásím na konkrétního uživatele a pokusím se do složky vstoupit.

Při pokusu vytvořit symlinky ve sdílených složkách jsem se setkal s tímto chybovým hlášením.

Error loading module '/usr/lib/arm-linux-gnueabihf/samba/vfs/widelinks.so': /usr/lib/arm-linux-gnueabih f/samba/vfs/widelinks.so: cannot open shared object file: No such file or directory

Zjistil jsem, že musím doinstalovat modul:

apt install samba-vfs-modules

A dále ke sdílené složce dát tyto parametry:

[photos]                    
   path = /home/osmc/Pictures
   browsable = yes           
   read only = yes           
   guest ok = no             
   follow symlinks = yes     
   wide links = yes          

A do sekce Global ještě přidat:

allow insecure wide links = yes

Samozřejmě nakonec restartovat sambu, aby se změny projevily.

  • it/server/samba.txt
  • Poslední úprava: 2023/02/19 10:50
  • autor: Petr Nosek