MDT: Executando comandos do prompt como parte de uma Task Sequence

MDT_POSTS

Olá Pessoal,

A alguns dias atrás eu recebi um comentário aqui no blog com relação a criação de usuários no computador além do usuário administrador local que é habilitado durante o processo de Deployment, a resposta com certeza é sim, é possível, e isso só é possível devido a flexibilidade que o MDT tem. O MDT é uma ferramenta baseada em scritps e por esse motivo podemos fazer varias customizações no processo de Deployment de acordo com a necessidade do ambiente.

Como sabemos o MDT usa as Task Sequence (Sequência de tarefas) para executar ações (tarefas) durante o Deployment e uma dessas ações é a possibilidade de executar comandos que usamos no prompt, e alguns desses comandos podem ser executados stand-alone, sem a necessidade do uso do cmd.exe /c, alguns desse comandos são o NET.EXE, XCOPY.EXE, ROBOCOPY dentre outros. Há também a possibilidade de executar arquivos .bat como parte de uma Task Sequence o que abordarei em outro post aqui no blog.

Aproveitando esse post e já esclarecendo a dúvida do amigo leitor Valdecir, vamos partir da pergunta dele, que foi a seguinte:

“Eduardo é possível colocar uma variável para criar conta de usuário local na distribuição de imagem?”

Vamos lá, na questão dele, é mencionado sobre a criação uma variável para criar conta de usuário local na distribuição da imagem, nesse caso não seria bem uma variável mas uma nova ação (task) que é chamada de Run Command Line onde é possível  inserir comandos, arquivos .bat e scritps (VBS ou Powershell) para que sejam executados como parte de uma Task Sequence.

1. Editando um template de Task Seguence e adicionando um Command Line

O MDT é baseado em templates de task sequence pré-configuradas para fazer todas as tarefas necessárias para um Deployment fim-a-fim, mas em algum momento você pode necessitar colocar alguma tarefa especifica que é o caso do nosso cenário.

Estou partindo do principio de que você já tenha uma Task Sequence criada para fazer o deployment de Windows que basicamente é usado o template Standard Client Task Sequence.

1.1. Abra as propriedades da Task Sequence em que você deseja adicionar a custom task no meu caso estou usando uma Task Sequence para deployment do Windows 10 Technical Preview Build 10041, e selecione a opção Custom Tasks.

Screenshot (5)

Custom Tasks são usadas para agrupar tarefas customizadas

1.2. Agora vamos criar a nossa Task para executar o comando de criação de uma conta de usuário local durante o processo de Deployment, para isso clique em Add > General > Run Command Line.

Screenshot (6)

 Add Run Command Line

1.3. Agora vamos definir o nome para a tarefa e o comando a ser executado, para o cenário desse post vamos usar a execução de um único comando caso seja necessário executar uma serie de comandos como por exemplo criar um usuário e adiciona-lo ao grupo administradores local, eu recomendo o uso de um script ou arquivo .bat para atender essa necessidade. Preencha as informações solicitadas na task Run Command Line como Nome e Comand Line, no meu caso coloquei o nome Add New Local User e o comand line será “net.exe” user nomedousuario senha /add (sempre use aspas no executável antes do primeiro parâmetro) e clique em apply e depois em Ok.

Screenshot (7)

Task Run Command Line após a configuração

Após esses passos teremos uma custom tasks que adicionará um usuário chamado eduardo.sena com a senha P@ssword adicionada ao computador local.

Excelente Deployment,

Eduardo Sena
MCP | MCSA | MCT | MVP Windows IT Pro

Eduardo Sena é Microsoft MVP Windows and Devices for IT, especialista em Windows Deployment Solutions em ambientes corporativos, sempre envolvido em ações na comunidade, comunnity leader no WSG – Window Study Group e Quintas da TI, Eduardo é conhecido por sua especialização com ferramentas para deployment como MDT, ADK, WDS e USMT.

4 Comentários

  1. Eduardo Vinícius Gomes Lima

    Eduardo, boa tarde!

    Eu fiz um scrip de linha de comando do jeito que você explicou ai mas não deu certo. Só que meu scrip é para copiar alguns atalhos para área de trabalho.
    Usei o seguinte comando: copy “Z:Desktop Icons*.*” “C:UsersPublicDesktop”
    Resolvi copiar da pasta Z: pois o MDT mapea essa unidade automaticamente, então ficaria mais fácil, mas mesmo assim o scrip não roda.
    Se poder me ajudar eu agradeço.

    Responder
    1. Eduardo Sena (Publicações do Autor)

      Olá Eduardo, Boa noite!
      Analisando o que você está tentando fazer, verifiquei que os atalhos está dentro de uma pasta no servidor de MDT, mas o comando é executado remotamente na estação, pelo que eu entendi você colocou a pasta desktop icons dentro do Deployment share, se for isso mesmo, na Task Sequence deve ser inserido o comando da seguinte maneira cmd.exe /c copy “%DeployRoot%Desktop Icons*.*” “C:UsersPublicDesktop”.
      Pois o Z: não é reconhecido pela Task Sequence e o %DeployRoot% é uma variável para o caminho UNC do Deployment Share \ServerDeploymentShare.
      Faça esse teste.
      Abraço e obrigado pela visita ao blog e comentário.
      /Eduardo Sena

      Responder
      1. Eduardo Vinícius Gomes Lima

        Vou fazer os testes aqui Eduardo, Muito obrigado.
        Seu conteúdo me ajudou muito com MDT, desde já agradeço!

        Responder
        1. Eduardo Sena (Publicações do Autor)

          Muito obrigado pela visita ao blog, e fico contente que o conteúdo foi proveitoso e lhe ajudou. o MDT é uma ferramenta fantástica.
          /Eduardo Sena

          Responder

Deixar um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

%d blogueiros gostam disto: