#format wiki #language it <> <
> <> = Introduzione = '''Samba''' è un software libero che fornisce servizi di condivisione (principalmente di file e stampanti) attraverso il protocollo '''[[https://it.wikipedia.org/wiki/Server_Message_Block|SMB]]''', in regime di interoperabilità fra diversi sistemi operativi. Questa guida spiega come condividere all'interno di una rete una o più cartelle tramite '''Samba'''. Ciò consente l'accesso a più dispositivi con diversi sistemi operativi (Windows, MacOS, GNU/Linux, ma anche Unix, Solaris, Android ed altri).<
> Per un uso avanzato di '''Samba''' e '''smb''' si rimanda alle relative documentazioni. {{{#!wiki note Qualora richiesto, nelle reti Windows il nome preimpostato per il gruppo di lavoro è solitamente «'''WORKGROUP'''». }}} = Preparativi = == Installazione samba == 0. [[AmministrazioneSistema/InstallareProgrammi|Installare]] il pacchetto [[apt://samba|samba]]. 0. Aggiungere il proprio utente al gruppo '''sambashare''' digitando nel [[AmministrazioneSistema/Terminale|terminale]]:{{{ sudo adduser $USER sambashare }}}e ignorare un eventuale output che riporta l'utente come già facente parte del gruppo. {{{#!wiki note Benché questo passaggio sia facoltativo, si consiglia di eseguirlo per evitare errori in fase di condivisione della cartella (es.: `‘net usershare’ return error 255`).}}} <> == Password (opzionale) == A seconda delle opzioni di condivisione che si andranno successivamente a scegliere, potrebbe essere necessario impostare una password per accedere alla cartella condivisa.<
> Per impostare una password digitare (verrà chiesto di inserirla due volte):{{{ sudo smbpasswd -a nome_utente }}} sostituendo `nome_utente` con quello effettivo. {{{#!wiki important Si raccomanda di utilizzare una password diversa da quella in uso per il proprio utente amministratore. }}} = Condividere cartella = <> == Con file manager Nautilus == {{{#!wiki note __Solo per Ubuntu 22.04__ è possibile saltare i primi due passaggi. }}} 0. [[AmministrazioneSistema/InstallareProgrammi|Installare]] il pacchetto [[apt://nautilus-share|nautilus-share]]. 0. Per assicurarsi che '''Nautilus''' carichi le funzionalità di condivisione, chiuderlo con il comando da [[AmministrazioneSistema/Terminale|terminale]]:{{{ nautilus -q }}} 0. [[AmbienteGrafico/AvviareProgrammi|Avviare]] '''Nautilus''' e fare clic destro sulla cartella da condividere per selezionare '''Opzioni condivisione'''. 0. Nella finestra di dialogo che verrà aperta potranno essere selezionate le seguenti impostazioni: * '''Condividi questa cartella'''. Indicare un nome per la condivisione (''facoltativo; in caso contrario verrà utilizzato il nome stesso della cartella''). {{{#!wiki note Se viene scelto un nome troppo lungo, comparirà il relativo avviso. Scegliere quindi un nome più breve. }}} * Permetti ad altri di creare e cancellare file nella cartella. * Accesso per gli ospiti (per utenti senza account). Se si vuole libero accesso alla cartella __senza__ utilizzare una password. In caso contrario lasciarla deselezionata e [[#password|impostare]] una password, se non fatto in precedenza. 0. Fare clic su '''Crea condivisione'''. In questo modo sull'icona della cartella comparirà il flag della condivisione di rete. == Procedura manuale == Sono qui descritti i passaggi per creare e condividere una cartella denominata `Condivisa` con l'ipotetico utente '''mario''' (cambiare questi nomi con quelli effettivi). 0. Se necessario, [[AmministrazioneSistema/ComandiBase#mkdir|creare]] nella propria '''Home''' la cartella `Condivisa`. 0. Aprire con i [[AmministrazioneSistema/PrivilegiDiAmministrazione/Sudo|privilegi di amministrazione]] e con un [[Ufficio/EditorDiTesto|editor di testo]] il file `/etc/samba/smb.conf`. 0. Scorrere in fondo al file e inserire le seguenti righe:{{{ [Condivisa] path = /home/mario/Condivisa read only = no browseable = yes guest ok = no writeble = yes }}} Con queste impostazioni la cartella `/home/mario/Condivisa` sarà accessibile in lettura/scrittura (`read only = no`), visibile a tutti i dispositivi nella rete (`browseable = yes`), con l'accesso agli ospiti disabilitato (`guest ok = no`, è pertanto necessaria una [[#password|password]]) e con i permessi di scrittura (`writeble = yes`). {{{#!wiki note È possibile cambiare a piacimento queste impostazioni modificando i parametri `yes` in `no` o viceversa, oppure utilizzandone altri (per un elenco esaustivo consultare la [[https://www.samba.org/samba/docs/current/man-html/smb.conf.5.html|guida]] sul sito ufficiale del progetto, oppure [[https://guide.debianizzati.org/index.php/SAMBA:_configurazione_lato_server#Il_file_smb.conf|questa guida]] più sintetica).<
> In questo caso i nomi della cartella e della condivisione coincidono («`Condivisa`»); è tuttavia possibile scegliere un nome diverso (nella rete verrà visualizzato il nome nelle parentesi quadre). }}} <> = Avviare condivisione = Una volta effettuate tutte le impostazioni necessarie, riavviare il servizio '''smbd''' per avviare la condivisione della cartella. Digitare il seguente comando:{{{ sudo systemctl restart smbd }}} {{{#!wiki note Si consiglia di [[#test|verificare]] i parametri della cartella condivisa. }}} <> = Accedere alla cartella condivisa = I metodi per accedere alla cartella condivisa sono diversi in base al sistema utilizzato. A seconda del tipo di permessi impostati, potrebbe essere richiesto di inserire nome utente e password. Di seguito sono elencati i casi più frequenti. * '''Da interfaccia grafica su Ubuntu e altri sistemi GNU/Linux''': cercare nel gestore di file la cartella condivisa nella sezione delle condivisioni di rete (di aspetto diverso a seconda dell'[[AmbienteGrafico|ambiente grafico]] e/o del [[AmbienteGrafico/FileManager|file manager]] in uso). * '''Da terminale con Ubuntu''': 0. [[AmministrazioneSistema/InstallareProgrammi|Installare]] il pacchetto [[apt://smbclient|smbclient]], se non presente. 0. Digitare uno dei due comandi, a seconda dei casi:{{{ smbclient //nome_host/nome_cartella_condivisa -U nome_utente smbclient //IP/nome_cartella_condivisa -U nome_utente }}} sostituendo come nei seguenti esempi:{{{ smbclient //PC_ufficio/Documenti_condivisi -U mario smbclient //192.168.1.100/VideoCondivisi -U paolo }}}Sarà possibile utilizzare i principali comandi come `ls` (per elencare cartelle e file), `cd` (per cambiare directory), `get` (per scaricare file), ecc. * '''Windows:''' cercare la cartella condivisa nei dispositivi di rete in '''File'''/'''Esplora Risorse''' oppure digitare nella barra degli indirizzi di quest'ultimo a seconda dei casi:{{{ \\nome_host\nome_cartella_condivisa \\indirizzo-IP\nome_cartella_condivisa }}} * '''MacOS''': cercare la cartella condivisa nella sezione '''Rete''' di '''Finder''' oppure seguire il menu '''''Vai → Connetti al Server''''', quindi inserire a seconda dei casi:{{{ smb://nome_host/nome_cartella_condivisa smb://indirizzo-IP/nome_cartella_condivisa }}} {{{#!wiki tip In maniera analoga sarà possibile accedere alla cartella condivisa da svariati tipi di dispositivi (smartphone, tablet, Smart TV, media center, server, ecc.), oppure da programmi specifici installati su altri computer ('''VLC''', '''Kodi''', ecc.). Se necessario consultare la relativa manualistica. }}} = Comandi utili = <> == Test della condivisione == * Per visualizzare le opzioni di condivisione digitare il comando:{{{ net usershare info --long }}} * Per verificare eventuali errori in `/etc/samba/smb.conf` digitare:{{{ testparm }}} == Gestione servizi Samba == Nella tabella seguente sono elencati alcuni comandi utili per la [[AmministrazioneSistema/Systemd|gestione del servizio]] '''smbd''': ||<:>'''Servizio'''||<:>'''Comando'''|| || Stato || `sudo systemctl status smbd.service` || || Avvio || `sudo systemctl start smbd.service` || || Arresto || `sudo systemctl stop smbd.service` || || Riavvio || `sudo systemctl restart smbd.service` || || Ricaricamento || `sudo systemctl reload smbd.service` || || Abilitazione || `sudo systemctl enable smbd.service` || || Disabilitazione || `sudo systemctl disable smbd.service` || || Blocco || `sudo systemctl mask smbd.service` || || Sblocco || `sudo systemctl unmask smbd.service` || = Ulteriori risorse = * [[https://www.samba.org/|Sito ufficiale]] * [[https://it.wikipedia.org/wiki/Samba_(software)|Voce enciclopedica]] * [[https://wiki.archlinux.org/title/Samba|Samba su wiki Arch]] * [[https://guide.debianizzati.org/index.php/Samba|Samba su Debianizzati]] ---- CategoryServer CategoryInternet