Ответ
Есть несколько вещей, которые могут повлиять на это. Я знаю, что на этом сайте есть посты с подробным описанием различных способов решения этой проблемы; Этот пост направлен на то, чтобы объединить их и добавить мое собственное понимание этой проблемы, поскольку кто-то сам затронул ее.
Исправление, описанное в шаге 2, также можно использовать, чтобы не дать Windows 10 перезагрузить компьютер после установки обновлений Windows.
Это исправление работает и для осеннего обновления (1709). Вам нужно будет снова отключить задачу «Перезагрузка» и заново настроить разрешения безопасности, поскольку процесс обновления заменяет ее.
Шаг 1. Отключите таймеры пробуждения для всех профилей мощности
Ленивые технические блоггеры заставят вас поверить, что это конец ваших поисков. Несмотря на то, что этот шаг устранит несколько ошибочных отключений, существует ряд параметров и конфигураций, особенно в Windows 10, которые не соответствуют этому параметру независимо от вмешательства пользователя. Перейдите в Панель управления> Параметры электропитания. Отсюда выберите любой профиль мощности первым в списке и отключите «Таймеры пробуждения». Работа через все профили.
(Спасибо пользователю StackExchange olee22 за изображение)
В Windows 10 настоятельно рекомендуется исправить этот параметр для всех профилей питания , а не только для того, который вы выбрали. Различные Windows факультеты будут использовать разные профили; это повышает ваши шансы не проснуться.
Шаг 2. Отключите непослушную запланированную задачу «перезагрузки»
Примечание. Я создал сценарий PowerShell, который можно использовать для остановки перезагрузки системы Windows 10. Вы можете найти его здесь: https://github.com/seagull/disable-automaticrestarts
Папка запланированных задач Windows 10 UpdateOrchestrator содержит задачу под названием «перезагрузка». Эта задача активирует ваш компьютер для установки обновлений независимо от того, доступны ли они. Простого удаления его разрешения для пробуждения компьютера недостаточно; Windows просто отредактирует его, чтобы снова дать ему разрешение после того, как вы покинете планировщик задач.
На панели управления введите «Администрирование», а затем просмотрите планировщик задач.
Это задача, которую вы хотите - в разделе Библиотека планировщика задач> Microsoft> Windows> UpdateOrchestrator. Самые важные вещи, которые вы хотите сделать:
Отсюда вам нужно будет изменить разрешения для задачи, чтобы Windows не могла приставать к ней. Задача находится в C: \ Windows \ System32 \ Tasks \ Microsoft \ Windows \ UpdateOrchestrator . Это называется «Перезагрузка» без расширения файла. Щелкните правой кнопкой мыши, введите свойства и станьте владельцем . Наконец, настройте его так, чтобы отображалось следующее:
Здесь файл показан с правами только для чтения для SYSTEM. Сделайте так, чтобы ни у одной учетной записи не было прав на запись, даже ваших собственных (вы всегда можете изменить разрешения позже, если потребуется). Также убедитесь, что вы отключили все унаследованные разрешения для файла с помощью кнопки «Дополнительно» на этом экране, чтобы переопределить все существующие разрешения для корневой папки. Это на 100% остановит Windows от внесения изменений после того, как вы их внедрили.
Как только это будет установлено, вам больше не придется беспокоиться об этой запланированной задаче.
Примечание для Windows 1709 (Fall Creators 'Update)
В процессе установки Windows изменяются разрешения для файлов, поэтому после обновления обязательно просмотрите это руководство. Я слышал сообщения о том, что создается новая задача под названием «Установка электропитания переменного тока», для которой требуются те же действия, но к ней не добавлялась эта задача, созданная на моем собственном устройстве после установки обновления 16299.192 (исправление выпадения 2018-01), поэтому Я не могу советовать с абсолютной уверенностью. Те же шаги, что выполняются выше, должны работать над любой поставленной задачей.
Шаг 3. Проверьте таймеры пробуждения в PowerShell
Вы отключили функцию таймера пробуждения, но Windows 10 имеет привычку не соблюдать этот параметр, поэтому для безопасности мы собираемся запустить команду PowerShell, чтобы отсеять все задачи, которые могут, по возможности, разбудить ваш компьютер. Откройте административную командную строку PowerShell («Пуск», введите «Powershell», Ctrl + Shift + Enter) и поместите эту команду в окне:
Get-ScheduledTask | where {$_.settings.waketorun}
Пройдите по всем задачам, которые он перечисляет, и удалите их разрешение, чтобы разбудить компьютер. Вам не нужно беспокоиться о разрешениях, как мы сделали с Reboot; это был отдаленный случай.
Шаг 4: Проверьте, какое оборудование может разбудить ваш компьютер
Многие USB-устройства, когда они задействованы, могут разбудить ваш компьютер (например, клавиатура часто делает это при нажатии клавиш); wake-on-LAN, как правило, также является проблемой в этом сценарии. Для непосвященных, общая и полезная функция современного оборудования называется «Пробуждение по локальной сети». Если ваше устройство подключено к локальной сети с помощью проводного кабеля Ethernet (оно не работает для Wi-Fi), вы можете отправлять сообщения, которые разбудят ваш ПК при получении. Я часто использую эту функцию, но ее нужно привести в соответствие, поскольку ее поведение по умолчанию слишком переусердствовало.
Введите следующую команду в командной строке администратора:
powercfg -devicequery wake_armed
Отсюда найдите устройства в диспетчере устройств (панели управления) и на вкладке «Управление питанием» удалите их возможность разбудить компьютер. Если у вас есть сетевые карты, для которых вы хотите сохранить Wake-on-LAN, включите «Разбудить это устройство только в том случае, если он получает магический пакет», а не для пробуждения всего трафика, отправляемого на его пути.
Шаг 5. Проверьте групповую политику, чтобы быть полностью уверенным
Щелкните правой кнопкой мыши меню «Пуск» и выберите «Выполнить». Введите GPEdit.MSC. Найдите следующий параметр в разделе «Конфигурация компьютера»> «Административные шаблоны»> «Компоненты Windows»> «Обновления Windows»> «Включение управления питанием Центра обновления Windows» для автоматического пробуждения системы для установки запланированных обновлений. Дважды щелкните его и установите для него значение «Отключено».
Шаг 6: отключите пробуждение вашей машины для автоматического обслуживания
У кого-то в Microsoft есть чувство юмора к этому. Если вы просыпаетесь ночью от своего компьютера, единственное, что вы хотите услышать больше всего на свете, - это хруст жесткого диска, когда он выполняет ночную дефрагментацию. Отключите эту функцию, найдя раздел «Безопасность и обслуживание» панели управления. Оттуда разверните «Обслуживание» и найдите ссылку «Изменить настройки обслуживания».
Установите время для чего-то более общительного (7PM в порядке) и отключите способность машины просыпаться для выполнения этой задачи.
Reboot
файл определения задачи на уровне NTFS и сократить подлого злобного пользователя sordidSYSTEM
(ab) до простого разрешения на чтение и исполнение. Надо помнить о подходе, подходящем для глупостей, если Microsoft решит развернуть дальнейшие вредоносные махинации с враждебными руками. Как и в великой песне Босса, этим утром я проснулся в пустом небе, где прошлой ночью были несохраненные облака данных в блокноте и на вкладках IE. ОС, жертвующая пользовательскими данными на алтаре Update & Reboot, явно не справляется со своей задачей.