Net use reagiert im script anders als in der Konsole
Ich habe auf dem SMB Server (Synology DS1817+) zwei Benutzer. Sagen wir "ReadWrite" und "Liesmich". Der ein hat volle Berechtigung auf den Freigaben, der andere nur Leserechte.
Ich möchte unter Win10 mir jeweils ein script schreiben, der entweder die Freigaben als "ReadWrite" oder als "Liesmich" verbindet und als Netzlaufwerk zur verfügung stellt. So dass ich mit einer Verknüpfung auf dem Desktop schnell wechseln kann.
Wenn ich in der Konsole folgendes step für step mache funktioniert das prima (natürlich mit passendem PASSWORD):
Nach der zweiten Zeile habe ich das Laufwerk verbunden mit Leserechten, nach der vierten Zeile mit Schreibrechten. Wenn ich dann die ersten zwei wieder eingebe, habe ich wieder Leserechte
Wenn ich jetzt die ersten zwei Zeilen in einen Script stecke und die zweiten zwei in einen anderen Script, funktioniert es leider nicht. Das erste mal geht der Script. Wenn ich dann den anderen aufrufe verbindet der zwar, aber nicht den neuen Benutzer. Er scheint Benutzer und Passwort zu ignorieren. Das Verbinden geht auch viel schneller als beim ersten Aufruf (sehe ich, weil ich im Script 10 Freigaben verbinde, nicht nur eine wie hier im Beispiel). Wenn ich dann alles in der CMD Konsole eingebe, funktioniert es.
Einzige Vermutung: Beim zweiten Aufruf kommt nach dem Befehl folgende Warnung:
Das ist aber unabhängig ob auf Konsole oder Script (das Laufwerk wird in beiden Fällen getrennt). Aber warum verbindet er den richtigen Benutzer nur auf der Konsole aber nicht im Script? Auch Verzögerungen zwischen den Befehlen beheben es nicht. Bin etwas ratlos ob dieses Verhaltens.....
Danke.
Gruß
Thomas.
Ich möchte unter Win10 mir jeweils ein script schreiben, der entweder die Freigaben als "ReadWrite" oder als "Liesmich" verbindet und als Netzlaufwerk zur verfügung stellt. So dass ich mit einer Verknüpfung auf dem Desktop schnell wechseln kann.
Wenn ich in der Konsole folgendes step für step mache funktioniert das prima (natürlich mit passendem PASSWORD):
net use * /delete /yes
net use b: \\SERVER\backup PASSWORD /user:LiesMich /persistent:no
net use * /delete /yes
net use b: \\SERVER\backup PASSWORD /user:ReadWrite /persistent:no
Nach der zweiten Zeile habe ich das Laufwerk verbunden mit Leserechten, nach der vierten Zeile mit Schreibrechten. Wenn ich dann die ersten zwei wieder eingebe, habe ich wieder Leserechte
Wenn ich jetzt die ersten zwei Zeilen in einen Script stecke und die zweiten zwei in einen anderen Script, funktioniert es leider nicht. Das erste mal geht der Script. Wenn ich dann den anderen aufrufe verbindet der zwar, aber nicht den neuen Benutzer. Er scheint Benutzer und Passwort zu ignorieren. Das Verbinden geht auch viel schneller als beim ersten Aufruf (sehe ich, weil ich im Script 10 Freigaben verbinde, nicht nur eine wie hier im Beispiel). Wenn ich dann alles in der CMD Konsole eingebe, funktioniert es.
Einzige Vermutung: Beim zweiten Aufruf kommt nach dem
net use * /delete /yes
Fortsetzen beendet die Verbindungen.
Entweder sind Dateien geöffnet, oder die Suche in den Verzeichnissen auf B: ist noch nicht abgeschlossen.
Das ist aber unabhängig ob auf Konsole oder Script (das Laufwerk wird in beiden Fällen getrennt). Aber warum verbindet er den richtigen Benutzer nur auf der Konsole aber nicht im Script? Auch Verzögerungen zwischen den Befehlen beheben es nicht. Bin etwas ratlos ob dieses Verhaltens.....
Danke.
Gruß
Thomas.
Please also mark the comments that contributed to the solution of the article
Content-Key: 343607
Url: https://administrator.de/contentid/343607
Printed on: April 26, 2024 at 16:04 o'clock
4 Comments
Latest comment
Hallo,
Gruß,
peter
Zitat von @Ampheus:
Wenn ich jetzt die ersten zwei Zeilen in einen Script stecke und die zweiten zwei in einen anderen Script, funktioniert es leider nicht.
Was bedeutet denn funktioniert nicht. Damit kann keiner etwas anfangen. Kommen fehlermeldungen? Was steht in den Ereignissprotokollen deines Clients bzw. was sagt dein Samba bzw. dessen Logs? Immer als der gleiche benutzer angemeldet bzw. wird das Skript immer im gleichen benutzerkontext oder gar mal mit oder ohne erhöhten rechten ausgeführt?Wenn ich jetzt die ersten zwei Zeilen in einen Script stecke und die zweiten zwei in einen anderen Script, funktioniert es leider nicht.
Wenn ich dann den anderen aufrufe verbindet der zwar, aber nicht den neuen Benutzer. Er scheint Benutzer und Passwort zu ignorieren.
Er scheint ist daoch etwas wie hörensagen oder das märchen von Rotkäppchen. Dein Auto scheint auch ab und an nicht zu fahren, oder?Wenn ich dann alles in der CMD Konsole eingebe, funktioniert es.
?!? Du hast doch alle 4 zeilen in einer Batchdatei drin, oder nicht? hast du gar noch ein @echo Off übrig gehabt?Einzige Vermutung:
Brauchst nicht Vermuten, steht alles aufm Monitor, musst nur lesen Fortsetzen beendet die Verbindungen.
Wie wäre es mit den ganzen Dialogen von A - Z?Entweder sind Dateien geöffnet, oder die Suche in den Verzeichnissen auf B: ist noch nicht abgeschlossen.
Und? Sind Dateien geöffnet? wie lnage hält Samba da ihre Finger drauf oder dein System, dein W10? mal ein N et File mit erhöhten rechten gemacht?Warum geht es auf der Konsole aber nicht im Script?
Wer weiß was du dort noch so an Buchstaben in deinSkript hast...Gruß,
peter
Hallo,
.
Gruß,
Peter
Zitat von @Ampheus:
Das Passwort hat ein Sonderzeichen enthalten welches im Script interpretiert wurde
Nene, da wird nichts interpretiert. Da wird einfach ein anderer Zeichensatz verwendet wenn dein Skript gespeichert wird. Ergo kommt was anderes beim net Use an. Je nach verwendeten Editor und Speicheroption sowie eingestellten Zeichensatz kommt halt was anderes an. Speicher mal eine Txt Datei mit deutschen Umlauten. Was kommt dann an bzw. was wurde tatsächlich gespeichert? Ein Hex Editor sagt es dir Das Passwort hat ein Sonderzeichen enthalten welches im Script interpretiert wurde
.
Gruß,
Peter