Trennen / Abmelden von der Windows-Netzwerkfreigabe, ohne den Workstation-Dienst neu zu starten


14

Ich habe einen Dateiserver (SMB), mit dem ich im Explorer (Windows 7 Professional) eine Verbindung hergestellt habe, indem ich \\ 1.2.3.4 direkt aufgerufen habe. Ich habe mich als ein Benutzer angemeldet, ohne Anmeldeinformationen zu speichern, und möchte mich jetzt abmelden (eigentlich möchte ich zu einem anderen Benutzer wechseln, aber es wäre nützlich, wenn ich mich generell abmelden könnte).

Ich habe nach Möglichkeiten gesucht, dies zu tun, und eine Reihe von Informationen gefunden, die die Verwendung einer Form von net use \\1.2.3.4 /del:

Keines davon schien jedoch für mich zu funktionieren. Ich starte net use * /delund net useüberprüfe dann , ob die Liste leer ist, und dennoch bleibt die Freigabe auf mysteriöse Weise im Explorer, unberührt, zugänglich und verwendet weiterhin die vorherige Anmeldung.

Eine andere Sache, die ich versuchte, die ebenfalls fehlschlug, war z. B. net use \\1.2.3.4 /user:newusernamedas Ändern der Anmeldeinformationen. Doch selbst wenn net useeine leere Verbindungsliste zeigt , dies immer noch einen Fehler , der besagt , dass mehrere Verbindungen zu derselben Ressource mit verschiedenen Benutzern hergestellt waren nicht erlaubt - warum es Verbindungen waren , die nicht in aufkreuzen net use‚s Liste ist mir ein Rätsel.

Ich habe dann diesen Artikel zum Abmelden von einem freigegebenen Ordner (microsoft.com) gefunden, in dem Folgendes empfohlen wird:

  1. net use * /del (oder welcher Server auch immer).
  2. Löschen Sie die Anmeldeinformationen aus dem Credential Manager.
  3. Starten Sie den Workstation-Dienst neu.

Dieses Verfahren hat bei mir funktioniert. Der Anmeldeinformations-Manager war nicht von Interesse, da ich keine Anmeldeinformationen gespeichert habe. Der Neustart des Workstation-Dienstes nach dem Löschen der Verbindungen mit netwar jedoch der Schlüssel (ich musste alle Explorer-Fenster schließen, um den Dienst neu zu starten).

Meine Frage ist: Dies ist überhaupt nicht sehr praktisch, insbesondere wenn ich es weniger technisch versierten Benutzern erklären muss. Ich könnte zwar z. B. ein Batch-Skript erstellen, um das Ganze zu automatisieren, aber es gibt eine tatsächliche, ordnungsgemäße und konsistente Methode, bei der die Dienste nicht neu gestartet werden (und möglicherweise auch nicht die Befehlszeile, obwohl ich persönlich keine habe). t mind)?

Außerdem eine Unterfrage: Es ist seltsam für mich, dass die überwiegende Mehrheit der Ressourcen, die ich in dieser Angelegenheit gefunden habe, keinen Neustart von Workstation vorschlug, und der vorgeschlagene Prozess der net usealleinigen Verwendung schien zumindest für die anderen Personen zu funktionieren, die Kommentare zu gepostet haben diese Beiträge. Ist der Neustart der Workstation für mich einzigartig und weist auf ein anderes Problem auf meinem Computer hin, oder wurde er aus irgendeinem Grund einfach aus allen Anweisungen herausgelassen? Nur der Support-Beitrag von microsoft.com enthielt Anweisungen, die diesen Schritt empfahlen, was ihn schließlich zum Laufen brachte.

Das Abmelden von einer Freigabe scheint ein häufig genug verwendeter Anwendungsfall zu sein, um einen einfachen Weg zu rechtfertigen. Daher bin ich verblüfft darüber, wie schwierig es für mich war, dies herauszufinden.


Andere Dinge, die ich ohne Wirkung versucht habe:

  • Schließen aller Explorer-Fenster vor und nach der Verwendung von net useBefehlen (wie in der Antwort von Kody Browns vorgeschlagen ) sowie Fumming mit den Einstellungen für "Fenster pro Ordner separat", in der Hoffnung, dass es sich um eine Art Caching von Anmeldeinformationen pro Prozess handelt (ebenfalls inspiriert von dieser Antwort) .
  • Ändern der Einstellungen für das Verbindungsmanagement für Heimnetzgruppen (vorgeschlagen durch die Antwort von holmzi_online im obigen Beitrag auf microsoft.com).
  • Beenden aller Explorer-Prozesse (einschließlich des Hauptprozesses) und Neustarten des Explorers nach net use * /del(hier von Robert Greer vorgeschlagen , obwohl dieses Problem bei zugeordneten Laufwerken lag).


