2009-08-24 22:53:16 +0000 2009-08-24 22:53:16 +0000
183
183

Wie kann man das SUBST-Mapping über Reboots hinweg persistent machen?

Hat Windows (XP oder höher) eine eingebaute Möglichkeit, persistente Laufwerk-Zuordnungen zu erstellen, wie die, die SUBST erstellt? Ich habe ein Drittanbieter-Tool psubst gefunden. Gibt es eine Möglichkeit, dies ohne Drittanbieter-Tools zu tun?

Respostas (8)

156
156
156
2009-08-24 23:04:22 +0000

Nun Wikipedia erwähnt :

C:\>SUBST /?
Associates a path with a drive letter.

SUBST [drive1: [drive2:]path]
SUBST drive1: /D

drive1: Specifies a virtual drive to which you want to assign a path.
[drive2:]path Specifies a physical drive and path you want to assign to
a virtual drive.
/D Deletes a substituted (virtual) drive.

Type SUBST with no parameters to display a list of current virtual drives.

Sie können also Pfade mit Laufwerksbuchstaben verknüpfen, indem Sie subst verwenden. Die Software Persistent SUBST command (psubst) scheint verdammt praktisch zu sein, und sie bieten eine Lösung an, um sie beim Start auszuführen: https://code.google.com/p/psubst/#Inconstancy

Inconstancy

Beim Neustart eines Systems wird jedoch eine virtuelle Festplatte zerstört. Was ist zu tun? Eine Diskette kann nach dem Neustart erstellt werden. Aber was ist zu tun, wenn eine Festplatte bei frühen Schritten des Starts benötigt wird? Zum Beispiel, um Dienste zu starten? Es gibt eine Systemfunktion, um eine virtuelle Festplatte aus der Systemregistrierung heraus zu starten:

REGEDIT4 

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\DOS Devices] 
"Z:"="\??\C:\Documents and Settings\All Users\Shared Documents"

Es reicht, eine Textdatei mit der Erweiterung .REG zu erstellen und sie auszuführen. Beim nächsten Systemstart wird die virtuelle Festplatte bei der Anmeldung vorhanden sein. Es muss ein Name für die Festplatte und ein Pfad definiert werden. Beachten Sie, dass jeder Backslash im Pfad verdoppelt wird.

Unter Windows können Sie den Registrierungseditor wie folgt aufrufen:

  1. Start “ Ausführen… (oder drücken Sie Win+R)
  2. Tippen Sie: regedit
  3. In Windows Vista und höher wird die UAC angezeigt, klicken Sie auf "Ja”.
80
80
80
2012-02-24 17:38:22 +0000

Die Installation unter HKEY_CURRENT_USER hat den Vorteil, dass es für jeden Benutzer unterschiedliche Setups gibt. Ich ziehe es vor, das User-Space-Setup beizubehalten, solange ein Systemdienst nicht von dem Gerät abhängt.

REGEDIT4
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run]
"F Drive"="subst F: D:\mount\db"
"G Drive"="subst G: D:\mount\log"

Quelle: http://networkadminkb.com/KB/a446/how-to-use-drive-letters-mount-points-the-same-disk-drive.aspx

46
46
46
2009-08-24 23:08:49 +0000

Auf der Seite, die Sie verlinkt haben, gibt es eine Antwort. Sie brauchen kein Tool eines Drittanbieters, Sie können es mit einem einfachen Registrierungseintrag machen, wie auf dieser Seite beschrieben.

Erstellen Sie eine Textdatei namens ‘mapdrive.reg’ mit diesem Inhalt:

REGEDIT4 

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\DOS Devices] 
"Z:"="\??\C:\Documents and Settings\All Users\Shared Documents"

Dann sollten Sie zum Einrichten einfach darauf doppelklicken können, es wird kein Drittanbieter-Tool benötigt.

28
28
28
2011-01-11 23:34:33 +0000

Ich habe dies gefunden, weil ich nach einer Verbesserung gegenüber meinen Startup-Subskripten gesucht habe - sie funktionierten gut, aber manchmal stürzten beim Start Ordner ab, weil mein Laufwerk noch nicht zugeordnet war.

Zuerst habe ich die Registry bearbeitet, aber ich konnte es nicht zum Laufen bringen. Ich bin jedoch auf diese Alternative gestoßen, die, obwohl sie subst nicht verwendet, für mich die Frage beantwortet: “Wie macht man die SUBST-Zuordnung über Neustarts hinweg beständig?” Verwenden Sie nicht subst… (fügen Sie den passenden ‘Computernamen’ und ‘Pfadnamen’ ein):

net use u: "\computerName\c$\pathName" /persistent:yes

Ich habe dies von Hank Arnolds Vorschlag in dieser Diskussion über die Zuordnung lokaler Laufwerke übernommen. Ich hatte geahnt, dass \myComputerName\c funktionieren könnte, aber ich wusste nicht, dass ich die $ anwenden sollte.

Bevor Sie den “net use”-Befehl ausprobieren, versuchen Sie, zu

\computerName\c$

zu navigieren, um sicherzustellen, dass Sie ‘computerName’ richtig haben.

