Fragensteller
Aufgabenplanung - Trigger funktioniert nicht

Allgemeine Diskussion
-
Moin
ich habe ein Problem mit der Aufgabenplanung auf einem Windows Server 2016 Core.
Es gibt folgende Aufgabe die im 15 Minuten Takt ein PowerShell Script starten soll.schtasks /query /v /fo list /tn XXX
Ordner: \ Hostname: XXX Aufgabenname: \XXX N„chste Laufzeit: 22.03.2017 15:11:00 Status: Bereit Anmeldemodus: Interaktiv/Hintergrund Letzte Laufzeit: 22.03.2017 14:27:32 Letztes Ergebnis: 0 Autor: XXX\Administrator Auszufhrende Aufgabe: %SystemRoot%\system32\WindowsPowerShell\v1.0\powershell.exe -Command "C:\XXX.ps1" Starten in: Nicht zutreffend Kommentar: Nicht zutreffend Status der geplanten Aufgabe: Aktiviert Leerlaufzeit: Deaktiviert Energieverwaltung: Als Benutzer ausfhren: Administrator Aufgabe l”schen, falls nicht verlegt: Deaktiviert Aufgabe beenden, falls sie X St. und X Min. ausgefhrt wird: 01:00:00 Zeitplan: Zeitplaninformationen sind in diesem Format nicht verfgbar. Zeitplantyp: T„glich Startzeit: 09:11:00 Startdatum: 22.03.2017 Enddatum: Nicht zutreffend Tage: Alle 1 Tag(e) Monate: Nicht zutreffend Wiederholung: Jede(n): 0 Stunde(n), 15 Minute(n) Wiederholung: Bis: Zeit: Keine Wiederholung: Bis: Dauer: 24 Stunde(n), 0 Minute(n) Wiederholung: Beenden, falls immer noch ausgefhrt: Deaktiviert
Wenn ich die Aufgabe "händisch" mit schtasks /run oder Start-ScheduledTask triggere läuft diese ohne Probleme und startet mein Script.
Wenn ich auf den Zeit trigger in der Aufgabe warte wird das Script nicht gestartet:
Get-ScheduledTaskInfo XXX LastRunTime : 22.03.2017 14:27:27 LastTaskResult : 0 NextRunTime : 22.03.2017 15:26:26 NumberOfMissedRuns : 3 TaskName : XXX TaskPath : PSComputerName :
Nach je 15 Minuten steigt NumberOfMissedRuns um 1. LastTaskResult bleibt auf 0. Das Script wird definitiv nicht ausgeführt.
In beiden Logs
Microsoft-Windows-TaskScheduler/Maintenance Microsoft-Windows-TaskScheduler/Operational
steht nicht interessantes warum die Aufgabe nicht ausgeführt wird.
Kann mir bitte wer sagen wo mein Fehler ist oder was ich übersehen habe?
Liebe Grüße
- Typ geändert Mihaela ParedesMicrosoft contingent staff, Moderator Dienstag, 4. April 2017 11:54 Keine Antworten vom Thema-Starter
- Verschoben Mihaela ParedesMicrosoft contingent staff, Moderator Mittwoch, 12. April 2017 10:00
Alle Antworten
-
Hallo,
In den Sicherheitsoptionen kann man zum einen angeben unter welchem Benutzerkonto der Task ausgeführt werden soll. In deinem Beispiel sieht man ja auch, dass der Task unter "Administrator" ausgeführt werden soll.Man kann in den Sicherheitsoptionen aber auch festlegen, ob der Task ausgeführt werden soll, wenn ein Benutzer angemeldet ist bzw. unabhängig von der Benutzeranmeldung ausgeführt werden soll. (und ob dann das Kennwort gespeichert werden soll, fall man im Task auf Remote-Resourcen zugreifen möchte.)
Ich könnte mir vorstellen, dass dieses Setting bei dir falsch eingestellt ist. Und darum geht NumberOfMissedRuns nach oben.
Mit dem Befehl schtasks /query /v /fo list sieht man leider nicht, welches Setting am Task gesetzt worden ist.Ich würde tatsächlich empfehlen den Task einmal über die gute alte taskschd.msc zu bearbeiten und zu überprüfen. Man kann in der taskschd.msc den Task dann als XML-File exportieren.
Dieses XML-File könnte man dann später über schtasks /create /xml jederzeit importieren, falls man auf Core angewiesen ist.Besten Gruß.
-
Hallo 0x4d2,
den geplanten Task über das GUI nochmal zu prüfen und neu einzurichten (wie von Karsten) ist eine gute Wahl.
Aber geplante Task unter einem Administrator-Konto zu starten, ist ein Sicherheitsproblem. Ich würde für jeden Job ein eigenes Benutzerkonto einrichten. Das ist sicher etwas aufwändiger, aber die Domain Admins sind nicht gedacht für irgendwelche Dienste.
Gruß Malte