- Вопрос или проблема
- Ответ или решение
- Устранение ошибки "Could Not Start" для запланированных задач в Windows Server 2003
- 1. Проверка учетных данных и политики безопасности
- 2. Проверка прав доступа к исполняемым файлам
- 3. Тестирование простой задачи
- 4. Логи и отладка
- 5. Проверка компонентов и зависимостей
- Заключение
Вопрос или проблема
Я пытаюсь запустить snapshot на своем сервере, чтобы сделать резервную копию на локальный NAS сервер. В настоящее время я использую это на серверах Win2k, Win2k3 и Win2k8. Оба сервера Win2k и Win2k8 корректно выполняют резервное копирование данных, но Win2k3 возвращает:
Не удалось запустить
ошибку. Я использую пакетный файл для запуска snapshot, и он запускается с использованием учетной записи администратора домена. Вот конкретный код Batch:
pskill snapshot
rem @echo off
echo. 2>"C:\Program Files\Snapshot\logs\monday_snapshot.log"
"C:\Program Files\Snapshot\snapshot.exe" c: \\NAS\Data_Backup\snapshot\server\monday_cdrive.sna -Go -T --novss --LogFile:"C:\Program Files\Snapshot\logs\monday_snapshot.log"
"C:\Program Files\Snapshot\snapshot.exe" F: \\NAS\Data_Backup\snapshot\server\monday_fdrive.sna -Go -T --novss --LogFile:"C:\Program Files\Snapshot\logs\monday_snapshot.log"
blat -bodyF "C:\Program Files\Snapshot\logs\monday_snapshot.log" -server mail.netcommusa.net -portSMTP 2525 -f [email protected] -i snapshot@*******.com -subject "Snapshot of Main Server" -u mailrelay@*******.net -pw mailrelay -to ********@gmail.com
Обратите внимание, что blat – это простая программа для отправки электронной почты из командного окна
Я пытался следовать этому статье KB, найденной в этом ответе на похожую проблему, но безуспешно. Я также пробовал это решение, но увы, все равно без успеха.
Мой последний результат был:
0x0
что означает:
0x0: Операция завершена успешно.
(из этой статьи KB) но это не завершается успешно, так как не выполняет резервное копирование дисков. Не знаю, как дальше действовать. Есть ли какие-либо предложения?
Это определенно проблема безопасности. Вы можете проверить это, создав простую задачу, такую как cmd /c echo
, и посмотрев, не завершится ли она с ошибкой. Если да:
- Проверьте фактическое значение политики Вход в систему как пакетная задача (rsop.msc – Конфигурация компьютера – Параметры Windows – Настройки безопасности – Локальные политики – Назначение прав пользователя). Если оно недействительно (например, указывает на пустую группу), любая задача завершится с ошибкой, даже те, которые выполняются под локальной учетной записью администратора. Более того, изменение значения и обновление групповой политики не исправит это – вам нужно снова ввести учетные данные для каждой запланированной задачи, выполняющейся под пользователями (например, если у вас есть 3 задачи, выполняющиеся под одним пользователем, и 2 задачи, выполняющиеся под другим, нужно повторно ввести учетные данные только дважды).
- Проверьте ACL файла %SystemRoot%\system32\cmd.exe. Разрешение на чтение и выполнение должно быть предоставлено группе BATCH. Это может быть сделано через групповую политику: добавьте
cacls.exe %SystemRoot%\system32\cmd.exe /e /g BATCH:r
в Конфигурацию компьютера – Параметры Windows – Скрипты запуска.
Ответ или решение
Устранение ошибки "Could Not Start" для запланированных задач в Windows Server 2003
Ошибка "Could Not Start" при запуске запланированной задачи может быть вызвана несколькими факторами, включая проблемы с правами доступа, конфигурацией самой задачи или взаимодействием с используемыми утилитами. В вашем случае вы столкнулись с этой проблемой при использовании программы Snapshot на сервере Win2k3, в то время как на других серверах эта задача работает без проблем. Давайте рассмотрим основные шаги для диагностики и устранения данной проблемы.
1. Проверка учетных данных и политики безопасности
Как вы уже заметили, проблема может быть связана с правами доступа. Важно убедиться, что учетная запись, под которой выполняется задача, имеет достаточные права. Следуйте следующим шагам:
-
Проверьте политику "Log on as a batch job": Выполните команду
rsop.msc
и перейдите к разделу Computer Configuration > Windows Settings > Security Settings > Local Policies > User Rights Assignment. Убедитесь, что учетная запись или группа, используемая для запуска задачи, включена в эту политику. Если значение некорректно (например, указывает на пустую группу), это может стать причиной неудачи задачи. -
Повторное введение учетных данных для задач: После изменения политики вам необходимо повторно ввести учетные данные для каждой запланированной задачи, чтобы применить изменения.
2. Проверка прав доступа к исполняемым файлам
Неправильные права доступа могут тоже вызывать проблемы с запуском задач:
- Проверьте разрешения для файла
cmd.exe
, который используется для запуска вашего скрипта. Убедитесь, что группе BATCH предоставлены права на чтение и выполнение. Это можно сделать с помощью командной строки:cacls.exe %SystemRoot%\system32\cmd.exe /e /g BATCH:r
3. Тестирование простой задачи
Для диагностики проблемы создайте простую задачу, которая выполняет команду cmd /c echo
. Это поможет вам выяснить, связано ли это с общими проблемами запланированных задач, или же проблема в вашем конкретном сценарии.
4. Логи и отладка
-
Убедитесь, что в вашем бат-файле есть наглядная запись, чтобы понимать, где именно происходит сбой. Используйте перенаправление вывода, чтобы сохранить логи выполнения. Например, этот фрагмент вашего скрипта:
echo. 2>"C:\Program Files\Snapshot\logs\monday_snapshot.log"
можно расширить:
echo Запуск backup > "C:\Program Files\Snapshot\logs\monday_snapshot.log"
-
Также вам стоит проверить ошибки выполнения программы Snapshot. Если программа не запускается, это может дать подсказку о том, что именно идет не так.
5. Проверка компонентов и зависимостей
- Убедитесь, что все необходимые для запуска утилиты (например,
blat
) доступны и корректно настроены для работы через командную строку.
Заключение
Ошибки с запланированными задачами могут быть вызваны множеством факторов, начиная от проблем с учетными данными и правами доступа и заканчивая неправильной конфигурацией самой задачи. Следуя приведенным выше рекомендациям, вы сможете диагностировать и устранить проблему "Could Not Start" на сервере Windows Server 2003. Если проблема все еще сохраняется, рассмотрите возможность обращения в техническую поддержку или на форумы с более подробно описанным сценарием, что облегчит поиск решения.