В планировщике было размещено задание на запуск скрипта. Скрипт соединялся с FTP-сервером и копировал туда файл. Задание запускалось от имени локальной учетной записи, входившей в локальную группу "Users" этого сервера. Сервер входил в домен Windows 2003. Для этой учетной записи присутствовали права на чтение и исполнение копируемого файла и файла скрипта. При этом задание не выполнялось, в логе задания появлялась ошибка "
0x80070005: Access is denied". Лог запланированных заданий находится в папке "С:\WINDOWS\Tasks\" и называется "SchedLgU.Txt". Доступен, помимо проводника, из меню "Start -> Control Panel -> Scheduled Tasks (надо открыть папку чтобы появлась окно с заданиями) -> Advanced -> View Log".
Выполнение задания было возможно только в том случае, если учетную запись добавляли в локальную группу "Administrators" этого сервера, что было неприемлемо.
Оказалось, что причиной сбоя являлось отсутствие прав у используемой учетной записи на запуск командного процессора
cmd.exe.
In Windows Server 2003, the Users group does not have Read and Execute permissions to the command processor (
сmd.exe). By default, the Cmd.exe program has the following permissions settings:
- The Interactive implicit group and the Service implicit group have Read and Execute permissions.
Note: оn a member server, the Telnet Clients group also has Read and Execute permissions. On a domain controller, the Batch implicit group also has Read and Execute permissions.
- The Administrators group and the System implicit group have Full Control permissions.
Проблема была решена включением учетной записи задания в группу "Telnet Clients".
Проблему помог решить форум -
http://support.microsoft.com/kb/867466