Rete Windows · 5 min read · Dec 11, 2025

Navigare nella rete Windows con il tuo computer Linux con montaggio automatico e scoperta di tutti gli host e condivisioni.

L’ultima versione che troverai su:

http://linux.bononline.nl/linux/automountsmbshares/index.php

Indice

    1. Introduzione e Riepilogo

Introduzione

Da un po’ di tempo sto cercando un buon modo per far scoprire al mio computer la rete Windows e montare le condivisioni su richiesta. Al momento non esiste una soluzione abbastanza buona. Dopo aver provato i kioslaves nel desktop della mia scelta (KDE) e i programmi FUSE Fusesmb e SmbNetFs, non ero davvero soddisfatto. Doveva esserci un modo per far scoprire al mio computer tutti i gruppi di lavoro/domini, gli host e le condivisioni, e montare una condivisione su un host su richiesta. Alcuni diranno: monta le condivisioni di tua scelta a mano, e via. Ma no!! Questo non è ciò che voglio. Posso far scoprire automaticamente al mio computer tutti gli host e le condivisioni disponibili, e montare la condivisione solo quando necessario. Questo dovrebbe essere possibile! E dopo aver provato ho scoperto che lo è!

Le seguenti problematiche sono necessarie a mio avviso:

  • scoperta automatica della rete SMB (domini, host e condivisioni)

  • costruzione di una rappresentazione che abbia senso per gli utenti connessi nella loro home directory

  • montaggio automatico delle condivisioni su richiesta

  • smontaggio automatico delle condivisioni dopo un certo periodo di inattività

  • utilizzo di un fs del kernel come SMBFS o CIFS

  • indipendente da un Desktop Manager

  • supporto di altri servizi di rete come SSH e FTP

Il programma FUSE Fusesmb si avvicina molto a ciò che sto cercando, ma manca delle capacità estese che ha CIFS, come la corretta presentazione delle autorizzazioni, supporto di inotify, symlink e ATTR/ACL. Ci è voluto un po’ di tempo per scoprire perché il programma FUSE manca di queste funzionalità. FuseSMB è basato sulla libreria smbclient smbclient.so, che fa parte del pacchetto Samba, e non ha nulla a che fare con smbfs o cifs.

Il risultato

Il risultato di questa costruzione è una directory relativa alla rete (Rete Globale) nella tua home directory, dove l’automount fornisce un albero navigabile per accedere a tutti i servizi di rete supportati.

In questo momento supporta i servizi SMB e SSH (sto lavorando su FTP). Accesso al “punto di montaggio di rete”:

/home/sbon/Rete Globale/
Host SSH
Rete Windows

Accedendo alla Rete Windows (==smb), tutti i gruppi di lavoro e/o domini appaiono:

/home/sbon/Rete Globale/
Host SSH
Rete Windows
BONONLINE
CWWERKGROEP

Entrando nel gruppo di lavoro CWWERKGROEP, tutti i server e altri host vengono mostrati:

/home/sbon/Rete Globale/
Host SSH
Rete Windows
BONONLINE
CWWERKGROEP
ROUTER
PC1

Entrando nel server ROUTER, le condivisioni disponibili per l’utente connesso appaiono:

/home/sbon/Rete Globale/
Host SSH
Rete Windows
BONONLINE
CWWERKGROEP
ROUTER
cwdocumenten
pubblico
sbon

Accedendo a una condivisione, viene montata automaticamente (con CIFS o SMBFS). L’uso delle credenziali è supportato, i login come ospite sono predefiniti.

Per costruire la “mappa di montaggio multipla” per il servizio smb, viene utilizzata una cache di rete. Fornisce informazioni sui gruppi di lavoro e/o domini, host e server e condivisioni disponibili. È mantenuta da alcuni script, che utilizzano alcune utility (nbtscan per determinare gli host e i gruppi di lavoro/domini e smbclient per determinare le condivisioni per host).

Accedendo agli host SSH (=ssh), tutti gli host a cui questo utente ha accesso appaiono:

/home/sbon/Rete Globale/
Host SSH
192.168.0.2
Rete Windows

Qui non viene utilizzata alcuna cache per creare questo albero, ma il file .known_hosts. Inoltre, non era disponibile alcun mount.sshfs. Ne ho creato uno, utilizzando FUSE e sshfs. (e umount.sshfs).
Ora, quando si accede all’host 192.168.0.2, la radice su 192.168.0.2 è montata.

Come funziona

Questa costruzione utilizza l’automount. Quando un utente accede e inizia una nuova sessione, viene aggiunto un “punto di montaggio di rete” al file auto.master e il demone automount riceve un segnale di “reload”. Questo punto di montaggio, di nome predefinito “Rete Globale”, si trova nella home directory dell’utente. Ad esso è collegato uno script (auto.network) che crea una mappa, basata su tutti i servizi di rete supportati e le risorse scoperte. Insieme all’opzione di navigazione, questo fornisce una mappa navigabile, dove le condivisioni/gli host vengono montati quando vengono accessi.

Quando l’utente esce, e quindi la sessione termina, il punto di montaggio viene rimosso di nuovo, e il demone automount riceve nuovamente un segnale di reload per rendere effettive le modifiche.

Qui viene utilizzata la capacità di KDM di eseguire script con privilegi di root all’inizio e alla fine di una sessione.

In questo momento sono supportati solo SMB e SSH.

Problemi noti

Ci sono alcuni colli di bottiglia:

  • quando una condivisione viene aggiunta, un host va offline o qualsiasi altra cosa cambia nell’ambiente smb, ci vuole un po’ di tempo prima che sia visibile anche nella cache. Questa cache è mantenuta tramite alcuni script, che lavorano con un meccanismo basato su “pull”. In secondo luogo, l’automount non rileva da solo che i dati nella cache sono cambiati. Rinnova solo i propri dati (la mappa di montaggio multipla) dopo un timeout, e anche allora non ottiene completamente tutte le modifiche.
  • l’automount è istruito a presentare una mappa di montaggio navigabile. Questo significa che le directory di livello superiore sono sempre disponibili. Questa è una cosa molto buona, le reti disponibili sono sempre visibili e accessibili all’utente, anche dopo un timeout. In pratica, a volte uno dei “servizi di rete” scompare…
  • l’automount ha alcuni problemi quando si avvia con un file auto.master vuoto (e include vuoti). Al momento dell’avvio, quando non ci sono utenti connessi, e quindi nessun punto di montaggio di rete gestito da autofs, l’automount deve essere avviato con una mappa vuota.

Link

Accesso a condivisioni Windows o Samba utilizzando autofs

una guida per impostare autofs per le condivisioni SMB, utilizzando file esistenti;

Integrare il tuo host Linux in un ambiente Windows

una guida per impostare autofs per accedere alle condivisioni in un modo alternativo.

HOWTO Automontare filesystem (AUTOFS) / udev con autofs

Qui viene utilizzata quasi la stessa costruzione per montare hardware utilizzando autofs con udev. Qui anche i punti di montaggio vengono aggiunti e rimossi dinamicamente al file auto.master.

Share: X/Twitter LinkedIn

Ricevi i nuovi post nella tua casella di posta.

Nessuno spam. Disiscriviti in qualsiasi momento.