NFS: client windows

NFS

Sommario

Spazio Kernel
  1. Lato server
  2. Lato client

Introduzione

Poiché NFS è supportato anche in Windows si ritiene opportuno presentare una piccola guida su come consentire l'accesso a risorse ospitate su un server Linux tramite NFS anche a quei client che invece di Linux usano Windows.

  Suggerimento
Nel caso di reti miste Linux/Windows il lettore è invitato a prendere in considerazione l'utilizzo di SAMBA al posto di NFS, specialmente se come client intende usare una macchina su cui è installato Windows 7.


Windows Xp

Installazione

Scaricare da Windows services for Unix l'eseguibile e procedere con l'installazione.

  Nota
Il predetto installer funziona solo con la versione professional, tuttavia è possibile installare SFU anche nella versione home; a tal fine è necessario aprire con un editor esadecimale, tipo ghex in Gnome, il file SfuSetup.msi, cercare "NOT (VersionNT = 501 AND MsiNTSuitePersonal)" e sostituire a 501 il numero 510.

Durante l'installazione verrà chiesto se usare un servizio NIS per la mappatura dei nomi oppure la coppia di file passwd e group se lo stesso non è disponibile; si tenga presente che tale scelta è tranquillamente modificabile anche in seguito.
Ad installazione conclusa sarà necessario riavviare il computer.

Configurazione

Qualora si intenda procedere alla mappatura delle utenze tramite la coppia di file passwd e group è innanzitutto necessario copiarli dal server Linux in una cartella di Windows a scelta dell'utente; fatto questo avviare il servizio User Name Mapping (Impostazioni --> Strumenti di amministrazione --> Servizi), dopo averlo abilitato per un avvio manuale o automatico.
Avviare Programmi --> Windows Services for Unix --> Services for UNIX Administration e selezionare "User Name Mapping"; in questa guida si esaminerà solo la mappatura tramite coppia di file passwd e group.
Dalla scheda Configuration selezionare Use Password and Group files, quindi selezionare i rispettivi file; dopo aver cliccato il tasto "apply" passare alla scheda Maps.
Cliccare su Show User Maps e Show Group Maps per associare rispettivamente nomi utenti e gruppi utenti di Windows con i corrispettivi Unix; per ogni associazione è necessario cliccare sul tasto "add" così che il risultato appaia nell'ultimo riquadro in basso. Una volta terminate le associazioni (non è necessario mappare tutte le utenze) premere "apply".

  ATTENZIONE
Chi scrive ha provato la procedura sia sotto "Xp Home" che "Xp Professional" virtualizzato; nel primo caso la mappatura è stata memorizzata, nel secondo no.


Si noti che la succitata procedura di mappatura deve essere eseguita subito dopo l'installazione ed ogni volta che i file passwd e/o group vengono modificati.

Windows 7

Installazione

Andare in Pannello di controllo --> Programmi e funzionalità --> Attivazione o disattivazione delle funzionalità di Windows, cercare Servizi per NFS e spuntarlo, compreso Client per NFS e Strumenti di amministrazione, infine premere ok.

  Nota
Queste funzionalità non sono disponibili solo per le versioni "Enterprise" e "Ultimate".

Terminata l'installazione riavviare.

Configurazione

Diversamente da Windows Xp che offriva la possibilità di mappare nomi utenti e gruppi semplicemente copiandosi i file passwd e group della macchina con le risorse da esportare in locale, in Windows 7 questo non è più possibile essendo disponibili solo il mapping tramite active directory o server di mapping nomi. In quest'ultimo caso non dovrebbe essere necessario Windows Server, ma dovrebbe essere sufficiente una macchina con Windows XP su cui giri il servizio User Name Mapping.

Esiste tuttavia un piccolo escamotage per superare parzialmente il problema, ovvero quello di cambiare UID e GID automaticamente associati all'utente anonimo e gruppo anonimo (che sono quelli appunto usati in caso di assenza di una mappatura utenti); aggiungere tramite regedit in HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ClientForNFS\CurrentVersion\Default due nuove valori DWORD, ovvero AnomymousGid e AnomymousUid, avendo cura di a attribuire loro lo GID/UID desiderato in base decimale (se per esempio si vuole mappare l'utente caio di Linux avente UID=1000 e GID=1000 entrambe le chiavi dovranno avere valore 1000). Fatto ciò riavviare.

Connessione risorse remote

La procedura è la stessa usata per caricare risorse presenti su altre macchine Windows, infatti è sufficiente aprire "Esplora Risorse" e cliccare su Strumenti --> Connetti Unità di Rete.... Nella schermata che si apre inserire il percorso delle risorse remote da montare, del tipo:
mio_server:/percorso/risorse
Diversamente da client Linux qui è necessario specificare il percorso assoluto delle risorse condivise, se per esempio queste risiedono sul server sempronio nella cartella "/export" allora il percorso da inserire sarà sempronio:/export e non sempronio:/.
Non appena premuto il tasto di conferma comparirà una finestra che riepiloga il nome utente e il relativo UID e GID; qualora questi fossero errati sarà necessario premere annulla e ricontrollare la mappatura dei nomi correggendo eventuali errori. Si tenga presente che è sempre possibile autenticarsi come utenti anonimi aventi UID e GID pari a -2, ma evidentemente in tal caso si avrà probabilmente un accesso estremamente limitato alle risorse (oppure nessuno del tutto).

Approfondimenti