Udostępnij przez


Planowanie skanowania antywirusowego przy użyciu programu PowerShell

W tym artykule opisano sposób konfigurowania zaplanowanych skanów za pomocą polecenia cmdlet Set-MpPreference programu PowerShell. Aby dowiedzieć się więcej na temat planowania skanowania i typów skanowania, zobacz About scheduled quick or full Microsoft Defender Antivirus scans (Informacje o zaplanowanych szybkich lub pełnych skanowaniach antywirusowych).

Wymagania wstępne

Obsługiwane systemy operacyjne:

  • System Windows
  • Serwer z systemem Windows

Ważne parametry programu PowerShell dla zaplanowanych skanów

Następujące parametry Set-MpPreference są ważne dla zaplanowanych skanów:

  • ScanParameters: określa typ skanowania do użycia w przypadku zaplanowanych skanów. Prawidłowe wartości to:

    • 1 lub QuickScan (wartość domyślna)
    • 2 lub FullScan
  • ScanScheduleDay: określa dzień tygodnia do uruchomienia zaplanowanych skanów. Prawidłowe wartości to:

    • 0 lub Codziennie (ustawienie domyślne)
    • 1 lub niedziela
    • 2 lub poniedziałek
    • 3 lub wtorek
    • 4 lub środa
    • 5 lub czwartek
    • 6 lub piątek
    • 7 lub sobota
    • 8 lub Nigdy
  • ScanScheduleQuickScanTime: określa czas uruchamiania zaplanowanych szybkich skanowania na komputerze lokalnym. Aby określić wartość, wprowadź ją jako przedział czasu: hh:mm:ss gdzie hh = godziny, mm = minuty i ss = sekundy. Na przykład 13:30:00 wskazuje godzinę 13:30. Wartość domyślna to 02:00:00 (2:00).

  • ScanScheduleTime: określa czas uruchamiania zaplanowanych pełnych skanów na komputerze lokalnym. Aby określić wartość, wprowadź ją jako przedział czasu: hh:mm:ss gdzie hh = godziny, mm = minuty i ss = sekundy. Na przykład 13:30:00 wskazuje godzinę 13:30. Wartość domyślna to 02:00:00 (2:00).

  • ScanScheduleOffset: określa stałą liczbę minut opóźnienia zaplanowanego czasu rozpoczęcia skanowania na urządzeniu. Wartość domyślna to 120, co oznacza, że zaplanowane skanowania rozpoczynają się 2 godziny po godzinach określonych przez parametry ScanScheduleTime i ScanScheduleQuickScanTime .

  • RandomizeScheduleTaskTimes: określa, czy wybrać losowy czas zaplanowanych zadań (w tym zaplanowane skanowanie). Prawidłowe wartości to:

    • $true: Zaplanowane zadania rozpoczynają się w ciągu 30 minut przed zaplanowaną godziną lub po niej. Ta wartość jest wartością domyślną.
    • $false: zaplanowane zadania rozpoczynają się w zaplanowanym czasie.

    Losowe godziny rozpoczęcia mogą dystrybuować efekty skanowania. Jeśli na przykład kilka maszyn wirtualnych współużytkuje ten sam host, losowe czasy rozpoczęcia uniemożliwiają uruchamianie zaplanowanych zadań przez wszystkie maszyny wirtualne w tym samym czasie.

  • SchedulerRandomizationTime: określa przedział czasu w minutach, w którym zaplanowane zadania w Microsoft Defender (w tym zaplanowane skanowania) mogą być uruchamiane losowo. Zaplanowane zadania mogą być uruchamiane w ciągu określonej liczby minut przed lub po godzinie zaplanowanego zadania. Prawidłowa wartość to liczba całkowita od 0 do 4294967295.

    Przedział czasu randomizacji jest używany wokół określonych wartości czasu rozpoczęcia (na przykład parametrów ScanScheduleTime i ScanScheduleQuickScanTime ) lub około liczby minut określonej przez parametr ScanScheduleOffset .

  • ScanOnlyIfIdleEnabled: określa, czy zaplanowane skanowanie ma być uruchamiane tylko wtedy, gdy komputer nie jest używany. Prawidłowe wartości to:

    • $true: usługa Windows Defender uruchamia harmonogramy skanowania, gdy komputer jest włączony, ale nie jest używany. Ta wartość jest wartością domyślną.
    • $false: usługa Windows Defender uruchamia harmonogramy skanowania, gdy komputer jest używany.

