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é administrator
né TrustedInstaller
.
Uno dei modi per aggirare questo è :
- Installando il proprio
PsTools
di Microsoft.
- Aprire il Prompt dei comandi come amministratore e
cd
nella tua cartella locale PsTools
.
- Esecuzione:
psexec.exe -i -s %windir%\system32\mmc.exe /s taskschd.msc
- 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.