sarekhl
Goto Top

Automatische Freigabe von USB-Sticks

Hallo zusammen,

ich möchte, daß ein USB-Stick, den ich in meinen Hauptrechner (läuft unter Windows Server 2003) stecke, automatisch um Netzwerk freigegeben wird.

Ich habe schon versucht, einen Stick reinzustecken und den Laufwerksbuchstaben dann freizugeben. Wenn ich dann einen anderen Stick reinstecke, bekommt er in der Regel ja den gleichen Laufwerksbuchstaben.

Aber wenn kein Stick angeschlossen ist, und der Server neu startet (z.B. nach Updates), dann ist die Freigabe weg, auch wenn ich wieder einen Stick anschließe.

Hat jemand eine Idee, wie ich mein Anliegen umsetzen kann?


Danke,
André

Content-Key: 84992

Url: https://administrator.de/contentid/84992

Printed on: April 23, 2024 at 23:04 o'clock

Mitglied: 60730
60730 Apr 08, 2008 at 11:55:41 (UTC)
Goto Top
Hat jemand eine Idee, wie ich mein Anliegen
umsetzen kann?


Hi,
eine ungetestete Idee hab ich.

Steck den Stick in den Server und gebe Ihn frei.

Starte den Regeditor und gehe auf [HKLM]\System\CurrentControlSet\Services\Lanmanserver\Shares

Dort die den Reg Multi Wert des USB Stick suchen und exportieren.
Im Unterast "Security" unterhalb Shares auch den Reg Binary Wert des Sticks suchen und exportieren.

Diese Beiden Regkeys nun kombinieren, so dass nur die "USB" Freigabe drinsteht.

Eine Neue Text Datei erstellen und dort
regedit /s "usbwieauchimmer.reg

reinschreiben.

Nun der ungetestete Teil....
Net Stop Computerbrowser
Net Stop Server
Net Start Server
Net Start Computerbrowser


Den Serverdienst mußt du "so" leider neustarten, damit er die Regänderung mitbekommt.

Du kannst diese Textdatei nun als autorun.cmd auf dem Stick speichern und solltest den Stick nun nicht mehr (ohne gedrückte Shifttaste) in einem anderen Rechner benutzen.

Wie du siehts, wird zuerst der Computerbrowserdienst gestoppt, der ist vom Serverdienst abhängig und später beide Dienste wieder neu gestartet.

Das ist ein "heisses" Eisen, wenn "Server" wirklich "Server" meint und nicht "mein 2. Rechner - den ich "Server" nenne.
Member: SarekHL
SarekHL Apr 08, 2008 at 12:00:49 (UTC)
Goto Top
ok, vielleicht habe ich mich unpräzise ausgedrückt. Ich möchte, daß JEDER dort eingesteckte Stick automatisch freigegeben ist.

Theoretisch ist das ja auch kein Problem, denn jeder Stick bekommt ja den ersten freien Laufwerksbuchstaben, in meinem Falle F: - wenn ich also Laufwerk F freigebe, dann ist jeder Stick, den ich anschließe, automatisch freigegeben.

Nur wie gesagt, wenn kein Stick angeschlossen ist, und der Server neu startet, dann ist die Freigabe weg und kommt auch nicht wieder, wenn ich wieder einen Stick anschließe ...
Mitglied: 60730
60730 Apr 08, 2008 at 12:06:25 (UTC)
Goto Top
unpräzise - yupp das ist ein Stichwort face-wink

Wenn der Serverdienst startet - überprüft er, den angebenen Regkey, ob er das Laufwerk auch findet.
Findet er Sie nicht - dann serviert er auch niemandem etwas daraus.
Das ist präzise 1 oder 0 face-wink

Von daher mußt du die obigen Schritte durchexerzieren und anstelle die Batch auf dem Usb Stick zu kopieren, diese auf dem Desktop /Startmenü hinterlegen und nach jedem USB einstecken darauf klicken.

Als kleine Anmerkung möchte ich den Satz von Biber hinzufügen:
Vermeide es auf jeden Fall, schlimmer zu programmieren als in Redmont.
Member: SarekHL
SarekHL Apr 08, 2008 at 12:11:12 (UTC)
Goto Top
Naja, schlimmer als in Redmont zu programmieren wäre schon eine Herausforderung ;)

Aber zurück zum Thema: Kann ich nicht irgendwie automatisch erkennen lassen, daß ein Stick eingesteckt wurde und dann automatisch die Batch ausführen lassen?
Mitglied: 60730
60730 Apr 08, 2008 at 12:15:58 (UTC)
Goto Top
Naja, schlimmer als in Redmont zu
programmieren wäre schon eine
Herausforderung ;)

