2015-09-14 20:06:52 +0000 2015-09-14 20:06:52 +0000
245
245
Advertisement

Impedire definitivamente ai timer di svegliare il desktop di Windows 10

Advertisement

Come si fa a fermare il risveglio di un desktop Windows 10 dallo stato di sospensione/ibernazione senza l'intervento dell'utente?

Per molti utenti questo non sarà un problema ma, se dormi nella stessa stanza del tuo PC, avere la tua macchina che si sveglia alle 3:30 del mattino per scaricare gli aggiornamenti è irritante.

Advertisement

Risposte (3)

377
377
377
2015-09-14 20:39:07 +0000

Riassunto

Ci sono diverse cose che possono influire su questo. Sono consapevole che ci sono post in tutto il sito che descrivono in dettaglio vari modi diversi per affrontare il problema; questo post mira a consolidarli e ad aggiungere il mio punto di vista sul problema come qualcuno che ne è stato colpito personalmente.

La correzione descritta al punto 2 può anche essere usata per impedire a Windows 10 di riavviare la macchina dopo l'installazione degli aggiornamenti di Windows.

Questo fix funziona anche per il Fall Update (1709). Avrete bisogno di disabilitare nuovamente il task ‘Reboot’ e riconfigurare i permessi di sicurezza, però, perché il processo di aggiornamento lo sostituisce.

Passo 1: Disabilitare i timer di risveglio per tutti i profili di alimentazione

I pigri tech-blogger vorrebbero farvi credere che questa sia la fine della vostra ricerca. Mentre è vero che questo passo eliminerà alcuni spegnimenti errati, ci sono un certo numero di impostazioni e configurazioni, in particolare in Windows 10, che non rispettano questa impostazione indipendentemente dall'intervento dell'utente. Andate nel Pannello di controllo → Opzioni di alimentazione. Da qui, scegliete qualsiasi profilo di alimentazione sia il primo della lista e disabilitate “Timer di risveglio”. Lavorate attraverso tutti i profili.

Grazie all'utente StackExchange olee22 per l'immagine.

Su Windows 10, si raccomanda vivamente di fissare questa impostazione per tutti i profili di alimentazione , non solo quello che si è scelto di utilizzare. Diverse facoltà di Windows useranno profili diversi; questo migliora le vostre possibilità di non essere svegliati.

Passo 2: Disabilitare l'indisciplinato reboot compito programmato

Nota: Ho creato uno script PowerShell che può essere utilizzato per fermare il riavvio del sistema Windows 10. Potete trovarlo qui: github.com/seagull/disable-automaticrestarts .

La cartella dei compiti programmati di UpdateOrchestrator di Windows 10 contiene un compito chiamato “reboot”. Questo compito sveglierà il computer per installare gli aggiornamenti, indipendentemente dal fatto che siano disponibili o meno. Rimuovere semplicemente il suo permesso di svegliare il computer non è sufficiente; Windows lo modificherà per darsi di nuovo il permesso dopo aver lasciato il Task Scheduler.

Dal tuo pannello di controllo, entra in Strumenti di amministrazione, quindi visualizza il tuo Task Scheduler.

Questo è il compito che vuoi - sotto Task Scheduler Library → Microsoft → Windows → UpdateOrchestrator. Le cose più importanti che vuoi fare sono:

Da qui, dovrai alterare i permessi per il task in modo che Windows non possa molestarlo. Il task si trova in C:\Windows\System32\Tasks\Microsoft\Windows\UpdateOrchestrator. Si chiama Reboot senza estensione di file. Cliccate con il tasto destro del mouse, entrate nelle proprietà e rendetevi il proprietario . Infine, configuralo in modo che venga mostrato quanto segue:

Qui il file è mostrato con permessi di sola lettura per SYSTEM. Fate in modo che nessun account abbia accesso in scrittura, nemmeno il vostro (potete sempre cambiare i permessi in seguito se ne avete bisogno). Assicurati anche di disabilitare qualsiasi permesso ereditato per il file dal pulsante Avanzate su questa schermata, per sovrascrivere qualsiasi permesso esistente sulla cartella principale. Questo impedirà al 100% a Windows di incasinare le tue modifiche dopo che le hai implementate.

Una volta che questo è stato impostato, non dovrai più preoccuparti di quel compito programmato.

Se non hai i permessi per alterare i task UpdateOrchestrator

Alterare i task UpdateOrchestrator ora richiede i permessi SYSTEM, né administratorTrustedInstaller. Uno dei modi per aggirare questo è :

  1. Installando il proprio PsTools di Microsoft.
  2. Aprire il Prompt dei comandi come amministratore e cd nella tua cartella locale PsTools.
  3. Esecuzione: psexec.exe -i -s %windir%\system32\mmc.exe /s taskschd.msc
  4. Andare nella cartella UpdateOrchestrator e disabilitare il/i task Reboot, come precedentemente detto.

Nota per Windows 1709 (Fall Creators’ Update)

Il processo di installazione di Windows cambia i permessi dei file, quindi assicurati di ripassare questa guida dopo l'aggiornamento.

Ho sentito dire che è stato creato un nuovo compito chiamato AC Power Install che richiede gli stessi passi applicati ad esso, ma non ho visto questo compito prodotto sul mio dispositivo dopo aver installato l'aggiornamento 16299.192 (2018-01 Meltdown patch) quindi non posso consigliare con assoluta certezza. Gli stessi passi eseguiti sopra dovrebbero funzionare su qualsiasi compito che è stato introdotto.

Passo 3: Controllare i timer di risveglio in PowerShell