Porada

Zalecamy następujące ustawienia dla zaplanowanych szybkich skanów:

  • Włączono ochronę w czasie rzeczywistym (-DisableRealtimeMonitoring $falsewartość domyślna).
  • Włączono usługę Cloud Protection.
  • Łączność sieciowa z zapleczem usługi Cloud Protection.

Planowanie codziennych szybkich skanów przy użyciu programu PowerShell

W tym przykładzie dzienne zaplanowane szybkie skanowanie jest ustawiane na ±4 minut od godziny 12:30. Prawdopodobnie urządzenie jest włączone, ale aktywność na urządzeniu jest prawdopodobnie minimalna (obiad).

Set-MpPreference -ScanScheduleQuickScanTime 12:30:00 -ScanScheduleOffset 0 -RandomizeScheduleTaskTimes $false -ScanOnlyIfIdleEnabled $false

W tym poleceniu nie trzeba używać następujących parametrów:

  • ScanParameters: wartość domyślna to 0 (QuickScan).
  • ScanScheduleDay: wartość domyślna to 0 (Codziennie).

Planowanie cotygodniowych pełnych skanów za pomocą programu PowerShell

W tym przykładzie zaplanowano cotygodniowe pełne skanowanie w każdą środę o godzinie ±4 minut od 12:30.

Set-MpPreference -ScanParameters FullScan -ScanScheduleDay Wednesday -ScanScheduleQuickScanTime 12:30:00 -ScanScheduleOffset 0 -RandomizeScheduleTaskTimes $false

Ogólne parametry programu PowerShell dla zaplanowanych skanów

Następujące parametry Set-MpPreference są również dostępne dla zaplanowanych skanów:

  • CheckForSignaturesBeforeRunningScan: określa, czy należy sprawdzić, czy nie ma nowych definicji wirusów i programów szpiegujących, zanim usługa Windows Defender uruchomi zaplanowane skanowanie. Prawidłowe wartości to:

    • $true: usługa Windows Defender sprawdza nowe definicje przed uruchomieniem zaplanowanego skanowania.
    • $false: zaplanowane skanowanie rozpoczyna się od istniejących definicji. Ta wartość jest wartością domyślną.
  • ScanAvgCPULoadFactor: określa maksymalne procentowe użycie procesora CPU dla skanowania. Prawidłowa wartość to liczba całkowita z zakresu od 5 do 100. Wartość domyślna to 50. Wartość 0 wyłącza ograniczanie przepustowości procesora CPU. Ta wartość nie jest twardym limitem, ale raczej wskazówkami dotyczącymi średniego przekroczenia określonej wartości przez aparat skanowania.

    Wartość tego parametru jest ignorowana, jeśli oba poniższe warunki są spełnione:

    • Wartość parametru ScanOnlyIfIdleEnabled jest $true (skanuj tylko wtedy, gdy komputer nie jest używany).
    • Wartość parametru DisableCpuThrottleOnIdleScans to $true (wyłącz ograniczanie przepustowości procesora CPU podczas skanowania bezczynnego).
  • DisableCpuThrottleOnIdleScans: określa, czy wyłączyć ograniczanie przepustowości procesora CPU dla zaplanowanych skanów, gdy urządzenie jest bezczynne (mniej niż 90% wykorzystania procesora CPU). Prawidłowe wartości to:

    • $true: Procesor CPU nie jest ograniczany w przypadku zaplanowanych skanów, niezależnie od wartości parametru ScanAvgCPULoadFactor . Ta wartość jest wartością domyślną.
    • $false: Procesor CPU jest ograniczany w przypadku zaplanowanych skanów.
  • EnableLowCpuPriority: określa, czy należy włączyć używanie niskiego priorytetu procesora CPU dla zaplanowanych skanów. Prawidłowe wartości to:

    • $true: usługa Windows Defender używa niskiego priorytetu procesora CPU w przypadku zaplanowanych skanów. Ta wartość jest wartością domyślną.
    • $false: usługa Windows Defender nie używa niskiego priorytetu procesora CPU w przypadku zaplanowanych skanów.
  • DisableCatchupFullScan: określa, czy wyłączyć skanowanie catch-up dla nieodebranych zaplanowanych pełnych skanów. Prawidłowe wartości to:

    • $true: usługa Windows Defender nie uruchamia skanowania catch-up dla nieodebranych zaplanowanych pełnych skanów. Ta wartość jest wartością domyślną.
    • $false: Po dwóch nieudanych zaplanowanych pełnych skanowaniach usługa Windows Defender uruchamia skanowanie catch-up przy następnym logowaniu się do komputera.
  • DisableCatchupQuickScan: określa, czy wyłączyć skanowanie catch-up dla nieodebranych zaplanowanych szybkich skanów. Prawidłowe wartości to:

    • $true: usługa Windows Defender nie uruchamia skanowania nadrabiania zaległości w przypadku nieodebranych zaplanowanych szybkich skanów. Ta wartość jest wartością domyślną.
    • $false: Po dwóch nieudanych zaplanowanych szybkich skanowaniach usługa Windows Defender uruchamia skanowanie catch-up przy następnym zalogowaniu się do komputera.
  • EnableFullScanOnBatteryPower: określa, czy włączyć pełne skanowanie podczas zasilania z baterii. Prawidłowe wartości to:

    • $true: usługa Windows Defender wykonuje pełne skanowanie podczas pracy z baterią.
    • $false: usługa Windows Defender nie wykonuje pełnych skanów podczas pracy z baterią. Ta wartość jest wartością domyślną

