| Termin | Definicja |
|---|---|
| Nie działa harmonogram zadań uruchamiający PowerShell | Niedziałający harmonogram zadań uruchamiający PowerShell wskazuje na politykę wykonywania skryptów (Execution Policy) blokującą uruchomienie w kontekście zaplanowanego zadania. Czym jest problem z harmonogramem zadań uruchamiającym PowerShellJeżeli skrypt PowerShell działa po ręcznym uruchomieniu, lecz nie wykonuje się po wywołaniu z Harmonogramu zadań, przyczyna zwykle nie leży w samym języku skryptowym. Zadanie działa w określonym kontekście użytkownika, z własnymi uprawnieniami, zmiennymi środowiskowymi, katalogiem roboczym i zasadami bezpieczeństwa. Różnice między uruchomieniem interaktywnym a automatycznym mogą spowodować, że poprawny skrypt nie znajdzie pliku, nie uzyska dostępu do zasobu sieciowego albo zostanie zatrzymany przed wykonaniem pierwszej instrukcji. Znaczenie ma także sposób zdefiniowania akcji. Harmonogram powinien uruchamiać właściwy program PowerShell, a ścieżka do skryptu powinna być przekazana jako argument. Warto unikać polegania na bieżącym katalogu, skrótach, mapowanych dyskach oraz ustawieniach dostępnych wyłącznie w profilu zalogowanej osoby. Przydatne jest również włączenie historii zadania i sprawdzenie kodu zakończenia, ponieważ sam fakt zmiany statusu na „uruchomiono” nie oznacza jeszcze poprawnego wykonania wszystkich poleceń. Kontekst techniczny i porównanie sposobów uruchamiania - Nie działa harmonogram zadań uruchamiający PowerShellRęczne uruchomienie skryptu odbywa się zazwyczaj w otwartej sesji, w której są już załadowane profile, poświadczenia, moduły i zmienne środowiskowe. Zadanie zaplanowane może działać bez zalogowanego użytkownika, z ograniczonym tokenem dostępu i przy zastosowaniu innej wersji programu PowerShell. Trzeba więc rozdzielić kilka elementów: konto wykonujące zadanie, warunek rozpoczęcia, akcję, parametry, katalog roboczy oraz zachowanie w przypadku błędu. W praktyce korzystne jest użycie pełnej ścieżki do pliku wykonywalnego i skryptu, jawne przekazanie parametrów oraz zapis diagnostyczny do pliku lub Dziennika zdarzeń. Dla zadań wymagających dostępu do folderów, rejestru albo zasobów sieciowych należy zweryfikować, czy konto przypisane do zadania ma odpowiednie uprawnienia. Gdy używany jest udział sieciowy, litera dysku widoczna w sesji użytkownika może nie istnieć w sesji uruchamianej przez Harmonogram. Stabilniejszym rozwiązaniem bywa odwołanie do pełnej ścieżki sieciowej, o ile konto ma do niej dostęp. Warto sprawdzić również ustawienia zasad wykonywania skryptów obowiązujące dla konkretnego zakresu, na przykład dla bieżącego procesu, użytkownika lub całego komputera. Nie powinno się jednak obniżać zabezpieczeń bez ustalenia, jaki mechanizm zatrzymuje skrypt. Bezpieczniej jest potwierdzić źródło pliku, poprawić sposób jego wywołania i zastosować zakres ustawień ograniczony do wymaganego zadania, jeżeli polityka organizacyjna na to pozwala. Typowe problemy, błędy i objawy - Nie działa harmonogram zadań uruchamiający PowerShellNajczęściej spotykane są niepoprawne argumenty akcji, brak cudzysłowów przy ścieżkach zawierających spacje, wskazanie nieistniejącego katalogu roboczego oraz uruchamianie niewłaściwej wersji PowerShell. Problem może też powodować użycie ścieżki względnej, odwołanie do pliku znajdującego się w profilu innego użytkownika albo oczekiwanie na interakcję, której zadanie działające w tle nie może wyświetlić. Do częstych przyczyn należą także:
Pomocne jest uruchomienie tej samej komendy w oknie PowerShell otwartym z uprawnieniami odpowiadającymi konfiguracji zadania, a następnie porównanie wyniku z wykonaniem interaktywnym. Należy sprawdzić historię zadania, dzienniki systemowe, komunikaty z PowerShell oraz pliki logów generowane przez skrypt. Jeżeli zadanie uruchamia proces, który kończy się natychmiast, przyczynę można przeoczyć bez jawnego zapisywania standardowego wyjścia i błędów. Kiedy najlepiej przekazać urządzenie do naprawy - Nie działa harmonogram zadań uruchamiający PowerShellZgłoszenie do serwisu jest uzasadnione, gdy harmonogram ma wykonywać kopie plików, czynności administracyjne, skrypty konserwacyjne lub operacje zależne od sieci, a kolejne próby kończą się bez czytelnego komunikatu. Szczególnie wskazana jest pomoc wtedy, gdy problem pojawił się po aktualizacji systemu, zmianie konta, podłączeniu komputera do domeny albo modyfikacji zasad bezpieczeństwa. W takich przypadkach sprawdzenia wymagają jednocześnie konfiguracja zadania, uprawnienia, logi systemowe i działanie samego skryptu. W ramach Warszawskiego Pogotowia Komputerowego 24/7 można zlecić analizę laptopa, a diagnoza laptopa jest darmowa. Przed przekazaniem sprzętu warto przygotować nazwę zadania, moment wystąpienia problemu, komunikaty z historii Harmonogramu oraz informację, czy skrypt działa po ręcznym uruchomieniu. Ułatwia to odtworzenie warunków błędu i ocenę, czy przyczyną jest konfiguracja systemu, dostęp do zasobów, polityka bezpieczeństwa, czy błąd w samym skrypcie. |