Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Pagina non alterabile
  • Informazioni
  • Allegati
  • Differenze per "Server/Samba"
Differenze tra le versioni 1 e 44 (in 43 versioni)
Versione 1 del 06/04/2007 20.21.54
Dimensione: 10733
Commento: creata pagina portale server
Versione 44 del 01/02/2026 17.19.39
Dimensione: 3009
Autore: jeremie2
Commento: Importata da corradoventu/prova1
Le cancellazioni sono segnalate in questo modo. Le aggiunte sono segnalate in questo modo.
Linea 1: Linea 1:
#LANGUAGE it
[[BR]]
||<tablestyle="float:right; font-size: 0.9em; width:40%; background:#F1F1ED; margin: 0 0 1em 1em;" style="padding:0.5em;">[[TableOfContents]]||
#format wiki
#language it
<<Indice(depth=1)>>
<<BR>>
<<Informazioni(forum="https://forum.ubuntu-it.org/viewtopic.php?f=46&t=166654"; rilasci="22.04 24.04 25.10 26.04")>>
Linea 7: Linea 9:
attachment:IconsPage/IconSambaShares.png '''Samba''' è un software che attraverso il protocollo '''[[https://it.wikipedia.org/wiki/Server_Message_Block|SMB]]''' permette di condividere file anche in reti miste Linux/Windows. In questa guida viene mostrato come condividere una cartella.
Linea 9: Linea 11:
Samba è un insieme di strumenti per file e stampanti con computer che montano sistemi operativi Windows. Samba implementa il protocollo di rete SMB, il quale è il cuore del networking Windows. = Installazione =
Linea 11: Linea 13:
Solitamente si avrà bisogno di Samba per: Assicurarsi di aver [[AmministrazioneSistema/InstallareProgrammi|installato]] il pacchetto [[apt://nautilus-share|nautilus-share]] e le relative dipendenze.
Linea 13: Linea 15:
 * agire come un client con server Windows: accesso a file e stampanti remote condivisi, = Configurazione =
Linea 15: Linea 17:
 * agire da server per client Windows: condividere cartelle e stampanti, incluse pseudo-stampanti PDF,  0. Aggiungere il proprio utente al gruppo '''sambashare''' digitando nel [[AmministrazioneSistema/Terminale|terminale]]:{{{
sudo adduser $USER sambashare
}}}
 {{{#!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`).}}}
 0. Impostare una password (verrà chiesta 2 volte):{{{
sudo smbpasswd -a $USER
}}}
 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. Aggiungere dopo la riga `workgroup = WORKGROUP`:{{{
force user = NOME_UTENTE
}}}sostituendo la dicitura `NOME_UTENTE` con il nome del proprio utente.
 0. Decommentare la riga `# usershare max shares = 100` togliendo il simbolo `#` in modo che risulti:{{{
usershare max shares = 100
}}}
 0. Salvare e chiudere il file.
 0. Riavviare il servizio '''smbd''':{{{
sudo service smbd restart
}}}
 0. Verificare eventuali errori in `/etc/samba/smb.conf`:{{{
testparm
}}}
 0. Fare nuovamente login o riavviare il sistema per ottenere le autorizzazioni del gruppo '''sambashare'''.
Linea 17: Linea 41:
 * agire da controllore di domini in una rete Windows (autenticazione degli utenti, etc.), = Condividere cartella con Nautilus =
Linea 19: Linea 43:
 * fare qualcosa di più complesso, come per esempio usare un controller Windows di domini per autenticare gli utenti di una macchina Linux.

Il progetto Samba è partito nel 1992 con Andrew Tridgell. Oggi è un'importante struttura software nel mondo Linux quando si vuol fare interagire due o più macchine Windows e Linux.

== Ho davvero bisogno di Samba? ==

 * Se vuoi che il tuo computer Windows possa usare una stampante collegata a una macchina Linux non è necesario usare Samba. '''CUPS''' può essere configurato per rendere la stampante accessibile in rete (consultare il manuale di '''CUPS''' per maggiori informazioni).

 * Non hai bisogno di Samba per condividere cartelle tra due macchine Linux, è possibile usare '''NFS''' per questo.

= Installare Samba =

Installare Samba è davvero semplice, basta installare il pacchetto ''samba''. Da terminale digitare: {{{
sudo apt-get install samba
}}}
oppure è possibile usare '''[:SynapticHowto:Synaptic]'''.

= Configurare il computer =

Avviare lo strumento '''Impostazioni di rete''' da '''''Sistema -> Amministrazione -> Rete''''' e selezionare la scheda '''Generale'''.

== Ora è tempo di sistemare le configurazioni ==

Attenzione: il nome del computer e dell'utente è consigliato farlo identico sia per win che per linux nel caso in cui un client abbia entrambi installati, altrimenti si andrà in contro a grossi problemi di permessi!

    Setting dell'Host (client)

{{{
      Nome dell'Host: <tuo_computer>

      Nome Dominio: <tuo_dominio>
 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:
  * Selezionare la voce '''Condividi questa cartella'''.
  * Indicare un nome per la condivisione (''facoltativo; in caso contrario verrà utilizzato il nome stesso della cartella'').
  * Impostare eventuali autorizzazioni per altri utenti.
 0. Fare clic su '''Crea condivisione'''.
 0. Verificare digitando nel [[AmministrazioneSistema/Terminale|terminale]]:{{{
net usershare info --long
Linea 52: Linea 53:
    Windows Networking
    Controlla che sia abilitato il windows networking
A questo punto un computer con Ubuntu collegato alla medesima rete dovrebbe essere in grado di rintracciare la cartella condivisa dal file manager '''Nautilus''' alla voce '''Network''' (Rete).
Linea 55: Linea 55:
{{{
      Descizione: <quello_che_vuoi>

      Domain/Workgroup: <il_dominio_del_tuo_gruppo_di_lavoro>
}}}

{{{
   Se preferisci, controlla il server WINS <tuo_indirizzo_ip_o_wins_server>
}}}

'''Note:''' Se non lo conosci, chiedilo al tuo amministratore di rete. Le tipiche configurazioni per il campo del gruppo di lavoro sono"mshome" o "workgroup".

Le configurazioni più importanti qui sono il tuo hostname (nome Host), il quale dovrebbe essere gia settato, e il dominio/gruppo di lavoro. Premi '''OK''' in entrambe le finestre and e la prima parte per reti con macchine Windows è fatta.

= Esplorare samba shares =

Ubuntu e Gnome (come xfce4) rendono facili l'accesso a file in reti di condivisione windows.

Apri il menù Risorse, poi clicca su "Server Rete". Vedrai una "rete windows",aprila. La prossima finestra mostra tutti i domini/gruppi di lavoro trovati nella tua rete. Dentro ogni domain/workgroup puoi vedere tutti i computer compresi in esso (cioè quelli che condividono qualcoasa!). Doppio click sull'icona di un computer e accedi ai suoi file condivisi. Può essere più facile ?

Prima di mostrare ciò che un computer condivide, il tuo sistema potrebbe chiederti un nome ed una password. Controlla che sia valido l'user che stai immettendo per il computer al quale ti stai connettendo. Se vuoi puoi anche mettere la tua password nel tuo portachiavi!

= Montare una condvisione samba =

Montare una condivisione sul filesystem locale ti permette di lavorare intorno a programmi che non usano ancora GnomeVFS per esplorare i file condivisi remoti. Per montare una condivisione samba devi prima di tutto installare smbfs: {{{
sudo apt-get update

sudo apt-get install smbfs
}}}

Per permettere ad account non root di installare condivisioni, cambia i permessi nel programma smbmnt:

{{{
sudo chmod u+s /usr/bin/smbmnt
}}}

Cio che segue monterà la cartella myshare nel myserver nella destinazione /home/yourusrname/mnt: {{{
smbmount //myserver/myshare /home/yourusrname/mnt
}}}

Inoltre per avere una condivisione montata automaticamente ogni volta che riavvii, hai bisogno di compiere la seguente procedura:

Apri la shell come root: {{{
sudo -s
}}}

Crea un file che contenga i dettagli del tuo Windows/Samba user: {{{
vi /etc/samba/user
}}}

...dovrebbe contenere due linee come queste: {{{
    username = george

    password = secret
}}}

Cambia i permessi nel file per sicurezza: {{{
chmod 0600 /etc/samba/user
}}}

Ora crea una directory dove puoi montare la tua condivisione (per esempio /mnt/data): {{{
mkdir /mnt/data
}}}

Ora scrivi la tabella del filesystem (/etc/fstab) ed aggiungi una linea come quella che segue:

{{{
//server/share /mnt/data smbfs credentials=/etc/samba/user,rw,uid=bob 0 0
}}}

...dove 'bob' è un non-root user con il quale ti sei loggato in ubuntu, 'server' è il nome o l'indirizzo della macchina windows and 'share' è il nome della condivisione.

Ora per montare share esegui il comando seguente, sempre da root. Verrà montata automaticamente al riavvio successivo.

{{{
mount /mnt/data
}}}

to be continued...

= Configurazione del server Samba =

La prossima parte non ha un'applicazione grafica ottimale, purtroppo, Dovremo quindi utilizzare la riga di comando. Non è difficile, ma sarà necessario essere molto accorti agli errori di battitura.

Prima di tutto apri un terminale: '''Applicazioni''' > '''Strumenti di sistema''' > '''Terminale''' e poi apri con l'editor "Nano" il file smb.conf digitando:

{{{
sudo nano -w /etc/samba/smb.conf
}}}

'''Come salvare:''' Per savare in nano premete "ctrl/o" quindi "ctrl/x".

'''Note''' Qui trovi una Guida all'uso dell'editor Nano => NanoGuida

'''Tip:''' Potete tranquillamente usare gedit al posto di nano se preferite.

Il file *smb.conf* è suddiviso in sezioni come segue:

{{{
    Global Settings

    Debugging/Accounting

    Authentication

    Printing

    File sharing

    Misc

    Share Definitions
}}}

Inizialmente abbiamo i '''Global Settings'''. qui potete osservare alcune righe, visibili anche tramite l'interfaccia grafica networktool come workgroup e il wins server. Se siete già in grado di cambiare qualsiasi cosa a vostro piacimento, potete saltare questa sezione, in altro modo cambiamo cosa vi serve.

Se non sapete il significato delle singole parti, potete consultare e verificare le parti principali nell'how-to ufficiale http://www.samba.org/samba/docs/using_samba/ch06.html` instead of randomly changing them. It will save you trouble-shooting later.

Una sezione molto importante per noi è '''File sharing'''. Dobbiamo quindi cambiare:

{{{
    ![homes]

       comment = Home Directories

       browseable = no

    # By default, the home directories are exported read-only. Change next

    # parameter to 'yes' if you want to be able to write to them.

       writable = no

    # File creation mask is set to 0700 for security reasons. If you want to

    # create files with group=rw permissions, set next parameter to 0775.

       create mask = 0700

    # Directory creation mask is set to 0700 for security reasons. If you want to

    # create dirs. with group=rw permissions, set next parameter to 0775.

       directory mask = 0700
}}}

Questa descrive la vostra cartella /home. Abitualmente questa viene condivisa in rete, in quanto conterrà i file condivisi. Per fare questo, fate i seguenti cambiamenti:

{{{
    ![homes]

       comment = Home Directories

       browseable = yes

    # By default, the home directories are exported read-only. Change next

    # parameter to 'yes' if you want to be able to write to them.

       writable = yes

    # File creation mask is set to 0700 for security reasons. If you want to

    # create files with group=rw permissions, set next parameter to 0775.

       create mask = 0775

    # Directory creation mask is set to 0700 for security reasons. If you want to

    # create dirs. with group=rw permissions, set next parameter to 0775.

       directory mask = 0775
}}}

Questo completa la condivisione della vostra /home. L'ultima cosa che dobbiamo fare è creare gli utenti con relativi permessi.
Aggiungeremo gli utenti abilitati ai file condivisi con il comando 'smbpasswd'.

{{{
sudo smbpasswd -a username

New SMB password:
Retype new SMB password:
Added user username.
}}}

Riavviate Samba per ogni cambiamento ad utenti/password o 'smb.conf'

{{{
sudo /etc/init.d/samba restart
}}}

Questa era la base delle condivisioni Samba. Ogni commento è ben accetto.

= Complichiamo appena le cose =

Siamo partiti dalle basi delle condivisioni samba. Tutto ciò che abbiamo detto è abbastanza per partire con una condivisione. Ora aggiungeremo ulteriori dettagli che potrebbero, come non potrebbero servire.

== Se possedete più di una scheda di rete ==

Se possedete più di una scheda di rete (o interfaccia) allora dovete definire dove volete che giri samba. In smb.conf dentro la sezione [global], aggiungete:

{{{
"interfaces = 127.0.0.1, 192.168.0.31/24"

"bind interfaces only = yes"
}}}

Il primo indirizzo (127.0.0.1), è il loopback network connection (la macchina stessa o localhost che dir si voglia).

Il secondo indirizzo (192.168.0.31), è l'indirizzo della scheda di rete ove samba girerà, il secondo numero (24) è la sottorete di default per reti di CLASSE-C . Potrebbe variare dipende dalla tipologia della vostra rete.

Con "bind interfaces only" limiterete le richieste SMB ad una singola scheda.

Potete limitare gli indirizzi IP che si potranno connettere al vostro server Samba aggiungendo queste righe:

{{{
"hosts allow = 127.0.0.1, 192.168.0.31, 192.168.0.32"

"hosts deny = 0.0.0.0/0"
}}}

L'indirizzo di loopback deve essere presente nella prima linea. La seconda linea nega l'accesso a tutti gli indirizzi IP non presenti nella prima.
##= Soluzione dei problemi =
Linea 280: Linea 59:
 * [http://www.samba.org/ Sito web di Samba]  * [[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]]
Linea 282: Linea 63:
 * [http://us4.samba.org/samba/docs/using_samba/toc.html "Using Samba", di Ts Eckstein, e Collier-Brown (O'Reilly)]

 * [http://www.cups.org/ Sito web di CUPS]
----
CategoryServer CategoryNuoviDocumenti
----
CategoryServer CategoryInternet


Guida verificata con Ubuntu: 22.04 24.04 25.10 26.04

Problemi in questa pagina? Segnalali in questa discussione

Introduzione

Samba è un software che attraverso il protocollo SMB permette di condividere file anche in reti miste Linux/Windows. In questa guida viene mostrato come condividere una cartella.

Installazione

Assicurarsi di aver installato il pacchetto nautilus-share e le relative dipendenze.

Configurazione

  1. Aggiungere il proprio utente al gruppo sambashare digitando nel terminale:

    sudo adduser $USER sambashare

    Benché questo passaggio sia facoltativo, si consiglia di eseguirlo per evitare errori in fase di condivisione della cartella (es.: ‘net usershare’ return error 255).

  2. Impostare una password (verrà chiesta 2 volte):

    sudo smbpasswd -a $USER
  3. Aprire con i privilegi di amministrazione e con un editor di testo il file /etc/samba/smb.conf.

  4. Aggiungere dopo la riga workgroup = WORKGROUP:

    force user = NOME_UTENTE

    sostituendo la dicitura NOME_UTENTE con il nome del proprio utente.

  5. Decommentare la riga #   usershare max shares = 100 togliendo il simbolo # in modo che risulti:

    usershare max shares = 100
  6. Salvare e chiudere il file.
  7. Riavviare il servizio smbd:

    sudo service smbd restart
  8. Verificare eventuali errori in /etc/samba/smb.conf:

    testparm
  9. Fare nuovamente login o riavviare il sistema per ottenere le autorizzazioni del gruppo sambashare.

Condividere cartella con Nautilus

  1. Avviare Nautilus e fare clic destro sulla cartella da condividere per selezionare Opzioni condivisione.

  2. Nella finestra di dialogo che verrà aperta:
    • Selezionare la voce Condividi questa cartella.

    • Indicare un nome per la condivisione (facoltativo; in caso contrario verrà utilizzato il nome stesso della cartella).

    • Impostare eventuali autorizzazioni per altri utenti.
  3. Fare clic su Crea condivisione.

  4. Verificare digitando nel terminale:

    net usershare info --long

A questo punto un computer con Ubuntu collegato alla medesima rete dovrebbe essere in grado di rintracciare la cartella condivisa dal file manager Nautilus alla voce Network (Rete).

Ulteriori risorse


CategoryServer CategoryInternet