batman00
Goto Top

Netzlaufwerke beim abmelden trennen

Hallo, hab mal ne Frage...

Wir haben ein neuen Server der den DC ablöst. Auf diesem sind diverse Freigaben.

Ich habe gestern abend für ein paar das neue Script angepasst, indem ich einfach den Servernamen ausgetauscht habe...

Das script sieht dann in etwa so aus...

IF EXIST P: NET USE P: /DELETE
NET USE P: \\SERVERNAME1\Public

IF EXIST V: NET USE V: /DELETE
NET USE V: \\SERVERNAME2\Vorlagen

Jetzt habe ich gestern gerade diese 2 Freigaben auf den neuen Server verschoben, die neuen Freigaben eingerichtet und die alten Freigaben entfernt.

Jetzt haben sich meine 4 Testuser heute angemeldet und die haben doch wieder die Laufwerke auf den alten Server gemapt, obwohl die Freigaben nicht mehr offen waren und es ging natürlich nicht.

Jetzt warum aber? Ich hab doch im loginscript gesagt: wenn es p schon gibt, dann tu dies löschen und dann mappe es neu...

Ich will heute nämlich alle Homelaufwerke umziehen und hab morgen keine lust bei jedem rechner die Laufwerke manuell zu trennen, den user neu anmelden zu lassen damit es geht (so hab ich es mit meinen 4 Testusern gemacht).

Lag es vielleicht daran, dass die Freigabe auf dem alten Server es nicht mehr gab? Hab echt kein plan deswegen...

Hat mir da jemand eine Lösung?

Danke!

Content-Key: 25594

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

Printed on: April 20, 2024 at 02:04 o'clock

Member: wikrie
wikrie Feb 09, 2006 at 12:39:30 (UTC)
Goto Top
wenn du dir mal die hilfe zu if /? anschaust wirst du feststellen das du mit dem command exists nur files und keine laufwerke überprüfen kannst!
wenn ud also diese überprüfung rausnimmst oder dir etwas anders einfallen lässt dann wird es funktionieren

W:\>if exists x: net use x: /delete
x: was unexpected at this time.


ergo deine alten mapping werden erst gar nciht gelöscht weswegen auch die neuen nicht auf dem selben buchstaben gebunden werden können!
Member: Fungo
Fungo Feb 09, 2006 at 12:40:02 (UTC)
Goto Top
Hallo,
wie hast du die Freigaben verschoben? Ich vermute dort den Fehler. Deine Systeme haben das noch net gechecked das die Freigaben nun auf dem anderen Server laufen. Am besten geht so ein Umzug mit einem Tool das Freigaben exakt mit allen Berechtigungen verschiebt und die alten löscht. Du musst die freigaben erst aufheben -----> dann Daten kopieren und dann neue Freigaben einrichten. So muss es gehen.


Gruss Fungo
Member: wikrie
wikrie Feb 09, 2006 at 12:43:05 (UTC)
Goto Top
@Fungo ich glaube (bin mir sicher) das das falsch ist was du schreibst es liegt daran das die mapping nicht gelöscht werden deswegen kann er dem, selben buchstaben auch keine neue freigabe zuordnen
Member: batman00
batman00 Feb 09, 2006 at 12:55:48 (UTC)
Goto Top
Hm.

Das ist ja blöd. Ich dachte if exist heisst, wenn dass er das den Buchstaben prüft ob es den schon als Laufwerk gibt...
Die freigaben habe ich 1:1 übernommen. Sobald ich Laufwerke ja von hand lösche und mich anmelde bekommen die ja die richtigen zugewiesen...

Habt ihr mir nicht irgend ein tip?
Member: Fungo
Fungo Feb 09, 2006 at 13:00:08 (UTC)
Goto Top
@wikrie ich glaube du hast recht face-smile Hab net genau gelesen.

Trage in deinem Script als erste Zeile am besten folgendes ein:

net use /delete * /yes

Dann löscht er alle freigaben und danach brauchst du nur dein normales Script ablaufen lassen.
Das heisst, verbinde die Laufwerke wieder so wie vorher nur mit dem anderen Servernamen. So müssen sie ihn finden und die LWB nehmen.

Fungo
Member: wikrie
wikrie Feb 09, 2006 at 13:20:37 (UTC)
Goto Top
hallo
entschuldige die frage aber kannst du lesen?
ich sagte das der if exist befehl nur einzelne Dateien also argument akzeptiert also keien kompletten laufwerke, wenn du if /? eingibst kannst du das auch nachlesen
und wenn du das script mal irgendwo ausprobierst siehst du den fehler!!

nimm die if abfrage weg und dann funkt es auch !!!!
Member: IceBeer
IceBeer Feb 09, 2006 at 13:43:12 (UTC)
Goto Top
Hallo Wikrie,

net böse sein, aber deine Aussage ist FALSCH, gib einfach mal den IF Befehl korrekt ein:

if exist L:\ net use L: /delete

Das geht 1000%ig, habe es soeben nochmal ausprobiert... Mein System XP SP2

MfG IceBeer
Member: derCaptain
derCaptain Feb 09, 2006 at 13:44:19 (UTC)
Goto Top
@wikrie:
Dass das bei Dir nicht funktioniert liegt daran, dass es "EXIST" und nicht "EXISTS" heißt. Wenn ich EXISTS eingebe bekomme ich die gleiche Meldung. IF EXIST X: funktioniert aber. Verwenden wir hier schon seit Jahren.
Member: batman00
batman00 Feb 09, 2006 at 14:00:33 (UTC)
Goto Top
Alles klar. Viele Dank. Mit dem

net use /delete * /yes

geht es face-smile
Member: wikrie
wikrie Feb 09, 2006 at 14:12:56 (UTC)
Goto Top
oh shit
exists ist ja auch völliger bullshit exist muss es lauten
*argh* wie kann ich mich selber schlecht bewerten??
sorry mein Fehler war zu vorlaut

ps: ### windows wieso sagt es dann nicht syntax fehler argh
Member: batman00
batman00 Feb 09, 2006 at 14:17:02 (UTC)
Goto Top
Hm, dann wäre es wohl auch bei mir richtig gelaufen... Hups... Nochmals aber danke face-smile
Member: Fungo
Fungo Feb 09, 2006 at 14:17:38 (UTC)
Goto Top
Siehste, habe ja auch zu schnell gelesen. face-smile
Damit wär das Thema ja geklärt face-smile

Gruss an euch Fungo
Member: batman00
batman00 Feb 16, 2006 at 12:14:56 (UTC)
Goto Top
Also ich bin s wieder...
Hab das jetzt ja jetzt mit dem Befehl vom Fungo gehandhabt:

net use /delete * /yes

Das hat zwar funktioniert. Aber leider löscht es halt doch und natürlich alle Laufwerke.
Ich würde dann schon gerne sagen:

So, du bekommst jetzt laufwerk H zugewiesen. Schaue ob der User laufwerk H:\ hat wenn ja lösche es und gib ihm folgendes...

Das mit if exist geht bei mir irgendwie im kix nicht. das kennt er nicht. Wie habt ihr das denn gelöst?