Samba + Windows: consentire connessioni multiple da utenti diversi?


23

Ho una macchina che esegue Ubuntu con Samba che uso per condividere cose con le macchine Windows della mia famiglia nella nostra rete locale. Attualmente accedono a una condivisione per film / musica / ecc. Con un utente.

Voglio collegarli a un'altra condivisione come utente diverso (ad esempio, l'utente "goytacaz").

Quando provo a collegarmi a questa nuova condivisione, Windows mi dà "Errore 1219" e si lamenta di più connessioni dello stesso utente.

Come posso fare in modo che la mia macchina accetti più connessioni dallo stesso utente?


Stai solo cercando di connetterti utilizzando Samba? Samba supporta già questo AFAIK.
pesante

Risposte:


24

Oltre Samba? Non dovrebbero esserci problemi; a condizione che nome utente e password siano corretti, entrambe le connessioni dovrebbero avvenire correttamente.

Aggiornamento: re: "Errore 1219". Questo è un errore sul lato client: Windows ti consente di collegarti a un server solo come un utente alla volta. (Consultare la documentazione Microsoft su KB938120 .) Ciò significa che il computer Windows si è già connesso come un altro utente e quindi i tentativi di riconnettersi, come l'utente corretto, non riescono.

È necessario disconnettere la prima connessione prima di poter riconnettere. Due modi che conosco per farlo:

  • Scollegare tutte le unità di rete di riconnessione all'accesso da quel server. Reboot. Riconnettiti al server e assicurati di fornire il nome utente e la password corretti.

  • Utilizzare il comando net use / delete dalla shell dei comandi di Windows (Start -> Esegui -> cmd; al prompt digitare il comando; potrebbe essere necessario specificare un nome di condivisione).

Aggiornamento 2: se gli utenti si stanno già connettendo al server con un utente, non sarai in grado di consentire loro di connettersi con un secondo utente. Dovrai riconsiderare la tua strategia di condivisione e riconfigurare Samba per seguire quella strategia. (Non è colpa tua; incolpo Windows.)

Personalmente, resterei fedele ai singoli utenti per ogni persona e prenderei in considerazione l'utilizzo di gruppi per controllare l'accesso alle condivisioni. Funziona bene se si dispone di alcune condivisioni alle quali si desidera che tutti abbiano accesso in lettura e scrittura e altre a cui si desidera essere di sola lettura per tutti tranne pochi utenti selezionati.

Aggiornamento 3: il documento MS collegato sopra offre queste due soluzioni alternative per consentire la connessione al server come utenti separati. L'idea generale è, far pensare a Windows che si sta collegando a un server diverso usando un nome diverso .

  1. Utilizzare l'indirizzo IP del server quando ci si connette con il secondo nome utente. (Utilizzare \\ServerName\sharenameper la connessione come primo utente, ma utilizzare \\X.X.X.X\sharenameper la connessione come secondo utente.)

  2. Crea uno o più alias DNS da utilizzare per il server quando ti connetti con il secondo (, terzo, quarto ...) nome utente. (Utilizzare \\ServerName\sharenameper la connessione come primo utente, ma utilizzare \\ServerAlias1\sharenameper la connessione come secondo utente, \\ServerAlias2\sharenameper la connessione come terzo utente, ecc.)


1
Grazie per questa risposta Ho avuto lo stesso problema e la connessione utilizzando l'indirizzo IP del server anziché il nome DNS ha funzionato per me per la seconda connessione.
Ben Torell,

10

Questa è una soluzione per Windows 7 (anche se potrebbe funzionare anche per altre versioni)

  1. apri il Blocco note (o qualsiasi editor di testo) come amministratore
    (devi fare clic con il pulsante destro del mouse e dire "esegui come amministratore")

  2. trova: c: \ WINDOWS \ system32 \ drivers \ etc \ hosts (dovrai mostrare tutti i file non solo .txt)

Ora, se cioè:
- hai 3 utenti di samba: tom fred jon
- 3 condivisioni di samba sul tuo server di samba (cioè IP: 192.168.0.100): documenti roba di documenti
- vuoi connetterti come tom a documenti, come fred a cose e come jon alle foto

Ora aggiungi le seguenti righe al file hosts :

192.168.0.100   tomsdocs   tomsdocs
192.168.0.100   fredstuff  fredstuff
192.168.0.100   jonspics   jonspics

Una volta chiuso e salvato puoi "Mappare un'unità di rete" in questo modo:

\\tomsdocs\docs as user tom
\\fredstuff\stuff as user fred
\\jonspics\pics as user jon

Nota che i nomi sopra sono totalmente a te ... Qualunque cosa tu inserisca nel file hosts, dovrai creare quello che chiami il server quando mapperai l'unità di rete.

Il motivo per cui funziona è perché Windows deve pensare che si stia collegando a server diversi. Probabilmente, potresti anche configurare il tuo server DNS di casa, ma preferisco falsificare un sacco di voci nel file hosts (che viene valutato prima che il tuo computer Windows chieda aiuto al DNS).
Poiché l'intero problema è un problema di Windows lato client, preferisco farlo in questo modo.

Spero che sia di aiuto.


Questo ha funzionato come un fascino! Giocherellò per un'ora con la condivisione di samba sul server finché non ho trovato questo - Grazie :)
Lorem Monkey

Grazie per questo. Odio dover aggirare la nuova schifezza che Microsoft emette, ma è elegante se non sciocco ... funziona alla grande!
SuperJames,

1
Curioso, i doppi nomi sono un errore di battitura? Perché dovresti usare gli stessi due volte esatte per lo stesso IP?
brezanac,

8

Se si preferisce non giocherellare con ciascun client per risolvere un problema del server, è possibile utilizzare il file smb.conf per impostare gli alias dei nomi per il server. Questo ha l'ulteriore vantaggio di ogni alias che appare come server distinto nella rete Windows.

Modifica il tuo file smb.conf e aggiungi la seguente voce nella sezione [globale]:

[global]
...
netbios aliases = alias1 alias2 readonly


Dopo un riavvio di samba (ricordati di riavviare smbd AND nmbd!) Dovresti essere in grado di accedere ai nuovi alias del server usando la notazione UNC in Windows Explorer.
Nota che potrebbe volerci un po 'di tempo, sul mio sito circa 1 minuto dopo il riavvio di samba, perché funzionino.
Una volta che gli alias vengono visualizzati nella rete Windows, sei sicuramente pronto per partire.


2

stavo solo avendo lo stesso problema.

per un utente che uso: \ 192.168.xx <- IP del server ubuntu per l'altro utente: \ server-name <- nome host del server ubuntu.

questo mi ha permesso di connettermi con un computer Windows usando diversi accessi.



1

Usa l'opzione netbios alias samba:

netbios name = share1
netbios aliases = share2

windows "vedrà" 2 diversi server samba ed è possibile connettersi a entrambi condividendo con autenticazione utente diversa

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.