SSHFS: montare una risorsa remota sfruttando FUSE ed SSH: differenze tra le versioni

collegamenti esterni
(collegamenti esterni)
Riga 10: Riga 10:
Spesso può essere necessario lavorare direttamente su un filesystem remoto (si pensi, ad esempio, alla webroot di un sito o alla home del proprio portatile).
Spesso può essere necessario lavorare direttamente su un filesystem remoto (si pensi, ad esempio, alla webroot di un sito o alla home del proprio portatile).


'''<code>Sshfs</code>''' permette di superare questo problema in un modo semplice e pulito: montando una directory mediante [http://fuse.sourceforge.net/ FUSE], usando il protocollo [[SSH]].
'''<code>Sshfs</code>''' permette di superare questo problema in un modo semplice e pulito: montando una directory mediante FUSE<sup>[[#Collegamenti esterni|[1]]]</sup>, usando il protocollo [[SSH]].


== Installazione ==
== Installazione ==
Riga 18: Riga 18:
</pre>
</pre>


Per quanto riguarda il kernel, normalmente è presente il modulo ''fuse''. Se non è presente è necessaria la ricompilazione del kernel.
Per quanto riguarda il [[kernel]], normalmente è presente il modulo ''fuse''. Se non è presente è necessaria la ricompilazione del kernel.


Il modulo da attivare si trova in: ''File systems  --->  Filesystem in Userspace support''.
Il modulo da attivare si trova in: ''File systems  --->  Filesystem in Userspace support''.
Riga 38: Riga 38:
Con Debian 7 ([[Wheezy]]) e precedenti invece, per impostazione predefinita l'utilizzo di <code>sshfs</code> richiede [[privilegi di amministrazione]], tuttavia è possibile permettere l'utilizzo di <code>sshfs</code> anche agli utenti normali, se li si aggiunge al gruppo '''fuse'''.
Con Debian 7 ([[Wheezy]]) e precedenti invece, per impostazione predefinita l'utilizzo di <code>sshfs</code> richiede [[privilegi di amministrazione]], tuttavia è possibile permettere l'utilizzo di <code>sshfs</code> anche agli utenti normali, se li si aggiunge al gruppo '''fuse'''.


{{Box|Nota|Non è necessario cambiare i permessi di esecuzione di sshfs per garantire una corretta corrispondenza dei permessi di file/cartelle tra macchina locale e remota. Permettere l'esecuzione di sshfs ad utenti diversi da root SOLO se si ha l'effettiva necessità di permettere ad uno o più utenti normali di caricare risorse remote autonomamente.}}
{{Box|Nota|Non è necessario cambiare i permessi di esecuzione di sshfs per garantire una corretta corrispondenza dei permessi di file/cartelle tra macchina locale e remota. Permettere l'esecuzione di sshfs ad utenti diversi da [[root]] SOLO se si ha l'effettiva necessità di permettere ad uno o più utenti normali di caricare risorse remote autonomamente.}}


<!-- OBSOLETO: Passaggi obsoleti (in Wheezy), per ora commentati
<!-- OBSOLETO: Passaggi obsoleti (in Wheezy), per ora commentati
Riga 72: Riga 72:
</pre>
</pre>


Per quanto riguarda lo smontaggio (umounting) il comando è il seguente:
Per quanto riguarda lo smontaggio (unmounting) il comando è il seguente:
<pre>
<pre>
$ fusermount -u /mnt/sshdir
$ fusermount -u /mnt/sshdir
Riga 92: Riga 92:
=== Utenti e gruppi proprietari ===
=== Utenti e gruppi proprietari ===


Per impostazione predefinita sshfs adotta un'associazione "diretta" tra UID/GID della macchina remota e quella locale, il che significa per esempio che se il proprietario di un certo file sulla macchina remota è l'utente con UID 1002 anche in locale la proprietà del file sarà attribuita all'utente avente UID 1002. Potrebbero dunque sorgere problemi di permessi se su macchina remota e locale non sussiste un esatta corripondenza utenti/uid e gruppi/gid. Un modo veloce per superare tale problema è specificare lo UID/GID durante il comando per montare le risorse remote, per esempio
Per impostazione predefinita sshfs adotta un'associazione "diretta" tra [[UID]]/[[GID]] della macchina remota e quella locale, il che significa per esempio che se il proprietario di un certo file sulla macchina remota è l'utente con UID 1002 anche in locale la proprietà del file sarà attribuita all'utente avente UID 1002. Potrebbero dunque sorgere problemi di permessi se su macchina remota e locale non sussiste un esatta corrispondenza utenti/UID e gruppi/GID. Un modo veloce per superare tale problema è specificare lo UID/GID durante il comando per montare le risorse remote, per esempio


<pre># sshfs user@host:/dir/to/mount /mnt/sshdir -o allow_other,idmap=user,uid=1001</pre>
<pre># sshfs user@host:/dir/to/mount /mnt/sshdir -o allow_other,idmap=user,uid=1001</pre>


fa sì che all'utenza usata per connettersi al server remoto sia associata in locale l'utenza avente uid 1001. Se si ha la necessità di fissare la corrispondenza di più utenze/gruppi è possibile creare degli appositi file di mappatura (si veda il manuale di sshfs).
fa sì che all'utenza usata per connettersi al server remoto sia associata in locale l'utenza avente UID 1001. Se si ha la necessità di fissare la corrispondenza di più utenze/gruppi è possibile creare degli appositi file di mappatura (si veda il manuale di sshfs).


Inoltre, per permettere l'accesso anche ad altri utenti (indipendentemente dai permessi associati ai file), è stata aggiunta l'opzione: <code>-o allow_other</code>
Inoltre, per permettere l'accesso anche ad altri utenti (indipendentemente dai permessi associati ai file), è stata aggiunta l'opzione: <code>-o allow_other</code>
Riga 102: Riga 102:
== FAQ ed Errori Frequenti ==
== FAQ ed Errori Frequenti ==
=== failed to open <code>/dev/fuse</code>: No such file or directory ===
=== failed to open <code>/dev/fuse</code>: No such file or directory ===
L'errore è dovuto alla mancanza del modulo del kernel relativo a ''fusefs''. È necessario compilarlo come modulo o staticamente (nei kernel pacchettizzati Debian è presente, ed è caricabile con un:
L'errore è dovuto alla mancanza del modulo del kernel relativo a ''fusefs''. È necessario compilarlo come modulo o staticamente. Nei kernel pacchettizzati Debian è presente, ed è caricabile con un:
<pre>
<pre>
# modprobe fuse
# modprobe fuse
Riga 125: Riga 125:


-->
-->
=== Collegamenti esterni ===
[1] [http://fuse.sourceforge.net/ FUSE]
{{Autori
{{Autori
|Autore = [[Utente:MaXeR|MaXeR]]
|Autore = [[Utente:MaXeR|MaXeR]]
6 999

contributi