A instalação automática precisa de uma consulta de detecção que reconheça seu software uma vez que ele esteja instalado. Este guia mostra como encontrar o nome exato que o Windows ou Linux usa para isso, para que a consulta funcione.
Recurso/Funcionalidade
Visão Geral
Quando você ativa a instalação automática para um pacote personalizado (.exe, .ps1, .deb, .rpm, .sh ou .tar.gz), Factorial IT preenche automaticamente uma osquery com base no nome do software que você inseriu. É uma melhor suposição.
A regra é simples: quando o software está instalado, a consulta deve retornar pelo menos uma linha. Se não retornar nada, o agente pensa que o software está ausente e instala o pacote novamente a cada verificação.
Para corrigir isso, altere o valor dentro de LIKE '%...%' para que corresponda ao nome que o sistema operacional reporta para o software instalado, e não ao nome do instalador.
Como usar
- Abra o pacote personalizado e ative a Instalação Automática.
- Olhe para a consulta preenchida automaticamente.
- Encontre o nome exato instalado com o método para o tipo de pacote (abaixo).
- Substitua o valor dentro de
LIKE '%...%'por esse nome. - Alvo um pequeno grupo de dispositivos primeiro e verifique se a instalação se comporta como esperado.
- Implante para o resto da frota.
Windows (.exe, .ps1)
Consulta preenchida automaticamente:
SELECT 1 FROM programs WHERE name LIKE '%<nome do software>%'Onde encontrar o nome exato:
- A lista de software instalado em Detalhes do host da frota
- Apps & recursos nas Configurações do Windows
- PowerShell:
Get-Package | Where-Object Name -Like '*<nome>*'
Exemplo: o instalador é FalconSensor_Windows.exe, mas o Windows lista o software como CrowdStrike Windows Sensor. A consulta torna-se:
SELECT 1 FROM programs WHERE name LIKE '%CrowdStrike Windows Sensor%'
Linux .deb
Para pacotes Debian e Ubuntu.
Consulta preenchida automaticamente:
SELECT 1 FROM deb_packages WHERE name LIKE '%<nome do software>%'Onde encontrar o nome exato:
- Execute
dpkg -l | grep <nome>. O nome do pacote está na primeira coluna. - Use o nome do pacote (por exemplo
google-chrome-stable), não o nome amigável de exibição.
Linux .rpm
Consulta preenchida automaticamente:
SELECT 1 FROM rpm_packages WHERE name LIKE '%<nome do software>%'Onde encontrar o nome exato:
- Execute
rpm -qa | grep <nome>. - Mantenha apenas o nome do pacote, sem sufixo de versão ou arquitetura.
Scripts e arquivos (.sh, .tar.gz)
Para scripts de instalação e arquivos do Linux, o que termina no disco depende do script. Leia o script ou seu README para descobrir:
- Se ele registra um pacote em
deb_packagesourpm_packages. Se sim, consulte essa tabela. - Se não, qual binário ou diretório ele cria. Consulte isso com
fileouosquery_info.
Dicas e Melhores Práticas
-
Use o nome instalado, nunca o nome do arquivo do instalador.
Setup.exenão é o que o Windows registra;MyAppé. -
Mantenha os curingas.
'%nome%'ainda corresponde quando um número de versão é adicionado ao nome. -
Faça o padrão específico o suficiente. Se corresponder a software não relacionado, adicione mais caracteres ou mude para
=para uma correspondência exata. - Teste primeiro em um pequeno grupo de dispositivos. Confirme que a instalação e a detecção funcionam antes de ir para toda a frota.
Solução de Problemas e FAQ
Solução de Problemas
- O pacote é reinstalado a cada verificação. A consulta não retorna linhas, então o software nunca é detectado. Você provavelmente está usando o nome do arquivo do instalador. Substitua-o pelo nome que o sistema operacional reporta.
- A detecção falha após uma atualização. Os curingas podem estar ausentes. Uma correspondência exata quebra quando um sufixo de versão aparece.
-
Dispositivos mostram o software como instalado quando não está. O padrão corresponde a outro software. Aperte-o ou use
=.
FAQ
-
Por que a consulta precisa retornar uma linha?
É assim que a Instalação Automática sabe que o software está presente. Nenhuma linha significa "não instalado", então instala novamente.
-
Posso manter a consulta Factorial IT preenchida automaticamente?
Somente se já corresponder ao nome que o sistema operacional reporta. É uma melhor suposição com base no nome que você digitou, então verifique.
-
No Linux, devo usar o nome de exibição?
Não. Use o nome do pacote, comogoogle-chrome-stable, sem versão ou arquitetura.
-
E quanto aos
.she.tar.gzinstaladores?
Verifique o que o script instala. Consultedeb_packagesourpm_packagesse ele registrar um pacote; caso contrário, procure um arquivo ou pasta que ele cria.