04.10.2019 Секреты планировщика заданий в Windows | |
Работа операционной системы Windows - это совокупность сложных процессов, о которых большинство пользователей понятия не имеют. Так, к примеру, весь процесс эксплуатации системы сопровождается периодическим выполнением регламентированных задач, которые обслуживают систему в автоматическом режиме, без ведома и вмешательства пользователя. К таким процессам относится проверка наличия обновлений, создание резервных копий критически необходимых файлов, выполнение процедуры администрирования и многие другие. Для того, чтобы система спланировала и автоматически выполнила все множество этих операций, существует стандартное средство, которое так и называется - планировщик заданий. Планировщик заданий занимается тем, что заранее подготавливает ряд заданий и сам же запускает их выполнение в определенный промежуток времени. Также планировщик заданий может подстраиваться под событие, которое уже было запущено. Поставленные задачи и способы, обеспечивающие исполнение сценариев командной строки, скриптов WSH, командлеров PowerShell или приложений. В отличие от предыдущих версий Windows, Windows Vista, 7, 8 содержат обширную библиотеку предварительно настроенных заданий. Совокупность всех этих заданий выполняет широкий круг операций, которые необходимы операционной системы для поддержания ее рабочего состояния. Кроме этого, планировщик заданий в Windows 10 необходим для должной работы компонентов, которые не отключаются стандартными средствами ОС. Все задания в операционной системе выполняются по определенному расписанию. За это отвечает служба планировщика заданий. Эта служба, выполняет свою работу под руководством локальной системной учетной записи, но, также есть возможность настроить задания для выполнения в контексте учетных записей определенных пользователей. Только необходимо будет при создании задания указывать имя пользователя и пароль. Планировщик заданий настолько универсальный, что создать задачу можно не только для локального компьютера, но и для удаленного. Главное, чтобы у вас имелись особые права для управления. Используя соответствующего мастера, процесс создания заданий планировщика упрощается в разы. Какие бывают планируемые задания?Несмотря на то, что планируемые задания занимаются огромным количеством работы, их основных типов всего два: стандартные задания и скрытые. Стандартные задания занимаются автоматизацией повседневных задач, которые нужны для обслуживания компьютерной системы. Пользователь может всегда просмотреть эти задания и, в случае необходимости, внести свои изменения. Скрытые задания необходимы для автоматизации выполнения специальных системных задач. В стандартном режиме просмотра эти задания у вас не получится увидеть. Также не рекомендуется вносить изменения в такие задания. Это сделать можно, но только если вы точно знаете, что не навредите операционной системе. Свойства заданийЛюбое из заданий планировщика имеет свои собственные свойства. Первое из них - Триггер. Это свойство задает начало и конец выполнения для запланированного задания. Задание может начинать свою работу по расписанию или по определенным событиям. К примеру, при заходе пользователя в систему, при старте компьютера или ноутбука, при подключении или отключении терминальной сессии. Также старт задания может быть прописан определенным кодом в журнале системы. Следующее свойство - действие. Оно определяет операцию, которую должно выполнять установленное на запуск задание. В качестве исполнителя может быть приложение или прописанный сценарий. Также одним из свойств считается условие. Данный параметр отвечает за условия, которые влияют на запуск или остановки запущенного задания. К примеру, вы можете задать такое условие, при котором задание будет выполняться только лишь при наличии сетевого подключения. Благодаря условиям пользователю доступен запуск, остановка и перезапуск задания. И, последнее условие это - параметр. Данное условие необходимо для того, чтобы вносить дополнительные параметры, которые будут влиять на выполнение запланированного задания. К примеру, перезапуск после сбоя или некорректной работы, выполнение задания, которое не случилось ранее, поведение задания при уже запущенном другом задании. Параметры и настройки для запланированных заданий находятся в разделе реестра. Их можно найти по этому пути: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Schedule. Результаты после окончания работы запланированных заданий, заносятся в журнал. Записи в журнал можно отключить. Для этого вам необходимо в консоли управления планировщика заданий выбрать пункт "действие” и здесь отключить или включить запись в журнал всех заданий. Как управлять заданиями на локальных и удаленных системах?Управление заданиями на ОС Windows происходит благодаря специальной оснастке консоли управления Майкрософт - mmc.exe. Для того, чтобы ее запустить заходим в панель управления, находим пункт "Администрирование”, далее "Управление компьютером” и выбираем "Планировщик заданий”. Или же вызываем утилиту "выполнить” комбинацией клавиш "win+r” и прописываем команду "taskschd.msc”. Когда откроется новое окно, в левой его части вы увидите список заданий, которые будут упорядочены в соответствии с их назначением. Своего рода консольное дерево из папок. В середине окна вы видите информацию, которая касается состояния этих заданий и их свойств. В правой части будут отображено меню действий, которые можно совершать с указанными заданиями. Задания, которые отображаются по умолчанию, относятся к локальному компьютеру. Для того, чтобы начать работу с заданиями удаленного компьютера, кликаем правой кнопкой мыши по пункту в верхней части окна "Планировщик заданий (локальный)” и выбираем в меню "подключится к другому компьютеру”. В окне, которое откроется следующим, необходимо будет установить переключатель "другой компьютер” и ввести имя или IP-адрес нужного вам ПК или ноутбука. Для того, чтобы у вас была возможность управлять заданиями на другом компьютере, у вас должны быть права администратора. Если текущий пользователь таких прав не имеет, то подключаться к другому компьютеру нужно с использованием другой учетной записи, при этом включить режим "Подключаться как другой пользователь”. Также, не стоит забывать, что для любого удаленного подключения необходимо, разрешение брандмауэра. Одним из основных факторов удаленной работы с запланированными заданиями является соответствие версий операционных систем. К примеру, с Windows 7 у вас не получится подключиться к компьютеру, на котором будет установлена десятка. Для того, чтобы начать работать с заданием, по нему, в основной панели, необходимо щелкнуть правой кнопкой мыши и в контекстном меню выбрать одну из команд:
Все задания, которые создаются пользователем или любыми другими программами, можно спокойно изменять или вообще удалить без каких-либо проблем для самой операционной системы. Но те задания, которые создает сама операционная система, лучше не трогать, поскольку такого рода задания могут повлиять на дальнейшую работу ОС. Для того, чтобы выделить системные задания среди остальных, необходимо в меню "вид” установить отметку возле пункта "Отобразить скрытые задачи (Show hidden tasks)”. Задания, которые используются сейчасДля того, чтобы просмотреть, какие сейчас задания выполняются на вашем компьютере, выбираем верхний уровень структуры "Планировщик заданий”, кликаем правой кнопкой мыши и в контекстном меню выбираем пункт "Отображать все выполняемые задачи”. Также можно использовать пункт, который находится в основном меню "Действие”, а затем "Отображать все выполняемые задачи”. Создаем задания для планировщикаБиблиотеку планировщика заданий вы можете увидеть, если обратите внимание на левую часть окна оснастки планировщика, о котором говорилось выше. Она имеет сложную иерархическую структуру. Поэтому, чтобы освоить рабочие моменты в этой библиотеке, необходимо немного потренироваться. Для этого вам необходимо будет создать отдельную папку. Сделать это можно в контекстном меню, которое вызывается правой кнопкой мыши. Там вы увидите пункт "создать папку”. Назовите папку как вам будет угодно и создавайте свои тестовые или рабочие задания именно в ней. В качестве задания планировщика будем использовать задачу, которая будет выполнять запуск командного файла, который, в свою очередь, будет определять, с какими свойствами и уровнем доступа он выполняется. Также выведем на экран сообщение о текущем использовании файла. Создав такую задачу, вы сможете самостоятельно выполнить некоторые настройки свойств задания. Для того, чтобы проверить уровень привилегий нужно использовать стандартную команду "whoami” в связке с командой "find”. Для того, чтобы настроить вывод сообщения, команда "msg”. После того, как командный файл будет выполнен, на экране появится сообщение "Задача выполняется с правами администратора” или "Задача выполняется с правами пользователя (имя)”. У нас командный файл будет иметь имя "who-admin.bat”. Если вы захотите, то сможете сменить используемые команды и принцип определения привилегий. Список вышеупомянутых вы сможете легко найти в интернете. К примеру, содержимое файла, которому мы дали название "who-admin.bat”, может быть таким: @echo OFF Для создания такого файла подойдет обычный текстовый редактор. Просто скопируйте вышенаписанный код, и назовите текстовый файл "who-admin.bat”. Для того, чтобы ввести все правильно и теми же знаками, необходимо использовать DOS кодировку (CP866, кодовую страницу 866) или изменить текст сообщений для ввода на английском языке. Если в текстовом редакторе нет поддержки кириллицы DOS кодировки, можно использовать сторонние программы, по типу "iconv”. Также можно использовать онлайн-сервис, типа универсального декодера-конвертора кириллицы. Для того, чтобы создать задачу планировщика можно использовать два мастера, которые можно вызвать через режим "создать простую задачу” и "создать задачу”. Когда вы будете создавать простую задачу, вам будет доступен минимальный набор параметров, в которых не будет большого количества условий выполнения и разнообразия действий. Для того, чтобы создать новую задачу, нужно сделать следующее: Используем пункт меню "действие” и в нем находим "создать задачу”. В открывшемся окне у вас сразу будет открыта вкладка "Общие”. Здесь вам необходимо ввести имя задания и его описание. Пускай имя будет Test, а описание "Test Test”. В описании вы можете написать все что угодно. Главное, чтобы написанный текст отображал смысл выполняемого задания. Все остальные настройки можно не трогать, оставляем как есть. Всех их мы будем менять уже непосредственно, перед выполнением созданной задачи. Так вы сможете в полной мере понять их смысл и предназначение. По умолчания задания будут выполняться лишь в том случае, если пользователь вошел в систему. Для того, чтобы задача выполнялась независимо от того, в системе пользователь или нет, необходимо использовать переключатель "выполнить вне зависимости от регистрации пользователя (Run whether user is logged on or not)”. Также можно указать для задачи самые расширенные полномочия или настроить его под конкретную операционную систему. Переходим во вкладку "Твиггеры”. Здесь вам необходимо нажать кнопку "создать”. Открываем окно "Создание твиггера” и задаем условия, при возникновении которого будет выполняться создаваемая задача. Так как мы пока учимся, то твиггер необходимо определить таким образом, чтобы задача не выполнялась автоматически, а запускалась только вручную. Для этого необходимо выбрать режим однократного запуска на дату, которая уже была или будет. В этом случае у вас получится менять настройки задания и выполнять его тогда, когда вы захотите. Переходим во вкладку "действия”. Первым делом в "действиях” выбираем "запуск программы”. В качестве программы мы будем использовать недавно созданный файл с именем "who-admin.bat”. Чтобы его вставить, необходимо нажать на кнопку "Обзор” и выбрать наш файл. Потихоньку приближаемся к завершению. Теперь нам нужна вкладка "Условия”. Все настройки, которые вы видите здесь, оставляйте в таком же виде. Ну а вообще, здесь вы можете настроить влияние на поведение созданного вами задания. Все настройки во вкладке "Параметры” мы также оставляем без изменений. Их мы задействуем в дальнейшем, при создании уже необходимых заданий. После того, как вы выполните все указанные мною настройки, нажимаем "Ок”, чтобы создать задание. В любой момент можно будет изменить настройки этого задания. Главное, чтобы у пользователя были соответствующие права. Диагностика заданийНе всегда настройки задания проходят гладко. Иногда возникают проблемы. Они могут быть следующих типов: созданное задание не запускается или не завершается, завершение заданий сопровождается ошибкой. Для того, чтобы определить статус любого из заданий, необходимо будет выбрать это задание в планировщике заданий и просмотреть сведения о нем, а именно: состояние, время прошлого запуска, результат последнего запуска и прочее. Состояния бывают следующих типов: Отключено. Такое состояние говорит о том, что задание существует, но не выполняется, так как в настройках твиггера на него стоит запрет. Поставлено на очередь. Это состояние задания говорит о том, что оно стоит в очереди на выполнение. Готово. Данное состояние говорит о том, что задание готово к следующему выполнению. Также в состояниях вы найдете описание времени, когда задание будет запускаться в следующий раз, когда уже запускалось и какой был результат его выполнения. Также там будет информация о дате создания задания. Для того, чтобы каждый раз не заглядывать в состояние задания, можно настроить длительный контроль. В любой ОС доступна функция ведения журнала, в котором отображается и сохраняется вся история выполнения задания. Работа. Если у задания вы наблюдаете такое состояние, то скорее всего оно зависло. Возможно потребуется ввод пользовательских данных или, к примеру, всему виной может быть ошибка в программировании и поэтому задание перешло в бесконечный цикл работы. Для того, чтобы точно убедится, зависло задание или нет, вам необходимо проверить столбик "Время прошлого запуска”, в котором вы найдете, когда задание было запущено. Если задание уже длиться дольше, чем сутки, то вероятнее всего оно зависло. Поскольку таких продолжительных заданий на компьютере бывает очень мало и проходят они довольно редко. Значит, такое задание необходимо остановить. Для этого, щелкаем по нему правой кнопкой мыши и выбираем из контекстного меню пункт "Завершить”. Для тех заданий, время выполнения которых вы знаете точно, можно установить ограничение по времени выполнения. Делать это нужно с небольшим запасом, чтобы задание точно корректно завершило свою работу. В случае, если оно зависнет, оно автоматически выключится. Для того, чтобы поставить пределы по времени выполнения, необходимо перейти в "Свойства”, найти "Параметры”, перейти в "Остановить задачу выполняемую дольше…” и задать свой параметр. Когда вы создадите тестовое задание, советую вам попробовать использовать скрытый режим выполнения задания, который называется "Скрытая задача”, выполнить задачу с правами администратора "выполнить с наивысшими параметрами”, перенести задание на другой ПК, для этого использовать режим экспорта и импорта. Также для вас будет полезно попробовать изменить условия и параметры задания. К примеру, добавьте в условия командного файла команду "pause”, когда команда выполняется в скрытом режиме. Таким образом у вас получится симулировать зависшее задание. Хорошим опытом для вас будет попробовать выполнить просроченное задание. При этом должны быть такие условия: на время проведения задания, компьютер должен быть выключен, но при этом задать параметр заданию "немедленно запускать задачу, если пропущен плановый запуск”. Стандартные задания в операционках Windows 7 и 8Существует ряд заданий, которые в семерке и восьмерке будут выполняться в любом случае, так как они необходимы для корректного функционирования системы. Задание Application Experience\AitAgent. Данная задача занимается сбором и передачей данных при дистанционном отслеживании приложений. Задача выполняется, если имеется согласие на участие в программе улучшения качества программного обеспечения. Даже если это задание будет автоматически стоят на выполнение в 2-3 часа ночи, оно также имеет условие выполнения просроченного задания передачи данных. Задание Application Experience\ProgramDataUpdater. Занимается сбором телеметрических данных программы при участии в программе улучшения качества ПО. Задание Autochk\Proxy - занимается сбором и загрузкой данных SQM (при участии в программе улучшения качества программного обеспечения). Задание Customer Experience Improvement Program\BthSQM. Данная задача необходима для улучшения качеств работы Bluetooth. Оно собирает статистику, касательно работы Bluetooth и сведение о вашем ПК. После сбора всех данных, их отправляют на сервера Microsoft. Все сведения обрабатываются и делаются определенные доработки, с целью повысить надежность, стабильность и общий функционал Bluetooth в операционной системе. Если вы не даете свое согласие на то, чтобы участвовать в программе улучшения программного обеспечения Windows, то данная задача будет отключена и никаких действий совершать не будет. Такая задача по умолчанию присутствует лишь в Windows 8. Задание Customer Experience Improvement Program\Consolidator. Данная задача направлена на улучшение качества программного обеспечения, которая выполняется в режиме ядра "Kernel Ceip”. Это возможно благодаря сбору дополнительных данных о системе, которые передаются в корпорацию Microsoft. Также, как и в предыдущем варианте, вы можете не давать согласие на выполнение этого задания. В этом случае, никаких действий выполнятся не будет. Задание Customer Experience Improvement Program\UsbCeip. Эта задача также направлена на улучшения качества работы программного обеспечения шины USB. Также, как и в предыдущих вариантах, осуществляется сбор данных, после анализа работы универсальной последовательной шины USB и информации о компьютере. После получения всех данных, пакет с файлами также отправляется в компанию разработчик, для анализа и улучшения работы устройства. Вы также можете быть не согласны с этим заданием и в этом случае оно также не будет запускаться. Задание RAC\RacTask. Данное задание предназначено для отслеживания работы стабильности системы. Также собирает данные о надежности и работоспособности компьютера в целом. Мало кто знает, даже из опытных пользователей, о таком задании как "Registry\RegIdleBackup”. Это задание занимается архивацией реестра. Выполняется оно раз в 10 дней и сохраняет всю отчетность файлов реестра в папке "C:\Windows\System32\config\RegBack\”. Если на вашем компьютере не выставлены точки восстановления или они не подходят для использования, у вас появляется возможность восстановить работоспособность системы, если вы загрузитесь с другой операционной системы и скопируете файлы реестра в каталог с названием "\Windows\System32\config\”. В восьмерке имеется специальная папка, которую вы сможете найти в "\Microsoft\Windows\WS”. В ней имеются несколько задач, которые занимаются обменом данных с магазином Windows. Это лишь некоторые обязательные задания, которые существуют в библиотеках планировщиков операционных систем Windows 7 и 8. Конечно, полезности от некоторых очень мало, более того, есть такие задания, которые тормозят и мешают работе операционной системы. В основном это те задания, выполнение которых подразумевает большое потребление аккумулятора ноутбука, расхода недешевого мобильного трафика, дополнительных затрат электричества, при этом они снижают реальную производительность компьютера. В заключении поданной информации о системных заданиях хочу напомнить, что их отключение иногда чревато печальными последствиями. Поэтому стоит понимать, какую именно задачу вы отключаете и для чего. В противном случае операционная система может вообще выйти из строя или работать некорректно. Также в библиотеке планировщика заданий свои задания создают антивирусные программы. Чаще всего они связаны с обновлением баз данных антивирусов. Такие задания необходимы системе. Также создаются задания прочими, не всегда нужными для вас, программами. Эти задания предназначены для проверки наличия обновления. Чаще всего такие программы обновляются без ведома пользователя. К таким программам относятся продукты Adobe, Google, бесплатное ПО и другие. Управляем заданиями из командной строкиДля того, чтобы управлять заданиями из командной строки Windows, используется специальная программа "schtasks.exe”. Некоторые из команд этой утилиты: schtasks /Query - выводит список всех имеющихся заданий; И в самом конце своего длительного рассказа, но надеюсь не особо утомительного, хочу привести пример текста командного файла, который позволит вам отключить или включить системные задания планировщика, полезные действие которых под большим вопросом. Комментарии, которые вы можете увидеть перед выполнением команды "schtasks”, описывают это самое задание, которое было взято из общих свойств задания. Для того, чтобы этот командный файл был выполнен, необходимо запускать его только от имени администратора. Действие, выполняемое по отношению к заданиям планировщика, определяется значением переменной task_action. Команда set task_action=disable приведет к отключению заданий, set task_action=enable - к включению. При выполнении команды schtasks, ее вывод сохраняется в файле журнала, имя которого соответствует имени командного файла, с расширением txt. @echo off При отключении любого задания вы должны точно знать, чем оно занимается. К примеру, если у вас установлен SSD, то вы можете отключить командный файл, который выполняет дефрагментацию жесткого диска. Но, отключение этого файла при наличии обычного, механического харддиска, приведет к неприятным последствиям. Сегодня я вам рассказал практически все, что касается планировщика заданий и их выполнения. Если делать все с умом, то создавая задания, вы здорово облегчите жизнь вашего компьютера. Поэтому практикуйтесь и пробуйте создавать пробные задания. Не забывайте подписываться на обновления и на мой канал. | |
|
Всего комментариев: 2. | |
| |