O script de lote de tarefas agendadas não parece ser executado como administrador

1

Estou tentando executar um script em lote, que copia arquivos do servidor Windows local para um servidor Linux remoto (utilizando rsync e Cygwin) , como uma tarefa agendada.

Se eu executar o script em lote manualmente como administrador (Executar como administrador) , o script em lote será executado com êxito e os arquivos de destino serão copiados para o servidor remoto.

Se eu executar o script em lote manualmente, sem privilégios elevados, apenas parte do script em lote será executada. A parte do rsync do script em lote falha.

Então, eu configurei uma tarefa agendada. O usuário é um membro do grupo Admins. Do Domínio e a tarefa também tem a opção "Executar com privilégios mais altos" marcada.

No entanto, quando executo a tarefa por meio de Tarefas Agendadas, ela é executada da mesma forma que quando executo o script em lote manualmente sem privilégios de administrador, mas não consigo entender por quê.

O que as Tarefas Agendadas fazem com o Usuário que podem impedir a execução da parte rsync do script em lote?

Para adicionar esclarecimentos, todos os recursos que o script utiliza são locais, exceto para o servidor remoto. O servidor remoto é especificado no comando rsync como um endereço IP: username @ ipaddress: / remotedirectory /

Além disso, devo explicar que, como o rsync está sendo executado como parte do Cygwin, as unidades locais são referenciadas como / cygdrive / d / directory / etc. É possível que tarefas agendadas tenham dificuldade de interpretar esses diretórios?

    
por Del 07.02.2017 / 11:28

1 resposta

1

Eu percebi, depois de muita deliberação, que o Agendador de Tarefas estava tendo dificuldades para executar o comando rsync. Passou pela minha cabeça que poderia ter algo a ver com o acesso ao Cygwin.

Embora eu tivesse adicionado os aplicativos Cygwin à variável% PATH% e eu pudesse executar o rsync on demand, o Agendador de Tarefas ainda precisava ser instruído a executar o script no bash.

Alterando a tarefa A ação para executar "bash -l -c" / cygdrive / driveletter / directory / file "permitiu que o Task Scheduler executasse a tarefa com êxito.

O crédito deve ser colocado aqui: link

    
por 07.02.2017 / 12:32