Aby uzyskać więcej informacji, zobacz Use PowerShell cmdlets to configure and manage Microsoft Defender Antivirus and Program antywirusowy Defender cmdlets (Konfigurowanie Microsoft Defender antywirusowych i Program antywirusowy Defender poleceń cmdlet oraz zarządzanie nimi.

Parametry programu PowerShell dla zaplanowanych skanów w celu ukończenia korygowania

Zaplanowane pełne skanowanie w celu ukończenia korygowania przy użyciu następujących parametrów:

  • RemediationScheduleDay: określa dzień tygodnia, w którym ma zostać uruchomione skanowanie. Prawidłowe wartości to:

    • 0 lub Codziennie (ustawienie domyślne)
    • 1 lub niedziela
    • 2 lub poniedziałek
    • 3 lub wtorek
    • 4 lub środa
    • 5 lub czwartek
    • 6 lub piątek
    • 7 lub sobota
    • 8 lub Nigdy
  • RemediationScheduleTime: określa czas uruchomienia skanowania na komputerze lokalnym. Aby określić wartość, wprowadź ją jako przedział czasu: hh:mm:ss gdzie hh = godziny, mm = minuty i ss = sekundy. Na przykład 13:30:00 wskazuje godzinę 13:30. Wartość domyślna to 02:00:00 (2:00).

Zobacz też

Rozwiązywanie problemów ze skanowaniem programu antywirusowego Microsoft Defender

Konfigurowanie programu antywirusowego Microsoft Defender i zarządzanie nim za pomocą poleceń cmdlet programu PowerShell

Ustawianie polecenia cmdlet programu PowerShell w celu skonfigurowania programu antywirusowego Microsoft Defender i zarządzania nim

Program antywirusowy Defender określonych funkcji programu PowerShell

Porada

Jeśli szukasz informacji związanych z programem antywirusowym dla innych platform, zobacz następujące zasoby:

Porada

Chcesz dowiedzieć się więcej? Zaangażuj się w społeczność rozwiązań zabezpieczających firmy Microsoft w naszej społeczności technicznej Społeczność techniczna usługi Ochrona punktu końcowego w usłudze Microsoft Defender.