Aber zurück zum Thema: Kann ich nicht
irgendwie automatisch erkennen lassen,
daß ein Stick eingesteckt wurde und
dann automatisch die Batch ausführen
lassen?

Vermeide es auf jeden Fall, schlimmer zu programmieren als in Redmont.

Du hast es so gewollt, nun oute ich mich als Redmonter *flitz*

:start
if not exist f:\>nul goto start

if exist f:\>nul regedit /s "usbwieauchimmer.reg  
Net Stop Computerbrowser
Net Stop Server
Net Start Server
Net Start Computerbrowser
:exit

"Du" hast es so gewollt *lach*

Nein - im Ernst einer muß was schaffen, enteder du - "Favorisierte Variante" oder der Server.
Member: Wolfsburger
Wolfsburger Apr 08, 2008 at 12:18:23 (UTC)
Goto Top
Spontane Idee:

Du stellst den Speicherbereich des USB-Sticks nicht als eigenes Laufwerk, sondern als ein Ordner auf der Festplatte zur Verfügung und gibst dann den Ordner frei. Der Ordner dürfte dann ja bestehen bleiben wenn der Stick gezogen wird, ergo auch die Freigabe. Fragt sich nur ob er den Speicherbereich des Sticks beim reintegrieren wieder automatisch dem Ordner zuweist.
Member: SarekHL
SarekHL Apr 08, 2008 at 12:20:25 (UTC)
Goto Top
.... Fragt sich nur ob er den
Speicherbereich des Sticks beim reintegrieren
wieder automatisch dem Ordner zuweist.

Vor allem, wenn beim nächsten Mal ein ganz anderer Stick angeschlossen wird ...
Member: SarekHL
SarekHL Apr 08, 2008 at 12:24:31 (UTC)
Goto Top
> :start
> if not exist f:\>nul goto start
> 
> if exist f:\>nul regedit /s
> "usbwieauchimmer.reg  
> Net Stop Computerbrowser
> Net Stop Server
> Net Start Server
> Net Start Computerbrowser
> :exit
> 

Wäre eine Idee, vorausgesetzt, daß das goto start, was ja in Abwesenheit eines Sticks eine Endlosschleife verursacht, nicht den ganzen Rechner lahmlegt.

Nein - im Ernst einer muß was schaffen, enteder du - "Favorisierte Variante" oder der Server.

Ja, aber - ebenfalls mal im Ernst - geht das wirklich nicht eleganter? Windows erkennt doch auch, wenn ein Stick angeschlossen wird - also müßte man das doch für eine eigene Erkennungsroutine, die als Dienst im Hintergrund läuft und beim Anschließen eines Sticks dann die Freigabe wiederherstellt, nutzen können. Vielleicht geht es nicht als Batch, aber per Programmiersprache muß sich das doch lösen lassen.

Member: Dynadrate
Dynadrate Apr 08, 2008 at 12:38:49 (UTC)
Goto Top
Hab ich irgendwas überlesen oder warum lässt sich das nicht mit ner autorun.inf machen?
Es gibt ja sogar nen Befehl der ausließt, vom welchem Buchstaben das Script gestartet wurde. Hab ich nun nicht gerade auf dem Schirm. Kann ich aber bei Bedarf gerne nachliefern
Member: SarekHL
SarekHL Apr 08, 2008 at 12:40:40 (UTC)
Goto Top
Hab ich irgendwas überlesen oder warum
lässt sich das nicht mit ner autorun.inf
machen?

Weil es mit jedem x-bliebigen Stick funktionieren soll, und nicht nur mit denen, auf denen eine entsprechende autorun.inf gespeichert ist.
Member: fangerin84
fangerin84 Apr 08, 2008 at 12:54:45 (UTC)
Goto Top
ich hab gegooglet und bin auf folgendes Programm gestolpert - Rohos logon key

http://blog.rohos.net/?p=32

vielleicht ist das, was du suchst
Grüss!

fangerin
Mitglied: 60730
60730 Apr 08, 2008 at 16:32:59 (UTC)
Goto Top
Wäre eine Idee, vorausgesetzt,
daß das goto start, was ja in
Abwesenheit eines Sticks eine Endlosschleife
verursacht, nicht den ganzen Rechner
lahmlegt.

Hey, probiers doch aus - jedoch beendet sich dieses Script ja, wenn der erste USB Stick gefunden wurde - ähh Laufwerk F - von dem wir ausgehen, daß es der USB Stick ist.

Klar - belegt die "Schleife" etwas LAst auf dem System, aber was verlangst du?
Per Netzwerk Freigabe auf einem USB Stick zu schreiben, ist ja nun wirklich nicht in der Rubrik "schnell" einsortiert.

Feedback erwünscht face-wink - sonst muß ich das noch selber ausprobieren face-wink