50 estações de trabalho, 1 arquivo .bat em um servidor de rede, funcionará?


10

Eu tenho um arquivo .bat para realizar manutenção nas máquinas. Coloquei o arquivo .bat em um servidor conectado à rede para todas as estações de trabalho acessá-lo.

Se eu fosse usar o agendador do Windows para fazer com que o arquivo .bat fosse executado às 12: 00: 00.000 em, digamos ... 50 estações de trabalho, todos eles poderão executá-lo ou ocorrerá um erro?

PS não me peça para experimentar = P


2
Não deve haver nenhum problema em fazer isso, pois é uma prática bastante comum em ambientes Windows. O único problema possível que você pode enfrentar com 50 estações de trabalho executando o arquivo de uma só vez é a largura de banda na rede, embora isso dependa apenas do que exatamente o arquivo em lotes faz - provavelmente não será um problema.
MaQleod 29/08

5
Experimente e veja: p
Sandeep Bansal

@MaQleod O arquivo bat em si tem apenas 1kb de tamanho. No entanto, ele executa uma verificação de desfragmentação e, se a estação de trabalho precisar de uma desfragmentação, o script aguardará a conclusão da desfragmentação antes de passar para o próximo comando. Você acredita que a estação de trabalho está ativamente anexada a esse arquivo .bat no servidor ou se é temporariamente importada localmente quando acessada?
Mechaflash 29/08

Observe que o agendador de tarefas possui um recurso para variar os horários de início de um trabalho agendado, precisamente para que 50 máquinas não funcionem perfeitamente sincronizadas. Está no Win7, mas não no Win2K; Não sei quando foi introduzido. Se sua configuração causar problemas, essa é uma maneira possível de atenuá-la.
RBerteig

2
Minha rede utiliza um aplicativo de implantação para gerenciar ~ estações de trabalho 4K. Existe um único servidor que atua como um repositório para nossos scripts e software. Programei trabalhos para serem executados em milhares de estações de trabalho simultaneamente. Se sua infraestrutura estiver adequada, tudo ficará bem. Considerando que é um arquivo de lote de texto simples, não consigo imaginar que seria um problema.
Jscott #

Respostas:


11

Isso deve funcionar desde que a conta que você executa a tarefa agendada tenha acesso correto ao compartilhamento de rede onde o arquivo bat está localizado.

Dependendo do que o script faz, eu escalonaria os tempos de execução por departamento. Você só precisa de um ou dois minutos de variação para minimizar as chances de um acerto impressionante aos 12 anos. Quanto ao comentarista acima, que menciona um script de logon que atinge um grande número de máquinas, os logins de computador não ocorrem exatamente no mesmo momento. Mesmo alguns segundos de diferença entre logins resultam em tempos diferentes para o script ser acessado; portanto, o caso dele, embora fechado, não é exatamente o mesmo que o seu em relação aos altos níveis de acesso simultâneo a arquivos.


Sim, eu tenho testado o script em algumas estações de trabalho e funciona bem. No entanto, eu ainda não os executei e estava curioso para saber se encontraria ou não um problema, se todos eles executassem o script ao mesmo tempo. Não quero entrar no escritório na manhã seguinte com todas as estações de trabalho com uma tela de erro e meu chefe não técnica surtando sobre isso lol
Mechaflash

Com 50 estações de trabalho, não acho muito provável que o servidor seja danificado ou que estações de trabalho individuais tenham problemas. Mas, por duas razões, seria melhor fazê-lo "corretamente" desde o início: você não precisará alterar nada se atualizar ou expandir, e é melhor prevenir do que remediar. Com poucas estações de trabalho, não seria muito difícil distribuir os tempos de execução em 5 grupos, cada um processando um minuto após o início do grupo anterior, ou 2 grupos, o que funcionar.
Music2myear

1
Sim. Meu pensamento original era espaçá-lo em intervalos de meia hora e cada departamento teria seu próprio dia do mês para manutenção para ajudar a mitigar quaisquer problemas que possam ocorrer com a manutenção.
Mechaflash 29/08

5

Ter um arquivo em lote funcionará, mas considere limitações como ter permissão apropriada e requisitos de administrador.

Você pode considerá-lo implantado como script de logon no Active Directory.


5

Por que você imagina que pode ter erro? Cada estação de trabalho simplesmente lê o arquivo e executa seus comandos. Desde que o servidor seja um servidor real e não apenas uma estação de trabalho que finja ser um servidor, não haverá problema.

A única coisa que você precisa ter em mente é que um arquivo em lotes é lido e executado um comando por vez. Portanto, se você fizer uma alteração nesse arquivo enquanto ele estava sendo executado, o comportamento pode ser imprevisível. Os resultados reais dependem do que foi alterado e exatamente em que local do arquivo o cliente está naquele momento.


3

Eu acredito que funciona bem. Mas a realidade é melhor, então deixe-me dizer que usamos um arquivo .cmd como nosso script de logon. Ele é hospedado centralmente em um servidor e acessado por 6-800 PCs todas as manhãs durante o login. Nunca vimos um problema com vários acessos ao script de uma só vez.


e se você tivesse todas as máquinas inicializadas e enviasse um comando de execução a todos os 800 PCs para acessar esse script de uma só vez? XD Essa é a pergunta
Mechaflash

Isso deve funcionar de qualquer maneira. Contanto que você não escreva no arquivo, 800 máquinas podem lê-lo.
MadBoy 29/08

Mechaflash - o que quero dizer é que temos muitas estações de trabalho fazendo isso todos os dias. Programado ou não, muitos acessam o arquivo de uma só vez, sem incidentes.
precisa saber é o seguinte

3

Eu esperaria que a resposta fosse sim.

A empresa em que trabalho possui um arquivo em lotes que é executado a partir de um compartilhamento de arquivos em rede que é executado conforme cada máquina é inicializada. Se houver algum problema do tipo que você espera na sua pergunta, o arquivo em lotes falhará razoavelmente regularmente, mas, pelo que sei, funciona sempre.


O mesmo com a gente. No entanto, cada máquina não inicializa no mesmo milissegundo exato no tempo. E mesmo que eles inicializassem ao mesmo tempo, cada computador carregava em velocidades diferentes para que não importasse. Esse arquivo em lotes é executado no meio da noite enquanto todas as máquinas já estão inicializadas e em uma tela de login ctrl + alt + dlt.
Mechaflash 29/08

Bom ponto, embora, no nosso caso, algumas das máquinas operem através de links VPN lentos, que poderiam "bloquear" o arquivo em lotes por longos períodos (da ordem de dezenas de segundos), isso não parece ser um problema.

Os arquivos só devem ser bloqueados se estiverem abertos para edição. No caso de executar um arquivo em lotes, ele não é bloqueado quando as estações de trabalho apenas o leem ou executam.
KJ-SRS

1

Um possível motivo para isso não funcionar é se o servidor não estiver licenciado para 50 conexões simultâneas. É improvável que seja um problema em qualquer implantação real, mas se o "servidor" for, por exemplo, uma caixa do Windows XP ou algo que você tenha problemas. Se você possui uma edição real do servidor do Windows e CALs suficientes, não vejo razão para que 50 clientes leiam um único arquivo em lotes simultaneamente, e isso seria um problema.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.