1
@sttr Danke, aber ich bin mir nicht sicher, ob ich den Zusammenhang zwischen diesem und jenem Artikel sehe. Können Sie einen Hinweis geben?
Jason C

Hinweis in diesem Modus ABE Jeder Benutzer sieht nur die Ordner und Dateien, die ihm zustehen. Andernfalls muss der Benutzer autark sein, um auf die Ressourcen zugreifen zu können, ohne ein Kennwort eingeben zu müssen. Wenn der "Server" Windows 7 ist, dann schauen Sie slickit.ca/2009/07/webdav-on-windows-7.html
STTR

1
@ STTR Danke. Wie hilft das Ausblenden von Ordnern vor nicht autorisierten Benutzern oder das Einrichten eines WebDAV-Servers beim Abmelden von einer SMB-Freigabe, auf die durch Eingabe von \\ Adresse zugegriffen wird?
Jason C

1
@STTR Die Frage ist, wie der Titel andeutet, wie Sie sich von einem freigegebenen Ordner abmelden können (SMB, wie Windows es für "freigegebene Ordner" verwendet)), ohne den Workstation-Dienst neu zu starten (siehe auch "Ich habe mich als ein Benutzer angemeldet". ohne Anmeldeinformationen zu speichern und möchte sich jetzt abmelden " ). Ich füge meinen Servern weder WebDAV hinzu, noch kann ich Servern, über die ich keine Kontrolle habe, WebDAV-Dienste hinzufügen, noch ist mir klar, wie dies das Problem der bequemen Abmeldung löst. Wissen Sie, wie Sie sich von einem freigegebenen Ordner abmelden können?
Jason C

Antworten:


1

2) Sie sind in dieser Ausgabe nicht allein. Die meisten Menschen erleben es wahrscheinlich nie, weil sie nur einen Benutzer und / oder mehrere Benutzer haben, aber alle mit demselben Passwort. Ich scheine es die ganze Zeit zu erleben. Ich gehe davon aus, dass ich auf mehreren Computern denselben Benutzernamen habe, aber unterschiedliche Kennwörter habe. (Ich bin nicht in einer Domäne; Laptop ist Windows 8.1 mit Windows- und Linux-basierten Servern.)

(aus dem Speicher) Wenn ich die Stammfreigabe eines Computers wie \ raspi öffne, bevor ich auf eine gesperrte Freigabe wie \ raspi \ private zugreife, tritt dieses Problem auf. Es scheint, dass eine Verbindung zuerst über die öffentliche / offene Freigabe hergestellt und dann gespeichert wird.

Zu 1) muss ich nur die Explorer-Fenster und (manchmal Eingabeaufforderungen) schließen, die auf diese Freigabe zugegriffen haben. Ich musste den Workstation-Dienst nie neu starten.

Aber es kann für mich funktionieren, weil ich Windows immer anweise, "Ordnerfenster in einem separaten Prozess zu starten".

Nur ein Gedanke..


Vielen Dank!! Ich hatte wirklich gehofft, Ihr Vorschlag, die Explorer-Fenster zu schließen, wäre die einfache Lösung (ich habe auch separate Prozesse pro Ordnerfenster), möglicherweise einige pro Prozess zwischengespeicherte Anmeldeinformationen. Leider hat dies weder den Trick getan noch separate Prozesse pro Fenster deaktiviert. Ich habe auch keine Verhaltensänderung festgestellt, wenn ich versucht habe, zuerst auf \\ 1.2.3.4 \ Share anstatt auf das Stammverzeichnis zuzugreifen (auch kein Unterschied beim Zugriff nach Hostname anstelle von IP). Ich bin auch nicht in einer Domäne und verwende Windows- und Linux-basierte Server. Etwas speichert Anmeldeinformationen oder Verbindungen, aber ich weiß nicht was.
Jason C

Ein weiterer Datenpunkt: Unabhängig von den Einstellungen für den Prozess pro Ordner hatte das Beenden aller Explorer-Prozesse (einschließlich des Hauptprozesses) und das Neustarten des Explorers ebenfalls keine Auswirkungen, was mich überraschte.
Jason C

Ich bin dabei, ein wenig mit meiner Umgebung herumzuspielen, um dies genauer zu testen, und hatte einen Gedanken. Ihre Fenster (Explorer, Eingabeaufforderung usw.) sind alle erhöht oder nicht, oder? Ich war viele Male frustriert, als ich nicht merkte oder vergaß, dass eine meiner Apps erhöht war. Es macht einige seltsame Dinge mit Netzwerkfreigaben ...
Kody Brown

