Disconnessione / disconnessione dalla condivisione di rete di Windows senza riavviare il servizio Workstation


14

Ho un file server in esecuzione (SMB) a cui mi sono connesso in Explorer (Windows 7 Professional) visitando direttamente \\ 1.2.3.4. Ho effettuato l'accesso come un utente, senza salvare le credenziali, e ora desidero disconnettermi (in realtà voglio passare a un altro utente, ma essere in grado di disconnettersi in generale sarebbe utile).

Ho cercato i modi per farlo e ho trovato un sacco di informazioni che suggeriscono di usare una qualche forma di net use \\1.2.3.4 /del:

Tuttavia, nessuno di questi sembrava effettivamente funzionare per me. Corro net use * /del, quindi uso net useper verificare che l'elenco sia vuoto, eppure la condivisione rimanga misteriosamente in explorer, inalterata, accessibile e ancora usando il login precedente.

Un'altra cosa che ho provato, che ha fallito, è stata ad esempio quella net use \\1.2.3.4 /user:newusernamedi cambiare le credenziali. Tuttavia, anche quando è stato net usevisualizzato un elenco di connessioni vuoto , ciò ha comunque prodotto un errore che indicava che non erano consentite connessioni multiple alla stessa risorsa con utenti diversi: il motivo per cui c'erano connessioni che non venivano visualizzate net usenell'elenco è un mistero per me.

Ho quindi trovato questo articolo Come disconnettersi dalla cartella condivisa (microsoft.com), che consiglia:

  1. net use * /del (o qualunque server).
  2. Cancella credenziali da Gestione credenziali.
  3. Riavviare il servizio Workstation.

Questa procedura ha funzionato per me. Non c'era nulla di interessante in Credential Manager, poiché non avevo salvato le credenziali, tuttavia il riavvio del servizio Workstation dopo aver cancellato le connessioni netera la chiave (ho dovuto chiudere tutte le finestre di Explorer per riavviare il servizio).

La mia domanda è: non è affatto conveniente, soprattutto quando devo spiegarlo a utenti meno esperti di tecnologia. Mentre potrei certamente creare, ad esempio, uno script batch per automatizzare il tutto, esiste un modo effettivo, corretto e coerente per farlo che non comporta il riavvio dei servizi (e forse non coinvolge la riga di comando, anche se personalmente non non importa)?

Inoltre, una sottointerrogazione: è strano per me che la stragrande maggioranza delle risorse che ho trovato su questo argomento non suggerisse di riavviare Workstation e il processo suggerito di utilizzare net useda solo sembrava funzionare almeno per le altre persone che hanno pubblicato commenti su quei post. Il riavvio della Workstation è unico per me e indica qualche altro problema sulla mia macchina o è stato semplicemente lasciato fuori da tutte le istruzioni per qualche motivo? Solo il post di supporto di microsoft.com aveva istruzioni che raccomandavano questo passaggio, che è ciò che alla fine ha funzionato per me.

Disconnettersi da una condivisione sembra che sarebbe un caso d'uso abbastanza comune da giustificare un modo semplice per farlo, quindi sono sconcertato da quanto sia stato difficile per me capirlo.


Altre cose che ho provato senza effetto:

  • Chiudere tutte le finestre di Explorer prima e dopo aver usato i net usecomandi (come suggerito nella risposta di Kody Browns ), così come fallire con le impostazioni "finestra processo separata per cartella" sperando che fosse una sorta di cache credenziale per processo (ispirata anche da quella risposta) .
  • Modifica delle impostazioni di gestione delle connessioni del gruppo home (suggerito dalla risposta di holmzi_online al precedente post microsoft.com).
  • Uccidere tutti i processi di Explorer (incluso quello principale) e riavviare Explorer dopo net use * /del(suggerito da Robert Greer qui , sebbene quel problema riguardasse le unità mappate).


1
@sttr Grazie, ma non sono sicuro di vedere la connessione tra questo e quell'articolo. Puoi dare un suggerimento?
Jason C,

Indica che in modalità ABE ogni utente vede solo le cartelle e i file a cui ha diritto. Altrimenti, l'utente deve essere autosufficiente per accedere alle risorse e senza la necessità di inserire una password. Se il "server" è Windows 7, guarda slickit.ca/2009/07/webdav-on-windows-7.html
STTR

1
@STTR Grazie. In che modo nascondere le cartelle da utenti non autorizzati o configurare un server WebDAV aiuta a disconnettersi da una condivisione SMB a cui si accede digitando \\ indirizzo?
Jason C,

1
@STTR La domanda è, come suggerisce il titolo, come disconnettersi da una cartella condivisa (SMB, che è ciò che Windows utilizza per le "cartelle condivise") senza riavviare il servizio Workstation (vedi anche "Ho effettuato l'accesso come un utente, senza salvare le credenziali e ora desidera disconnettersi " ). Non sto aggiungendo WebDAV ai miei server, né posso aggiungere servizi WebDAV a server sui quali non ho alcun controllo, né sono chiaro su come ciò risolva il problema della disconnessione in modo conveniente. Sai come uscire da una cartella condivisa?
Jason C,

Risposte:


1

2) Non sei solo in questo numero. Molte persone probabilmente non lo sperimentano mai perché hanno solo un utente e / o più utenti ma tutti con la stessa password. Mi sembra di sperimentarlo tutto il tempo. Suppongo che sia perché ho lo stesso nome utente su più computer ma con password diverse .. (Non sono in un dominio; il laptop è Windows 8.1 con server basati su Windows e Linux ..)

(dalla memoria) Se apro la condivisione principale di un computer, come \ raspi, prima di accedere a una condivisione bloccata come \ raspi \ private avrò quel problema. Sembra che prima venga stabilita una connessione utilizzando la condivisione pubblica / aperta, quindi viene memorizzata.

Per quanto riguarda 1), ho solo bisogno di chiudere le finestre di Explorer e (a volte prompt dei comandi) che hanno avuto accesso a quella condivisione. Non ho mai dovuto riavviare il servizio workstation.

Ma potrebbe funzionare per me perché dico sempre a Windows di "avviare le finestre delle cartelle in un processo separato".

Solo un pensiero..


Grazie!! Speravo davvero che il tuo suggerimento di chiudere le finestre di Explorer fosse la soluzione semplice (ho anche processi separati per finestre delle cartelle), forse alcune credenziali memorizzate nella cache per processo. Sfortunatamente, questo non ha funzionato, né disabilitato processi separati per finestra. Inoltre non ho riscontrato alcun cambiamento nel comportamento se ho provato ad accedere prima a \\ 1.2.3.4 \ Share anziché al root (anche se non c'è differenza nell'accesso tramite il nome host piuttosto che IP). Inoltre non sono in un dominio e utilizzo server basati su Windows e Linux. Qualcosa sta salvando credenziali o connessioni, ma non so cosa.
Jason C,

Un altro punto dati: indipendentemente dalle impostazioni del processo per cartella, anche l'uccisione di tutti i processi di Explorer (incluso quello principale) e il riavvio di Explorer non hanno avuto alcun effetto, il che mi ha sorpreso.
Jason C

Sto per giocare un po 'con il mio ambiente per testarlo di più, e ho pensato ... le tue finestre (esploratore, prompt dei comandi, ecc.) Sono tutte elevate o no, giusto? Sono stato frustrato molte volte quando non ho realizzato o dimenticato che una delle mie app era elevata .. Fa alcune cose strane alle condivisioni di rete ...
Kody Brown

L'account che ho usato è un amministratore e tutto è elevato. Ho creato un nuovo account non amministratore e testato da lì, il comportamento è invariato.
Jason C

1

Ho funzionato nel modo seguente:

  1. Correre net use * /delete
  2. Cancella le credenziali (ad esempio, la mia è 172.26.190.129 e la data di creazione è oggi, solo)
  3. Disabilita "local connect" (Pannello di controllo \ Networking e Internet \ Net Connect \ Local Connect)
  4. Aspetta un momento (non so perché, ma penso che potrebbe interrompere alcuni collegamenti dal mio Win7 a Ubuntu e potrebbe cancellare un po 'di cache)
  5. Abilita "connessione locale" e ha funzionato ..

2
Cosa intendi con "Cancella le credenziali" e come lo fai?
Calimo,

"Cancella le credenziali" non è del tutto chiaro qui.
Jonathan Wood,

0

Potrebbe essere un colpo lungo, ma hai aspettato abbastanza tempo dopo l'uso net use * /d? Per quanto ne so, anche dopo aver eliminato la condivisione, Windows mantiene aperta la sessione in presenza di handle aperti (finestra Explorer, ecc.). E anche dopo aver chiuso quelle maniglie, c'è un periodo di timeout durante il quale riconnetterà la condivisione. L'impostazione predefinita sembra essere 10-15 minuti. Puoi accorciarlo nel registro.

Vedi https://blogs.msdn.microsoft.com/oldnewthing/20110223-00/?p=11413

Tuttavia, sembra che "KeepConn" non sia più utilizzato nelle versioni più recenti di Windows. Vedi "Timer connessione inattivo" in questa pagina: http://blogs.msdn.com/b/openspecification/archive/2013/03/19/cifs-and-smb-timeouts-in-windows.aspx


0

Start -> Pannello di controllo -> Account utente e sicurezza della famiglia -> Account utente -> Gestisci le tue credenziali.

Espandi una delle tue "Credenziali di Windows", quindi fai clic su "Rimuovi dal vault".

Start -> Pannello di controllo

Pannello di controllo -> Account utente e sicurezza della famiglia

Account utente e sicurezza della famiglia -> Account utente

Account utente -> Gestisci le tue credenziali

Disconnettersi

sì


-1
net use * /del
net stop Workstation /Y
cmdkey /delete:<resourcename>
net start Workstation
net start browser

Modo 2: utilizzare più nomi NetBIOS per un computer:

reg add "HKLM\System\CurrentControlSet\Services\LanmanServer\Parameters" /v OptionalNames /t REG_MULTI_SZ /d "NetBIOSName01\0 NetBIOSName02\0 NetBIOSName03\0"

Quindi è possibile connettere le risorse di utenti diversi utilizzando nomi NetBIOS diversi.

net use L: \\NetBIOSName01 /user:<username01> <password01> /P:Yes
net use M: \\NetBIOSName02 /user:<username02> <password02> /P:Yes
net use N: \\NetBIOSName03 /user:<username03> <password03> /P:Yes

Modifica %windir%\system32\drivers\etc\lmhostse aggiungi

<Server IP>  NetBIOSName01            #PRE
<Server IP>  NetBIOSName02            #PRE
<Server IP>  NetBIOSName03            #PRE
<Server IP>  <OriginalNetBIOSname>            #PRE

in tutte le workstation di rete

Tutti gli utenti si collegheranno alle sue risorse.


Come da titolo della domanda, questo non risponde alla domanda.
Daniel B,

Grazie, ma questo riavvia il servizio Workstation. L'ho menzionato nella domanda, ma so già che posso automatizzare il riavvio con uno script. In realtà, ho pubblicato all'incirca lo stesso set di comandi su superuser.com/a/883606/245945 . Quello che sto effettivamente cercando è dettagliato dove ho scritto "domanda" e "sotto-domanda" in grassetto nel mio post.
Jason C,

@JasonC La causa originale di tutte queste azioni Errore di sistema 1219?
STTR,

@STTR La causa originale è il desiderio di disconnettersi senza riavviare i servizi. I risultati dei miei tentativi sono descritti nel mio post.
Jason C,

@STTR Grazie. L'aggiornamento è interessante e apprezzo il tuo tempo, ma non sono chiaro sulla connessione. Non sto cercando di mappare le unità o accedere con più utenti contemporaneamente. Sto semplicemente cercando di disconnettermi da una condivisione a cui si accedeva originariamente andando direttamente all'indirizzo \\. Non è nemmeno necessario che cambi utente. Forse mi sto allontanando dal computer e non voglio lasciare la condivisione registrata. In che modo l'accesso come più utenti su più unità condivise aiuta a disconnettersi da una cartella condivisa senza riavviare i servizi?
Jason C
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.