Este artigo explica como você pode instalar, atualizar, desinstalar o TeamViewer Host e o TeamViewer Full em um cenário de implantação em massa no macOS. Para conseguir isso, você precisa ter conhecimentos básicos sobre instalações de linha de comando no macOS.
Este artigo se aplica a clientes com licença Corporate ou Tensor que usam a versão 15.x. ou mais recente. Versões compatíveis do macOS: 10.14, 10.15, 11, 12, 13
Instale a versão padrão do TeamViewer Host
Instalador necessário:
- TeamViewer_Host.pkg
- Baixe o arquivo no TeamViewer (Classic) Management Console em Desenvolver e Implementar clicando em Baixar instalador e escolhendo PKG (Host & Full Client for macOS).
- Descompacte o PKG.
Etapas:
1. Digite o seguinte comando no terminal:
sudo installer -pkg "TeamViewer_Host.pkg" -target /
2. O parâmetro -target define o caminho onde você deseja que sua instalação seja localizada.
Instale a versão padrão do TeamViewer Host silenciosamente
Instalador necessário:
- TeamViewer_Host.pkg:
- Baixe o arquivo no TeamViewer (Classic) Management Console em Desenvolver e Implementar clicando em Baixar instalador e escolhendo PKG (Host & Full Client for macOS).
- Descompacte o PKG.
Etapas:
1. Crie um arquivo XML chamado (por exemplo: choice.xml) e insira o seguinte conteúdo:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<array>
<dict>
<key>attributeSetting</key>
<integer>1</integer>
<key>choiceAttribute</key>
<string>selected</string>
<key>choiceIdentifier</key>
<string>com.teamviewer.teamviewerhostSilentInstaller</string>
</dict>
</array>
</plist>
2. (Opcional) verifique se sua configuração será aplicada corretamente.
- Execute o seguinte comando:
installer -showChoicesAfterApplyingChangesXML newChoices.xml -pkg Install\ TeamViewer_Host.pkg -target /
- Isso resultará em uma saída que deve ser semelhante a esta:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<array>
<dict> ... </dict>
<dict> ... </dict>
<dict>
<key>attributeSetting</key>
<false/>
<key>choiceAttribute</key>
<string>visible</string>
<key>choiceIdentifier</key>
<string>com.teamviewer.teamviewerhostSilentInstaller</string>
</dict>
<dict>
<key>attributeSetting</key>
<true/>
<key>choiceAttribute</key>
<string>enabled</string>
<key>choiceIdentifier</key>
<string>com.teamviewer.teamviewerhostSilentInstaller</string>
</dict>
<dict>
<key>attributeSetting</key>
<integer>1</integer>
<key>choiceAttribute</key>
<string>selected</string>
<key>choiceIdentifier</key>
<string>com.teamviewer.teamviewerhostSilentInstaller</string>
</dict>
</array>
</plist>
Aplique a configuração durante a instalação adicionando o parâmetro -applyChoiceChangesXML <your_filename>.xml
sudo installer -applyChoiceChangesXML choices.xml -pkg Install TeamViewer_Host.pkg -target /
3. Se você tiver um sistema MDM, poderá usar as cargas úteis do Controle de Política de Preferências de Privacidade (PPPC) para distribuir Acessibilidade e Acesso total ao disco para o TeamViewer (Classic) em Preferências do sistema ➜ Segurança e privacidade ➜ Privacidade. Seus usuários ainda precisarão conceder acesso à gravação de tela. A partir do macOS 11 Big Sur, você precisará usar uma carga útil ScreenCapture PPPC com AllowStandardUserToSetSystemService para permitir que usuários não administradores concedam essa permissão.
Um exemplo de configuração de MDM usando o Mobile Iron para implementar o acesso de acessibilidade pode ser encontrado no artigo:
📄 MobileIron Integração - Adicione aplicativos TeamViewer à acessibilidade do macOS Mojave
Instale a versão personalizada do TeamViewer Host
Instalador necessário:
- TeamViewer_Host.pkg:
- Baixe o arquivo no TeamViewer (Classic) Management Console em Desenvolver e Implementar clicando em Baixar instalador e escolhendo PKG (Host & Full Client for macOS).
- Descompacte o PKG.
Etapas:
- Crie uma nova personalização ou abra uma existente (consulte Como personalizar seu Host para obter detalhes)
- Copie o ConfigurationID do seu Host personalizado.
- Abra o terminal ou execute o pacote via script.
- Adicione o ConfigurationID ao nome do arquivo na linha de comando:
- sudo installer -pkg "TeamViewer_Host-idc<ConfigurationID>.pkg" -target /
Resumo dos parâmetros
Instale a versão personalizada do TeamViewer Host silenciosamente
Instalador necessário:
- TeamViewer_Host.pkg:
- Baixe o arquivo no TeamViewer (Classic) Management Console em Desenvolver e Implementar clicando em Baixar instalador e escolhendo PKG (Host & Full Client for macOS).
Etapas:
1. Crie um arquivo XML chamado (ex: choices.xml) e insira o seguinte conteúdo:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<array>
<dict>
<key>attributeSetting</key>
<integer>1</integer>
<key>choiceAttribute</key>
<string>selected</string>
<key>choiceIdentifier</key>
<string>com.teamviewer.teamviewerhostSilentInstaller</string>
</dict>
</array>
</plist>
2. (Opcional) verifique se sua configuração será aplicada corretamente:
- execute o seguinte comando:
installer -showChoicesAfterApplyingChangesXML newChoices.xml -pkg "TeamViewer_Host-idc<ConfigurationID>.pkg" -target /
- Isso resultará em uma saída que deve ser semelhante a esta:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<array>
<dict> ... </dict>
<dict> ... </dict>
<dict>
<key>attributeSetting</key>
<false/>
<key>choiceAttribute</key>
<string>visible</string>
<key>choiceIdentifier</key>
<string>com.teamviewer.teamviewerhostSilentInstaller</string>
</dict>
<dict>
<key>attributeSetting</key>
<true/>
<key>choiceAttribute</key>
<string>enabled</string>
<key>choiceIdentifier</key>
<string>com.teamviewer.teamviewerhostSilentInstaller</string>
</dict>
<dict>
<key>attributeSetting</key>
<integer>1</integer>
<key>choiceAttribute</key>
<string>selected</string>
<key>choiceIdentifier</key>
<string>com.teamviewer.teamviewerhostSilentInstaller</string>
</dict>
</array>
</plist>
Aplique a configuração durante a instalação adicionando o parâmetro -applyChoiceChangesXML <your_filename>.xml
sudo installer -applyChoiceChangesXML choices.xml -pkg "TeamViewer_Host-idc<ConfigurationID>.pkg" -target /
3. Se você tiver um sistema MDM, poderá usar as cargas úteis do Controle de Política de Preferências de Privacidade (PPPC) para distribuir Acessibilidade e Acesso total ao disco para o TeamViewer (Classic) em Preferências do sistema ➜ Segurança e privacidade ➜ Privacidade. Seus usuários ainda precisarão conceder acesso à gravação de tela. A partir do macOS 11 Big Sur, você precisará usar uma carga útil ScreenCapture PPPC com AllowStandardUserToSetSystemService para permitir que usuários não administradores concedam essa permissão.
Um exemplo de configuração de MDM usando o Mobile Iron para implementar o acesso de acessibilidade pode ser encontrado no artigo:
📄 MobileIron Integração - Adicione aplicativos TeamViewer à acessibilidade do macOS Mojave
Instale a versão completa do TeamViewer (Classic)
Instalador necessário:
- TeamViewer_ Full.pkg:
- Baixe o arquivo no TeamViewer (Classic) Management Console em Desenvolver e Implementar clicando em Baixar instalador e escolhendo PKG (Host & Full Client for macOS).
- Descompacte o PKG.
Etapas:
- Abra o terminal ou execute pkg por meio de um script.
- Digite o seguinte comando no terminal:
sudo installer -pkg "TeamViewer_Full.pkg" -target /
O parâmetro -target define o caminho onde você deseja que sua instalação esteja localizada.
⚠As configurações não podem ser fornecidas durante o processo de instalação no macOS.
Instale a versão completa do TeamViewer (Classic) silenciosamente
Instalador necessário:
- TeamViewer_Full.pkg:
- Baixe o arquivo no TeamViewer (Classic) Management Console em Desenvolver e Implementar clicando em Baixar instalador e escolhendo PKG (Host & Full Client for macOS).
- Descompacte o PKG.
Etapas:
1. Crie um arquivo XML chamado (ex: options.xml) e insira o seguinte conteúdo:
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<array>
<dict>
<key>attributeSetting</key>
<integer>1</integer>
<key>choiceAttribute</key>
<string>selected</string>
<key>choiceIdentifier</key>
<string>com.teamviewer.teamviewerSilentInstaller</string>
</dict>
</array>
</plist>
2. (Opcional) verifique se sua configuração será aplicada corretamente.
- Execute o seguinte comando:
installer -showChoicesAfterApplyingChangesXML newChoices.xml -pkg Install\ TeamViewer_Full.pkg -target /
- Isso resultará em uma saída que deve ser semelhante a esta:
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<array>
<dict> ... </dict>
<dict> ... </dict>
<dict>
<key>attributeSetting</key>
<false/>
<key>choiceAttribute</key>
<string>visible</string>
<key>choiceIdentifier</key>
<string>com.teamviewer.teamviewerSilentInstaller</string>
</dict>
<dict>
<key>attributeSetting</key>
<true/>
<key>choiceAttribute</key>
<string>enabled</string>
<key>choiceIdentifier</key>
<string>com.teamviewer.teamviewerSilentInstaller</string>
</dict>
<dict>
<key>attributeSetting</key>
<integer>1</integer>
<key>choiceAttribute</key>
<string>selected</string>
<key>choiceIdentifier</key>
<string>com.teamviewer.teamviewerSilentInstaller</string>
</dict>
</array>
</plist>
3. Aplique a configuração durante a instalação adicionando o parâmetro "-applyChoiceChangesXML <your_filename>.xml"
sudo installer -applyChoiceChangesXML choices.xml -pkg Install\ TeamViewer_Full.pkg -target /
4. Se você tiver um sistema MDM, poderá usar as cargas úteis do Controle de Política de Preferências de Privacidade (PPPC) para distribuir Acessibilidade e Acesso total ao disco para o TeamViewer (Classic) em Preferências do sistema ➜ Segurança e privacidade ➜ Privacidade. Seus usuários ainda precisarão conceder acesso à gravação de tela. A partir do macOS 11 Big Sur, você precisará usar uma carga útil ScreenCapture PPPC com AllowStandardUserToSetSystemService para permitir que usuários não administradores concedam essa permissão.
Um exemplo de configuração de MDM usando o Mobile Iron para implementar o acesso de acessibilidade pode ser encontrado no artigo:
📄 MobileIron Integração - Adicione aplicativos TeamViewer à acessibilidade do macOS Mojave
Atualizar uma instalação do TeamViewer (Classic)
A atualização do TeamViewer (Classic) corresponde às etapas necessárias para uma instalação:
- Instale a versão do cliente host padrão do Teamviewer
- Instale a versão personalizada do cliente host do Teamviewer
- Instale a versão padrão do cliente completo do TeamViewer (Classic)
Desinstalar o TeamViewer (Classic)
Um motivo para desinstalar seu TeamViewer (Classic) pode ser que você queira mudar de uma versão do TeamViewer Host para uma versão completa (TeamViewer Full).
📌Lembrete: Você pode apenas desinstalar seu TeamViewer manualmente
Maneira recomendada de desinstalar o TeamViewer (Classic):
- Inicie o aplicativo TeamViewer (Classic).
- Abra TeamViewer (Classic) ➜ Preferências ➜ Avançado.
- Role para baixo até "Desinstalar".
- (Opcional) marque a caixa "Excluir arquivos de configuração".
- Clique em "Desinstalar".
- Clique em "OK" quando solicitado para confirmação.
O programa foi desinstalado.
Execute uma tarefa
Instalador necessário:
- O TeamViewer (Classic) já está instalado.
- A opção Iniciar com sistema está habilitada.
- O serviço TeamViewer (Classic) está em execução!
- A ferramenta de atribuição junto com o aplicativo é instalada em:
- /Applications/TeamViewerHost.app/Contents/Helpers/TeamViewer_Assignment
- /Applications/TeamViewer.app/Contents/Helpers/TeamViewer_Assignment
Etapas:
- Execute a ferramenta de atribuição com privilégios sudo em todos os dispositivos que devem ser atribuídos. Para fazer isso em um cenário de implantação em massa, recomendamos que você use um script para chamar a ferramenta de atribuição com os parâmetros necessários.
- TeamViewer Host:
sudo /Applications/TeamViewerHost.app/Contents/Helpers/TeamViewer_Assignment -api-token <YOUR_APITOKEN> -group <GROUP> -alias <COMPUTERNAME> -grant-easy-access
- TeamViewer (Classic) versão completa:
sudo /Applications/TeamViewer.app/Contents/Helpers/TeamViewer_Assignment -api-token <YOUR_APITOKEN>
- O Acesso fácil é (opcionalmente) ativado para o dispositivo.
- O dispositivo é atribuído à conta que criou o módulo Custom TeamViewer Host.
Opções de atribuição:
A tabela a seguir mostra as opções de atribuição possíveis (todas são opcionais).
Existem alguns parâmetros que precisam de um valor (–alias MyAlias) ou não precisam de um valor (–reassign).
As opções precisam ser adicionadas na linha de comando.
- Se você tiver valores de parâmetro com espaços em branco (por exemplo, para o nome do grupo), use "<GROUP_NAME_WITH_BLANK>".
- sudo /Applications/TeamViewer.app/Contents/Helpers/TeamViewer_Assignment -api-token <YOUR_APITOKEN> -group "My Group" -alias "$ALIAS"
- Os nomes dos parâmetros diferenciam maiúsculas de minúsculas
- As configurações de proxy podem ser especificadas para a atribuição em ASSIGNMENTOPTIONS. Existem configurações de proxy adicionais para a própria conexão do TeamViewer (conforme definido nas opções do cliente do TeamViewer). Estes devem ser definidos fora das OPÇÕES DE ATRIBUIÇÃO (ASSIGNMENTOPTIONS).
- Você também pode inserir variáveis de ambiente em seus comandos para instalação/atribuição para adicionar valores dinâmicos, por exemplo, para o alias. Você pode usar variáveis de ambiente usando $-notation. Os seguintes caracteres não devem estar contidos nos valores das variáveis: $, @, `, ´ e variáveis devem ser sempre usadas entre aspas.
- Exemplo :
- export GRUPO="MeuGrupo"
- export ALIAS="MeuDevicename"
- sudo /Applications/TeamViewer.app/Contents/Helpers/TeamViewer_Assignment -api-token <YOUR_APITOKEN> -group "$GROUP" -alias "$ALIAS"
Para você copiar/colar:
Opção: -api-token <YOUR_APITOKEN>
Descrição: Token de API para fazer a atribuição à conta correta
_______________________________
Opção: -alias [<name>]
Descrição: Alias para o novo dispositivo na lista de Computadores e Contatos. Se o dispositivo já estiver na lista de contatos, nenhum alias será aplicado. O parâmetro pode assumir os seguintes valores:
1. -alias (without value) ➜ alias do computador será o sudo teamviewerID
/Applications/TeamViewerHost.app/Contents/Helpers/TeamViewer_Assignment -api-token <YOUR_APITOKEN> -alias -group MyGroup
2. -alias hallo ➜ alias do computador será "hallo"
sudo /Applications/TeamViewerHost.app/Contents/Helpers/TeamViewer_Assignment -api-token <YOUR_APITOKEN> -alias hello -group MyGroup
3. parâmetro de alias não especificado ➜ o alias deste computador será %computername%
sudo /Applications/TeamViewerHost.app/Contents/Helpers/TeamViewer_Assignment -api-token <YOUR_APITOKEN> -group MyGroup
_______________________________
Opção: -grant-easy-access
Descrição: Se você definir esta opção, o acesso fácil será concedido após a atribuição (o mesmo que a opção "Conceder acesso fácil" na janela principal do TeamViewer).
sudo /Applications/TeamViewerHost.app/Contents/Helpers/TeamViewer_Assignment -api-token <YOUR_APITOKEN> -grant-easy-access -group MyGroup
_______________________________
Opção: -reassign
Descrição: Atribui o dispositivo à conta mesmo que o dispositivo já esteja atribuído a uma conta.
sudo /Applications/TeamViewerHost.app/Contents/Helpers/TeamViewer_Assignment -api-token <YOUR_APITOKEN> -reassign -group MyGroup
_______________________________
Opção: -group <name>
Descrição: Nome do grupo no qual o dispositivo será adicionado.
Quando o grupo não existir, ele será criado automaticamente.
Se o dispositivo já estiver presente na lista de computadores e contatos em um grupo diferente, ele não será movido para o grupo.
sudo /Applications/TeamViewerHost.app/Contents/Helpers/TeamViewer_Assignment -api-token <YOUR_APITOKEN> -group MyGroup
Necessário apenas se nenhum host personalizado for usado, pois já existe um grupo padrão definido na configuração personalizada.
_______________________________
Opção: -group-id <ID>
Descrição: Esta opção é uma alternativa para usar o parâmetro --group se o id do grupo for conhecido.
Isso pode ser útil em ambientes de clientes muito grandes, pois acelera o processo de atribuição. Normalmente, usar --group é suficiente.
Observe que o ID deve ser precedido por um "g" literal.
sudo /Applications/TeamViewerHost.app/Contents/Helpers/TeamViewer_Assignment -api-token <YOUR_APITOKEN> -group-id g123
_______________________________
Opção: -wait <seconds>
Descrição: Com este parâmetro o tempo de espera para a atribuição pode ser especificado em segundos. O valor padrão de 30 (s) geralmente deve ser suficiente.
sudo /Applications/TeamViewerHost.app/Contents/Helpers/TeamViewer_Assignment -api-token <YOUR_APITOKEN> -wait 45 -group MyGroup
_______________________________
Opção: -proxy <name>:<port>
Descrição: URL do seu proxy (somente para a atribuição) no formato <name>:<port>, por exemplo --proxy yourproxy:3201
sudo /Applications/TeamViewerHost.app/Contents/Helpers/TeamViewer_Assignment -api-token <YOUR_APITOKEN> -proxy yourproxy:3201 -proxy-user FooBar -proxy-pw mypass -group MyGroup
⚠Aviso: URL sem http://
_______________________________
Opção: -proxy-user <name>
Descrição: Nome de usuário que é usado para autenticação no proxy (somente para a atribuição).
sudo /Applications/TeamViewerHost.app/Contents/Helpers/TeamViewer_Assignment -api-token <YOUR_APITOKEN> -proxy yourproxy:3201 -proxy-user FooBar -proxy-pw mypass -group MyGroup
_______________________________
Opção: -proxy-pw <password>
Descrição: Senha que é usada para autenticação no proxy (somente para a atribuição).
sudo /Applications/TeamViewerHost.app/Contents/Helpers/TeamViewer_Assignment -api-token <YOUR_APITOKEN> -proxy yourproxy:3201 -proxy-user FooBar -proxy-pw mypass -group MyGroup
_______________________________
Opção: -proxy-pw-base64 <encoded_password>
Descrição: O mesmo que --proxy-pw, mas a senha precisa ser inserida como uma string codificada em Base64. Útil para senhas com caracteres especiais.
sudo /Applications/TeamViewerHost.app/Contents/Helpers/TeamViewer_Assignment -api-token <YOUR_APITOKEN> -proxy yourproxy:3201 -proxy-user FooBar -proxy-pw-base64 bXlwYXNz -group MyGroup