Qual è il modo più semplice per montare la condivisione Windows come cartella locale nella home directory?


26

Tramite Gnome Nautilus posso facilmente montare condivisioni Samba dal mio Ubuntu Server. Tuttavia, questi "supporti" sono un po 'falsi. Molte applicazioni che eseguo non riconoscono che Gnome ha montato queste cartelle del server e quindi non può aprire i file dal mio server.

In passato ho creato una /etc/fstab voce e li ho montati a livello globale , la /mntcartella, ma questo non funzionerà poiché altre persone condividono il mio laptop Ubuntu.

Qual è il modo più semplice per creare una "vera" montatura per samba nella mia directory home (e di altre persone)? Va bene se è un comando o un'applicazione GUI che può essere eseguita quando eseguo l'accesso. Queste cartelle del server non devono essere montate continuamente.


Perché dovresti usare Samba per accedere ai file sul tuo server Linux ? Samba è pensato per accedere a condivisioni e servizi di rete Windows .
kynan,

1
Perché NFS è un problema da configurare sul server e ancora più difficile far funzionare i client Windows. Idem con sshfs e altri.
HDave il

sshfs non richiede alcuna installazione sul server se non quella in sshdesecuzione, di cui avrete comunque bisogno. Quindi anche se avessi samba in esecuzione per servire client Windows non lo userei per client Linux. Per inciso dokan è un brillante client sshfs per Windows che è facile da configurare.
kynan,

Ho installato sshfs su Windows ... funziona bene. Ma perché modificare un sacco di macchine Windows / Mac quando il server Samba funziona così bene ed è così facile da configurare?
HDaveva il

Samba è certamente un'opzione sensata per servire file su client Windows / Mac. Solo che non penso sia necessario quando si servono solo client Linux, ed è così che ho letto la tua domanda.
kynan,

Risposte:


27

Supponiamo di avere una directory chiamata mountsnella home directory in cui si desidera montare varie condivisioni Samba. Supponiamo inoltre che tu sia specificamente interessato a montare una condivisione chiamata sharenameda un computer remoto chiamato hostname(questo potrebbe anche essere un indirizzo IP) e su quel computer remoto il tuo nome utente username. Innanzitutto, crea il punto di montaggio:

mkdir ~/mounts/sharename

Quindi montare la condivisione:

sudo mount.cifs //hostname/sharename ~/mounts/sharename -o user=username

In Ubuntu 12.04 LTS e precedenti, se non si dispone del mount.cifscomando, è possibile installare il pacchetto cifs-utilsInstalla cifs-utils o utilizzare smbmountinvece (che, a sua volta, è fornito dal pacchetto smbfsInstalla smbfs ).

sudo smbmount //hostname/sharename ~/mounts/sharename -o user=username

( nonsmbmount è disponibile in Ubuntu 12.10 o versioni successive, almeno finora , ma è possibile utilizzarlo mount.cifs. Grazie a HDave per averlo sottolineato .)

È possibile che venga richiesta la password sul computer locale per eseguire il comando come root. Quindi ti verrà richiesta la password sul computer remoto, per accedere in modo da poter montare la condivisione.


Ho dovuto fare un sudo apt-get install smbfsprimo però.
HDave

Anche necessario sudo apt-get install smbfsprima. Quindi la montatura ha funzionato correttamente dalla mia parte. Si noti che ho sostituito il nome host con l'indirizzo IP del server. (Il server è un box WinXP) Non so perché il nome del computer del box XP non ha funzionato per me. GRAZIE RAGAZZI!
Logi

Questo è ora rotto in 12.10. Trova il bug e la soluzione alternativa qui: bugs.launchpad.net/ubuntu/+source/cifs-utils/+bug/1095294
HDave

Ricevo: errore di montaggio (12): impossibile allocare memoria (Dicono che ho bisogno di hack del registro, ma non ho accesso al lato Windows ...)
Calmarius

@HDave Grazie, ho aggiornato la mia risposta. Da quando ho usato smbmountoriginariamente (e non mount -t smbfs), ho usato mount.cifsora (piuttosto che mount -t cifs) nel mantenere il mio stile originale. mount -t cifsovviamente funzionerà comunque (come lo sarà mount -t smbfsil 12.04 e precedenti).
Eliah Kagan,

4
  • Apri il tuo file manager, ovvero fai clic sull'icona della cartella Home
  • Osservare nella parte superiore dello schermo è il menu per il File Manager (al contrario nella parte superiore della sua finestra);
  • Fare clic su FileConnetti al server ... ; dovrebbe aprirsi una finestra intitolata Connetti al server
  • Fare clic nella casella a discesa denominata Tipo ; scegli la condivisione di Windows (ovvero modifica dal valore predefinito di FTP pubblico)
  • Immettere il server (il nome se può essere risolto dal DNS o dal suo indirizzo IP
  • Inserisci la condivisione (ovvero gli elementi che altrimenti vedresti in una condivisione Windows come componente Condividi di '\\ Server \ Condividi')
  • Inserisci in Cartella il nome di qualsiasi directory specifica sulla condivisione in cui desideri posizionare la montatura
  • Immettere uno / Dettagli utente opzionali
  • La condivisione deve essere montata e visualizzata nella finestra File Manager nell'elenco a sinistra in Rete
  • Potresti quindi creare un segnalibro per quella montatura. Ancora una volta, dal menu File Manager nella parte superiore dello schermo: Segnalibri → Aggiungi segnalibro (dopo aver prima cliccato / evidenziato la condivisione che hai appena montato).

1
Fare questo tramite Nautilus è ciò che intendevo con il montaggio essendo un mount "falso". Questo "mount" è riconosciuto solo da una manciata di applicazioni Gnome. Prova ad andare da una riga di comando e fai un "ls", oppure prova ad aprire un file sul mount da VLC o da altre app che non usano la finestra di dialogo del file Gnome e scoprirai che i tuoi mount non sono lì.
HDave

2
@HDave ha lsfunzionato per me. cd ~/.gvfsallora lse ci dovrebbe essere il supporto. Puoi link simbolico a dove vuoi da lì.
Espiazione limitata

Questo è corretto, ma non saranno presenti al primo accesso. Devi prima cercarli in Nautilus, il che è imbarazzante.
HDave

3

Non sono sicuro se stai ancora cercando qualcosa di facile, l'ho appena trovato:

Tutte le condivisioni che hai aperto vengono montate automaticamente nella cartella principale in /home/.gvfs.

Qualsiasi applicazione può riconoscere e accedere alle condivisioni come se fossero normali cartelle, purché si punti l'applicazione ai file o alle cartelle in cui si desidera /home/.gvfs


1

Perché dovresti usare Samba per accedere ai file sul tuo server Linux ? Samba è pensato per accedere a condivisioni e servizi di rete Windows .

Usa sshfs invece, non è necessario alcun setup e ottieni punti di montaggio "corretti" riconosciuti da qualsiasi applicazione:

sudo apt-get install sshfs

Montare il filesystem remoto con

sshfs user@host:/path /local/mount/point

e smontare con

fusermount -u /local/mount/point

Perché hai altri client Windows sulla tua LAN. E sì, possono anche usare sshfs, ma Samba funziona alla grande ed è semplicemente più facile dappertutto.
HDave

Abbastanza giusto, questo non diventa chiaro dalla tua domanda però. Inoltre, nulla ti impedisce di accedere al tuo server Linux tramite SSHFS da Linux e tramite Samba da Windows / Mac. Puoi persino accedere alla stessa condivisione in più modi.
kynan,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.