TheDonMiguel 11 Geschrieben 9. September 2006 Melden Teilen Geschrieben 9. September 2006 Hallo zusammen ich habe eine Frage zu dem System-Account. Ich habe einen geplanten Tasks (Batch-Datei), welcher zu einem bestimmten Zeitpunkt Dateien vom Server A auf den Server B kopieren soll. Ich verwende Dazu den System-Account. Leider funktioniert das nicht, und ich erhalte den 0x1 Fehler. Ich habe dem Computer Konto von Server A den NTFS Zugriff beim Server B erteilt. Auch die Berechtigungen auf die cmd.exe sollten stimmen. Und die Einstellungen auf dem Task-Scheduler Service, dass dieser als System läuft und "interact with desktop" habe ich auch vorgenommen. Dennoch schein es nicht zu funktionieren. Hat jemand noch eine Idee? Danke & Gruss, TDM Zitieren Link zu diesem Kommentar
klausk 10 Geschrieben 10. September 2006 Melden Teilen Geschrieben 10. September 2006 Hast Du auch die Freigabeberechtigung angepasst? Zitieren Link zu diesem Kommentar
IThome 10 Geschrieben 10. September 2006 Melden Teilen Geschrieben 10. September 2006 Funktioniert das Kopieren, wenn Du an Stelle des System-Accounts einen minderprivilegierten Benutzer (Mitglied der Gruppe Benutzer z.B.) einträgst und diesem Benutzer Schreibberechtigungen im Zielordner gewährst ? Zitieren Link zu diesem Kommentar
TheDonMiguel 11 Geschrieben 10. September 2006 Autor Melden Teilen Geschrieben 10. September 2006 Hallo zusammen, Danke für die Antworten. Ich habe den Server nochmals angeschaut. Die Freigabe-Berechtigung ist auf Everyone Full gesetzt. Den zweiten Test mit einem User anstatt des System-Accounts hat nicht funktioniert: "DB-TEST.job" (test.bat)Finished 10.09.2006 12:56:00 Result: The task completed with an exit code of (1). Nachtrag: Auch der Admin bekommt der Fehler!? Habt ihr noch eine Idee? Gruss, TDM Zitieren Link zu diesem Kommentar
IThome 10 Geschrieben 10. September 2006 Melden Teilen Geschrieben 10. September 2006 Beginnt der Task überhaupt ? Was sagt denn die Log-Datei des Task-Schedulers ? Wie sind die Berechtigungen auf die CMD.EXE gesetzt (der Administrator hat aber normalerweise die Berechtigung, als im Task eingesetzter Benutzer eine Batch-Datei zu starten, ein normaler User nicht. Die Freigabeberechtigung passt, wie sieht es mit den NTFS-Berechtigungen aus ? Hat der User das Benutzerrecht "Anmelden als Stapelverarbeitungsauftrag" ? Zitieren Link zu diesem Kommentar
TheDonMiguel 11 Geschrieben 10. September 2006 Autor Melden Teilen Geschrieben 10. September 2006 Der Task beginnt, denn ich lasse den Output in ein Log schreiben... Die Berechtigung auf der CMD.exe sind: Administrators: Full Control Interactive: Read & Execute Service: Read & Execute System: Full Control Auf dem Zielsystem habe ich den Eintrag "log on as a batch job" in der Local Policy definiert, indem ich den Server A eingetragen haben. NTFS Berechtigung sind Modify... Hmmmm..... Zitieren Link zu diesem Kommentar
blub 115 Geschrieben 10. September 2006 Melden Teilen Geschrieben 10. September 2006 wenn es nur um das Kopieren von A nach B geht, würde ich lieber den "NT AUTHORITY\NETWORK SERVICE" account benutzen, der hat nicht gar soviele Rechte wie der "Local System" zu deiner Fehlersuche würde ich ein Netzwerktrace ziehen. Da siehst du erstmal genau, an welcher Stelle es hakt cu blub Zitieren Link zu diesem Kommentar
IThome 10 Geschrieben 10. September 2006 Melden Teilen Geschrieben 10. September 2006 Wenn Du einen Account benutzt, der nur Benutzer auf dem System ist, musst Du ihm Leserechte auf die CMD.EXE gewähren ... Der Benutzer muss auf dem System, auf dem der Batch-Job ausgeführt wird, das Benutzerrecht besitzen (da der Job aber gestartet wurde, kann beides nicht Dein Problem sein). Der Benutzer, der in dem Task eingetragen ist, greift auf die Ressourcen des Servers zu ... Zitieren Link zu diesem Kommentar
TheDonMiguel 11 Geschrieben 10. September 2006 Autor Melden Teilen Geschrieben 10. September 2006 Im Task verwende ich aktuell den "NT AUTHORITY\SYSTEM", dieser hat laut dem letzten Post Full-Controll auf die CMD.exe. Die NTFS Permission auf dem Ziel-System ist für den Computer Account von "Server A" auf Modify gesetzt. Zusätzlich habe ich auf deinen Tipp hin die Local Policy editiert und den "log on as a batch job" gesetzt. Last but no least wurde das Computer Konto von "Server A" in die User Gruppe von Server B hinzugefügt. Bis anhin ohne Erfolg... :eek: Ich gehe davon aus, dass ich mit dem hinzufügen des Computer Konto dem System Account die benötigten Rechte auf dem remote System erteile. Oder? Danke & Gruss, TDM Zitieren Link zu diesem Kommentar
IThome 10 Geschrieben 10. September 2006 Melden Teilen Geschrieben 10. September 2006 Hab das mal ausprobiert - Eine Freigabe auf dem Server, Freigabeberechtigungen - Jeder,Vollzugriff; NTFS-Berechtigung - Administratoren-Vollzugriff , XP1 - Ändern (XP1 ist der Rechnername des Rechners, auf dem der Batchjob startet). Auf dem Rechner XP1 existiert eine Batchdatei mit dem Inhalt XCOPY C:\TEST\TEST.DOC \\SERVER\BATCH Im geplanten Task habe ich NT AUTHORITY\SYSTEM angegeben, dieser Account hat das Benutzerrecht NICHT explizit zugewiesen bekommen und steht dort auch nicht drin. So klappt das ... Zitieren Link zu diesem Kommentar
blub 115 Geschrieben 10. September 2006 Melden Teilen Geschrieben 10. September 2006 explizit kannst du den "Local System" ja auch gar nicht aufs Filesystem berechtigen, oder täusch ich mich? Die Berechtigung läuft über den Computeraccount, bzw. über die Gruppen everyone bzw. authenticated Users bzw. domain computers, in denen steckt der Computeraccount drinnen An den Policies braucht man da nicht rumdrehen. cu blub Zitieren Link zu diesem Kommentar
IThome 10 Geschrieben 10. September 2006 Melden Teilen Geschrieben 10. September 2006 An den Policies nur, wenn man einen User einsetzt, in dessen Sicherheitskontext der Task laufen soll. Und hier wird diesem User normalerweise automatisch dieses Benutzerrecht gewährt (Kontrolle schadet aber nie) ... Ein normaler Benutzer darf mit einer Batchanmeldung CMD.EXE nicht starten, daher muss die NTFS-Berechtigung in diesem Falle noch angepasst werden. Die Berechtigung habe ich dem Computerkonto gegeben, hätte aber auch, wie Du sagst, eine der Gruppen nehmen können ... Zitieren Link zu diesem Kommentar
TheDonMiguel 11 Geschrieben 10. September 2006 Autor Melden Teilen Geschrieben 10. September 2006 IThome, danke für deine Bemühungen. Die Konfig ist bei mir gleich, aber das klappt bei mir leider noch nicht. Wenn ich das Script manuell als Admin starte, funktioniert es. Lasse ich den Task unter dem gleichen Admin ausführen, klappt dies auch. Wenn ich das Computer-Konto in die lokale Admin-Gruppe des remote Systems kopiere, funktioniert es auch einwandfrei. Wo mache ich noch was falsch? Muss in der local policy das "log on as a batch job" nun nicht definiert werden? Diesen Eintrag habe ich auf dem Ziel-System gesetzt und dort das Computer-Konte vom Ziel eingetragen (Wegen dem SYSTEM User).... Gruss & Danke, TDM Zitieren Link zu diesem Kommentar
IThome 10 Geschrieben 10. September 2006 Melden Teilen Geschrieben 10. September 2006 Nein , das brauchst Du nicht, und wenn, dann nur auf dem System, welches den Batchjob ausführt und eigentlich wird einem Benutzer (wenn Du es mit einem Benutzer machst wie dem Administrator zum Beispiel) dieses Benutzerrecht automatisch zugewiesen. Ich habe den Fehler 0x1 bekommen, wenn ich dem Computeraccount, welchem ich die Berechtigung auf dem Zielsystem gebe, das Schreibrecht entzogen habe. Benutze also zum Test auf Freigabe- wie auch auf NTFS-Ebene mal die Gruppe Jeder mit Vollzugriff, dann kannst Du Berechtigungsprobleme ausschliessen ... Ich würde sowas auch nicht mit dem System-Account machen, sondern eher mit einem gering privilegierten Benutzer der Domäne, dem ich dann die Schreib-Berechtigung auf dem Zielsystem gebe (Anpassen der Berechtigung der lokalen CMD.EXE nicht vergessen) . Bedenke auch, dass von dem angegebenen Account nicht nur im Zielverzeichnis geschrieben, sondern auch im Quellverzeichnis gelesen werden muss ... Zitieren Link zu diesem Kommentar
TheDonMiguel 11 Geschrieben 10. September 2006 Autor Melden Teilen Geschrieben 10. September 2006 Also ich habe nun deinen Rat befolgt und einen User im AD angelegt. Mit diesem Account versuchte ich nun den Task laufen zu lassen. Der kopiert aber noch immer nichts. Ausser, ich setzte auf der obersten Ebene die NTFS-Berechtigungen auf Full-Control. Ich denke, dass ich hier weitersuchen muss. AHA, Nun gehts! Das Problem lag an der NTFS Berechtigung. Die Struktur sieht wie folgt aus: "D:\Ordner1\Ordner2". Die Freigabe ist auf dem Ordner1 gesetzt. Die NTFS-Berechtiungen für den User wurde erst mit den Schreibberechtigungen ab Ordner2 definiert. Seitdem nun die Read Berechtigungen explizit auch ab Ordner1 definiert wurde, funktioniert es... Ich war bisher der Meihnung, dass es dennoch funktionieren soll. Schliesslich wird direkt in den Ordner gewechselt. Nun ja, es funktioniert. Danke für die Hilfe!!! Danke & Gruss, TDM Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.