1 508
contributi
Nessun oggetto della modifica |
(corretta gerarchia titoli) |
||
Riga 1: | Riga 1: | ||
{{Versioni compatibili|Tutte le versioni di Debian}} | {{Versioni compatibili|Tutte le versioni di Debian}} | ||
=Introduzione= | == Introduzione == | ||
Samba è un diffusissimo software open-source, ideato nel 1991 da Andrew Tridgell e rilasciato sotto licenza GPL, che permette la condivisione di risorse come directory e stampanti fra gli host di una rete. Si avvale sostanzialmente del protocollo SMB (''server message block'') originario Microsoft, basato a sua volta sul protocollo NetBios (''network basic input output system'') sviluppato da IBM nel 1984. | Samba è un diffusissimo software open-source, ideato nel 1991 da Andrew Tridgell e rilasciato sotto licenza GPL, che permette la condivisione di risorse come directory e stampanti fra gli host di una rete. Si avvale sostanzialmente del protocollo SMB (''server message block'') originario Microsoft, basato a sua volta sul protocollo NetBios (''network basic input output system'') sviluppato da IBM nel 1984. | ||
Si sceglie solitamente l'uso di Samba per poter condividere file e stampanti in una rete mista (''macchine GNU/Linux, MS-Windows, Mac OS..''), in modo da sfruttare un unico protocollo e un unico sistema di autenticazione. | Si sceglie solitamente l'uso di Samba per poter condividere file e stampanti in una rete mista (''macchine GNU/Linux, MS-Windows, Mac OS..''), in modo da sfruttare un unico protocollo e un unico sistema di autenticazione. | ||
=La suite= | == La suite == | ||
Analizziamo i programmi che otteniamo dall'installazione della suite Samba per Debian GNU/Linux: | Analizziamo i programmi che otteniamo dall'installazione della suite Samba per Debian GNU/Linux: | ||
Riga 25: | Riga 25: | ||
*'''nmblookup''': risolve i nomi host di un domain Samba (''NetBIOS name'') in indirizzi IP (es: nmblookup ''nomehost''). | *'''nmblookup''': risolve i nomi host di un domain Samba (''NetBIOS name'') in indirizzi IP (es: nmblookup ''nomehost''). | ||
=Configurazione del server= | == Configurazione del server == | ||
==Sezione global== | === Sezione global === | ||
Editiamo il file <code>'''/etc/samba/smb.conf'''</code>: | Editiamo il file <code>'''/etc/samba/smb.conf'''</code>: | ||
<pre> | <pre> | ||
Riga 49: | Riga 49: | ||
}} | }} | ||
==Condivisione di una directory== | === Condivisione di una directory === | ||
Adesso sempre dentro il nostro <code>/etc/samba/smb.conf</code>, creiamo la sezione specifica per la risorsa che vogliamo condividere. In questo esempio condivideremo una directory. | Adesso sempre dentro il nostro <code>/etc/samba/smb.conf</code>, creiamo la sezione specifica per la risorsa che vogliamo condividere. In questo esempio condivideremo una directory. | ||
<pre> | <pre> | ||
Riga 68: | Riga 68: | ||
* <code>'''read only'''</code> = setta i file della directory condivisa in sola lettura. | * <code>'''read only'''</code> = setta i file della directory condivisa in sola lettura. | ||
==Condivisione di una stampante== | === Condivisione di una stampante === | ||
Adesso analizziamo i parametri da aggiungere al file <code>/etc/samba/smb.conf</code> per poter condividere una stampante. | Adesso analizziamo i parametri da aggiungere al file <code>/etc/samba/smb.conf</code> per poter condividere una stampante. | ||
Aggiungiamo alla sezione <code>'''global'''</code>: | Aggiungiamo alla sezione <code>'''global'''</code>: | ||
Riga 96: | Riga 96: | ||
</pre> | </pre> | ||
==Condivisione di dispositivi di lettura (CD-ROM, DVD..)== | === Condivisione di dispositivi di lettura (CD-ROM, DVD..) === | ||
Poniamo come esempio di avere due pc e che solo uno dei due monti un lettore DVD. Bene, guardiamo come poter accedere ad un file, che risiedesse su un supporto DVD, dalla macchina sprovvista di lettore: | Poniamo come esempio di avere due pc e che solo uno dei due monti un lettore DVD. Bene, guardiamo come poter accedere ad un file, che risiedesse su un supporto DVD, dalla macchina sprovvista di lettore: | ||
<pre> | <pre> | ||
Riga 114: | Riga 114: | ||
Bene, a questo punto il file può considerarsi sufficientemente configurato per i nostri scopi. | Bene, a questo punto il file può considerarsi sufficientemente configurato per i nostri scopi. | ||
==Autenticazione== | === Autenticazione === | ||
Preoccupiamoci ora dell'accesso vero e proprio alle risorse messe in condivisione. Due sono i principali metodi di accesso. Possiamo creare un utente Samba con ''smbpasswd'', (tenendo presente che un utente Samba deve anche essere un utente presente sulla macchina) ed attribuirgli poi una password di nostra scelta: | Preoccupiamoci ora dell'accesso vero e proprio alle risorse messe in condivisione. Due sono i principali metodi di accesso. Possiamo creare un utente Samba con ''smbpasswd'', (tenendo presente che un utente Samba deve anche essere un utente presente sulla macchina) ed attribuirgli poi una password di nostra scelta: | ||
Riga 162: | Riga 162: | ||
Premendo enter vedremo il resoconto del nostro file. | Premendo enter vedremo il resoconto del nostro file. | ||
=Configurazione del client= | == Configurazione del client == | ||
==Smbclient== | === Smbclient === | ||
Spostiamoci sul client: | Spostiamoci sul client: | ||
<pre># apt-get install smbfs smbclient</pre> | <pre># apt-get install smbfs smbclient</pre> | ||
Riga 207: | Riga 207: | ||
* <code>'''smbclient -A'''</code>: sostanzialmente uguale a <code>-U</code> ma possiamo dargli il path di un file dal quale attingere l'username e la password. | * <code>'''smbclient -A'''</code>: sostanzialmente uguale a <code>-U</code> ma possiamo dargli il path di un file dal quale attingere l'username e la password. | ||
===Accesso al server=== | ==== Accesso al server ==== | ||
<pre> | <pre> | ||
$ smbclient //SERVER/shared | $ smbclient //SERVER/shared | ||
Riga 239: | Riga 239: | ||
Il file sarà salvato nella directory dalla quale ci siamo connessi al server. Qualora il file non venisse rinominato manterrebbe il proprio nome. | Il file sarà salvato nella directory dalla quale ci siamo connessi al server. Qualora il file non venisse rinominato manterrebbe il proprio nome. | ||
===Alcune funzioni=== | ==== Alcune funzioni ==== | ||
* <code>'''lowercase'''</code>: abilita i file ad essere richiamati da ''get'' e ''mget'' utilizzando solo caratteri minuscoli. È utile viste le difficoltà spesso trovate negli share MSDOS (''case insensitive''). | * <code>'''lowercase'''</code>: abilita i file ad essere richiamati da ''get'' e ''mget'' utilizzando solo caratteri minuscoli. È utile viste le difficoltà spesso trovate negli share MSDOS (''case insensitive''). | ||
<pre> | <pre> | ||
Riga 265: | Riga 265: | ||
</pre> | </pre> | ||
===Mask, mget e recurse=== | ==== Mask, mget e recurse ==== | ||
Con il comando '''mget''' abilitiamo il download di tutti i file e directory in maniera ricorsiva. Tuttavia possiamo dare a tale comando un parametro (maschera) utilizzando '''mask''' . | Con il comando '''mget''' abilitiamo il download di tutti i file e directory in maniera ricorsiva. Tuttavia possiamo dare a tale comando un parametro (maschera) utilizzando '''mask''' . | ||
Es. nella nostra directory mettiamo di voler scaricare tutti i file con estensione .png: | Es. nella nostra directory mettiamo di voler scaricare tutti i file con estensione .png: | ||
Riga 280: | Riga 280: | ||
La funzione '''recurse on''' attiva lo scanning & downloading (nel caso di una maschera) o il downloading, accedendo anche a tutte le directory presenti nella directory da cui parte il comando. | La funzione '''recurse on''' attiva lo scanning & downloading (nel caso di una maschera) o il downloading, accedendo anche a tutte le directory presenti nella directory da cui parte il comando. | ||
==Smbmount & Smbumount== | === Smbmount & Smbumount === | ||
Con '''smbmount''' invece montiamo una risorsa in un mountpoint a nostra scelta. | Con '''smbmount''' invece montiamo una risorsa in un mountpoint a nostra scelta. | ||
Montiamo la risorsa shared col comando: | Montiamo la risorsa shared col comando: | ||
Riga 294: | Riga 294: | ||
</pre> | </pre> | ||
=Conclusioni= | == Conclusioni == | ||
Samba è un software semplicemente straordinario. La sua anima, il file <code>/etc/samba/smb.conf</code> è in perfetto stile Linux; cioè, lo stesso file, può divenire enorme e strutturatissimo oppure snello e semplicissimo, a seconda (''e questo è il vero stile Linux'') di quello che un utente vuole. | Samba è un software semplicemente straordinario. La sua anima, il file <code>/etc/samba/smb.conf</code> è in perfetto stile Linux; cioè, lo stesso file, può divenire enorme e strutturatissimo oppure snello e semplicissimo, a seconda (''e questo è il vero stile Linux'') di quello che un utente vuole. | ||
contributi