8
8
8
2009-08-24 23:02:00 +0000

Legen Sie eine Batch-Datei in Ihrem Startup-Ordner ab, die alle SUBSTs ausführt, die Sie ausführen möchten.

5
5
5
2015-06-11 00:29:36 +0000

Da das originale PSubst einige Einschränkungen hat und vom Autor abgeschlossen zu sein scheint, musste ich eine neue Version für meine Bedürfnisse programmieren, wobei ich einige Probleme behoben und Funktionalität und Flexibilität hinzugefügt habe.

Hier finden Sie die Batch-Datei für PSubst Version 3 https://github.com/cyberponk/psubst

Kompatibel mit Windows 7, Windows 8, Windows 10, Windows Server 2012

Hinweis: Diese Arbeit hat nicht die Absicht, den Originalautor zu entmachten und ist nur aus echter Notwendigkeit entstanden, wie folgt:

  • Als Newtork-Admin habe ich das ständige Bedürfnis, Netzlaufwerke zu SUBST'ing und mit verschiedenen Netzbenutzern zu fummeln.

  • Da nicht jeder ein Windows-Experte ist, dachte ich mir, dass die automatische Admin-Elevation mit Fehlerbehandlung helfen würde, basierend auf Kommentaren, die ich im Web gelesen habe.

  • Da einige Leute Probleme mit der Reihenfolge der Argumente hatten, dachte ich mir, dass es am besten wäre, wenn das Skript mit Argumenten in beliebiger Reihenfolge arbeiten würde.

Ich kann mich nicht an jede hinzugefügte Funktionalität erinnern, aber jede Aufnahme geschah aus reiner Notwendigkeit. Ich teile den Code, damit andere nicht auf die Probleme stoßen, die ich hatte. Damit ist keine andere Absicht verbunden als das Teilen und Helfen.

2
2
2
2019-08-27 01:09:25 +0000

Ich erweitere die Antwort von davr , da alle Dateien, die vom zugeordneten Laufwerk gelöscht werden, dauerhaft gelöscht werden, anstatt in den Papierkorb zu wandern. Diese REG-Datei basiert auf den Informationen aus diesem TechNet-Artikel , in dem beschrieben wird, wie Sie den Papierkorb aktivieren können. Das Beispiel ordnet das virutale Laufwerk Q dem Ordner “OneDrive - Test” zu und aktiviert den Papierkorb auf dem Laufwerk Q. Ändern Sie die Pfade und den Namen entsprechend Ihrer Situation.

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\DOS Devices]
"Q:"="\??\C:\Users\Tony\OneDrive - Test"

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FolderDescriptions\{9147E464-33A6-48E2-A3C9-361EFD417DEF}]
"RelativePath"="Q:\"
"Category"=dword:00000004
"Name"="Q_Mapped_OneDrive"

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\BitBucket\KnownFolder\{9147E464-33A6-48E2-A3C9-361EFD417DEF}]
"MaxCapacity"=dword:0000c7eb
"NukeOnDelete"=dword:00000000

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Explorer\FolderDescriptions\{9147E464-33A6-48E2-A3C9-361EFD417DEF}]
"RelativePath"="Q:\"
"Category"=dword:00000004
"Name"="Q_Mapped_OneDrive"

[HKEY_CURRENT_USER\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Explorer\BitBucket\KnownFolder\{9147E464-33A6-48E2-A3C9-361EFD417DEF}]
"MaxCapacity"=dword:0000c7eb
"NukeOnDelete"=dword:00000000

Wenn Sie nur ein solches zugeordnetes Laufwerk haben, dann können Sie mit der GUID {9147E464-33A6-48E2-A3C9-361EFD417DEF} auskommen. Wenn Sie mehrere gemappte Laufwerke haben, dann sollte jedes mit einer GUID von Ihrem bevorzugten GUID-Generator abgeglichen werden.

1
1
1
2019-11-02 18:16:15 +0000

Hier sind zwei Beispiele, die reg.exe verwenden, um den erforderlichen Eintrag zum Registrierungsunterschlüssel Run des Hives HKEY_CURRENT_USER hinzuzufügen. Diese Beispiele können nach Bedarf angepasst werden. Öffnen Sie als aktueller Benutzer ein nicht erweitertes cmd-Fenster, und fügen Sie die angepasste Zeile ein.

Der einfachste Anwendungsfall:

reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Run" /v "Map I" /t REG_SZ /d "subst I: \"C:\path\to\folder\"" /f

Wobei im Pfad-Argument von SUBST eine Umgebungsvariable eingebettet ist:

reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Run" /v "Map J" /t REG_EXPAND_SZ /d "subst J: \"^%DROPBOX_HOME^%\Notes\"" /f

Beachten Sie, dass es im zweiten Beispiel zwei Arten von Zeichen-Escaping gibt. Backslashes für die inneren doppelten Anführungszeichen, die das Pfadargument umgeben, und Carets für die Prozentzeichen der Umgebungsvariablen. Doppelte Anführungszeichen sind nicht immer erforderlich, aber um Probleme mit Ordnernamen zu vermeiden, die Leerzeichen enthalten, wird empfohlen, sie zu verwenden.