Das Konto, das ich verwendet habe, ist ein Administrator und alles ist erhöht. Ich habe ein neues Nicht-Administrator-Konto erstellt und von dort aus getestet, dass das Verhalten unverändert bleibt.
Jason C

1

Ich habe es funktioniert, indem ich Folgendes getan habe:

  1. Lauf net use * /delete
  2. Löschen Sie die Anmeldeinformationen (z. B. meine ist 172.26.190.129, und das Erstellungsdatum ist heute, genau das)
  3. Deaktivieren Sie "Lokale Verbindung" (Systemsteuerung \ Netzwerk und Internet \ Net Connect \ Local Connect).
  4. Warten Sie einen Moment (ich weiß nicht warum, aber ich denke, es kann einige Links von meinem Win7 zu Ubuntu unterbrechen und einen Cache leeren)
  5. Aktivieren Sie "local connect" und es hat funktioniert ..

2
Was meinst du mit "Anmeldeinformationen löschen" und wie machst du das?
Calimo

"Clear the credentials" ist hier völlig unklar.
Jonathan Wood

0

Dies mag ein langer Schuss sein, aber haben Sie nach der Verwendung lange genug gewartet net use * /d? Soweit ich weiß, hält Windows die Sitzung auch nach dem Löschen der Freigabe geöffnet, wenn offene Handles vorhanden sind (Explorer-Fenster usw.). Und selbst nach dem Schließen dieser Handles gibt es eine Zeitüberschreitung, in der die Freigabe der Verbindung wiederhergestellt wird. Der Standardwert scheint 10-15 Minuten zu sein. Sie können dies in der Registrierung kürzen.

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

Es scheint jedoch, dass "KeepConn" in neueren Windows-Versionen nicht mehr verwendet wird. Siehe "Timer für Leerlaufverbindungen" auf dieser Seite: http://blogs.msdn.com/b/openspecification/archive/2013/03/19/cifs-and-smb-timeouts-in-windows.aspx


0

Start -> Systemsteuerung -> Benutzerkonten und Familiensicherheit -> Benutzerkonten -> Verwalten Sie Ihre Anmeldeinformationen.

Erweitern Sie einen Ihrer "Windows-Anmeldeinformationen" und klicken Sie dann auf "Aus Tresor entfernen".

Start -> Systemsteuerung

Systemsteuerung -> Benutzerkonten und Familiensicherheit

Benutzerkonten und Familiensicherheit -> Benutzerkonten

Benutzerkonten -> Verwalten Sie Ihre Anmeldeinformationen

Ausloggen

Ja


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

Weg 2: Verwenden Sie mehrere NetBIOS-Namen für einen Computer:

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

Anschließend können Sie die Ressourcen verschiedener Benutzer mit unterschiedlichen NetBIOS-Namen verbinden.

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

Bearbeiten %windir%\system32\drivers\etc\lmhostsund hinzufügen

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

in allen Netzwerkarbeitsplätzen

Alle Benutzer stellen eine Verbindung zu ihren Ressourcen her.


Gemäß dem Fragentitel beantwortet dies die Frage nicht.
Daniel B

Vielen Dank, aber dadurch wird der Workstation-Dienst neu gestartet. Ich habe dies in der Frage erwähnt, aber ich weiß bereits, dass ich den Neustart mit einem Skript automatisieren kann. Eigentlich habe ich ungefähr den gleichen Befehlssatz unter superuser.com/a/883606/245945 gepostet . Was ich eigentlich suche, ist detailliert, wo ich "Frage" und "Unterfrage" in meinem Beitrag fett geschrieben habe.
Jason C

@JasonC Die ursprüngliche Ursache all dieser Aktionen Systemfehler 1219?
STTR

@STTR Die ursprüngliche Ursache ist der Wunsch, sich abzumelden, ohne die Dienste neu zu starten. Die Ergebnisse meiner Versuche sind in meinem Beitrag beschrieben.
Jason C

@ STTR Danke. Das Update ist interessant und ich schätze Ihre Zeit, aber ich bin über die Verbindung unklar. Ich versuche nicht, Laufwerke zuzuordnen oder mich mit mehreren Benutzern gleichzeitig anzumelden. Ich versuche einfach, mich von einer Freigabe abzumelden, auf die ursprünglich zugegriffen wurde, indem ich direkt zu \\ Adresse gehe. Es muss nicht unbedingt sein, Benutzer zu wechseln. Vielleicht entferne ich mich nur vom Computer und möchte die Freigabe nicht angemeldet lassen. Wie hilft die Anmeldung als mehrere Benutzer über mehrere freigegebene Laufwerke, sich von einem freigegebenen Ordner abzumelden, ohne die Dienste neu zu starten?
Jason C
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.