Avete disabilitato la funzionalità del timer di risveglio, ma Windows 10 ha l'abitudine di non rispettare questa impostazione, quindi per essere sicuri, stiamo per eseguire un comando PowerShell per estirpare tutte le attività che possono, plausibilmente, svegliare il PC. Aprite un prompt dei comandi PowerShell amministrativo (Start, digitate ‘Powershell’, Ctrl+Shift+Enter) e inserite questo comando nella finestra:

Get-ScheduledTask | where {$_.settings.waketorun}

Passa attraverso tutti i compiti che elenca e rimuovi il loro permesso di svegliare il tuo computer. Non dovreste aver bisogno di preoccuparvi dei permessi come abbiamo fatto con Reboot; quello era un caso eccezionale.

Passo 4: Controlla quale hardware può svegliare il tuo PC

Un sacco di USB L'hardware, quando è impegnato, ha la capacità di svegliare il PC (le tastiere spesso lo fanno quando vengono premuti i tasti, per esempio); il wake-on-LAN è tipicamente un problema anche in questo scenario. Per chi non lo sapesse, una caratteristica comune e utile dell'hardware moderno è chiamata ‘Wake on LAN’. Se il tuo dispositivo è collegato a una rete locale per mezzo di un cavo Ethernet cablato (non funziona per il Wi-Fi) puoi inviare comunicazioni attraverso le quali il tuo PC si sveglierà quando verrà ricevuto. È una caratteristica che uso spesso, ma deve essere allineata, poiché il suo comportamento di default è troppo zelante.

Inserite il seguente comando in un prompt dei comandi amministrativi:

powercfg -devicequery wake_armed

Da qui, trova i dispositivi nella tua Gestione dispositivi (Pannello di controllo) e, sotto la scheda Gestione energia, rimuovi la loro capacità di svegliare il computer. Se hai delle schede di interfaccia di rete per le quali vuoi mantenere Wake-on-LAN, abilita solo il risveglio di questo dispositivo se riceve un pacchetto magico, invece di svegliarsi per tutto il traffico inviato.

Passo 5: Controlla i Criteri di gruppo solo per essere completamente sicuro

Fai clic con il tasto destro del mouse sul menu Start e seleziona Esegui. Digita GPEdit.MSC. Trova la seguente impostazione sotto Configurazione del computer → Modelli amministrativi → Componenti di Windows → Aggiornamenti di Windows → Abilitazione della gestione energetica di Windows Update per svegliare automaticamente il sistema per installare gli aggiornamenti programmati. Fate doppio clic su di essa e impostatela su Disabilitato.

Passo 6: Disabilitare il risveglio della macchina per la manutenzione automatica

Qualcuno alla Microsoft ha il senso dell'umorismo per questo. Se sei svegliato di notte dal tuo PC, l'unica cosa che vuoi sentire più di ogni altra cosa è il disco rigido che scricchiola e macina mentre fa una deframmentazione notturna. Disabilitate questa funzione trovando la sezione Sicurezza e manutenzione del Pannello di controllo. Da lì, espandete la Manutenzione e cercate il link per cambiare le impostazioni di manutenzione.

Imposta l'ora a qualcosa di più socievole (7PM va bene) e disabilita la capacità della macchina di svegliarsi da sola per questo compito.

26
26
26
2016-04-20 22:10:26 +0000

Ora uso questo script per Fermare definitivamente i timer di risveglio del desktop di Windows 10:

# disable wake for enabled scheduled tasks that are allowed to wake
Get-ScheduledTask |
?{ $_.Settings.WakeToRun -eq $true -and $_.State -ne 'Disabled' } |
%{
    write-host $_
    $_.Settings.WakeToRun = $false;
    Set-ScheduledTask $_
}

# disable wake for devices that are allowed to wake (list of wake capable devices: powercfg -devicequery wake_from_any)
powercfg -devicequery wake_armed |
%{
    write-host $_
    if ($_ -notmatch '^(NONE)?$')
    { powercfg -devicedisablewake $_ }
}

# disable wake timers for all power schemes
powercfg -list | Select-String 'GUID' |
%{
    write-host $_
    $guid = $_ -replace '^.*:\s+(\S+?)\s+.*$', '$1'
    powercfg -setdcvalueindex $guid SUB_SLEEP RTCWAKE 0
    powercfg -setacvalueindex $guid SUB_SLEEP RTCWAKE 0
}

# disable wake for automatic updates and for automatic maintenance
'HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU\AUPowerManagement', 
'HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Schedule\Maintenance\WakeUp' |
%{
    write-host $_
    $key = split-path $_
    $name = split-path $_ -leaf
    $type = 'DWORD'
    $value = 0
    if (!(Test-Path $key))
    { New-Item -Path $key -Force | Out-Null }
    if ((Get-ItemProperty $key $name 2>$null).$name -ne $value)
    { Set-ItemProperty $key $name $value -type $type }
}

Come si può vedere, più o meno affronta tutti i passaggi menzionati in questa risposta tranne che per i permessi del file delle attività programmate. Tuttavia, dato che ho intenzione di eseguire silenziosamente questo script ad ogni sblocco/accesso, spero che questo non sia affatto un problema.

11
Advertisement
11
11
2016-11-18 02:33:02 +0000

Ho trovato l'altra risposta incredibilmente utile, e vorrei solo commentare se potessi, ma volevo contribuire con un pezzo di software che ho scritto rapidamente per aiutare con i passi 3 & 4 trovati qui: https://github.com/Omniru/System-Wake-Manager/wiki/Home-&-Download

Spero che sia utile a qualcuno.

Potreste vedere questo pop up e dover cliccare “More info” e poi “Run anyway” (se non siete sicuri, sentitevi liberi di controllare il codice sorgente, è su github dopo tutto):

Advertisement
Advertisement