Remember to maintain security and privacy. Do not share sensitive information. Procedimento.com.br may make mistakes. Verify important information. Termo de Responsabilidade
Os LaunchDaemons são uma parte essencial do sistema operacional macOS, permitindo que serviços e tarefas sejam executados em segundo plano. Eles são controlados pelo launchd, o gerenciador de inicialização do macOS, que também gerencia LaunchAgents e outras tarefas de inicialização.
Neste artigo, vamos explorar como criar e gerenciar LaunchDaemons no macOS, fornecendo exemplos práticos para ilustrar o processo.
LaunchDaemons são scripts ou executáveis que são iniciados pelo sistema e podem ser configurados para rodar automaticamente ao iniciar o macOS. Eles são usados para serviços que precisam ser executados com privilégios de sistema e que não estão diretamente ligados a uma sessão de usuário específica.
Um LaunchDaemon é configurado através de um arquivo plist (Property List) que define como e quando o daemon deve ser executado. Esses arquivos são geralmente armazenados em /Library/LaunchDaemons/
.
Aqui está um exemplo básico de um arquivo plist para um LaunchDaemon:
<?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">
<dict>
<key>Label</key>
<string>com.example.mydaemon</string>
<key>ProgramArguments</key>
<array>
<string>/usr/local/bin/mydaemon</string>
</array>
<key>RunAtLoad</key>
<true/>
<key>KeepAlive</key>
<true/>
</dict>
</plist>
#!/bin/bash
while true; do
echo "Daemon is running" >> /var/log/mydaemon.log
sleep 60
done
Salve este script como /usr/local/bin/mydaemon
e torne-o executável:
sudo chmod +x /usr/local/bin/mydaemon
Criar o Arquivo plist: Crie um arquivo plist com a configuração do LaunchDaemon. Salve o conteúdo XML acima como /Library/LaunchDaemons/com.example.mydaemon.plist
.
Configurar Permissões: Certifique-se de que o arquivo plist tenha as permissões corretas:
sudo chown root:wheel /Library/LaunchDaemons/com.example.mydaemon.plist
sudo chmod 644 /Library/LaunchDaemons/com.example.mydaemon.plist
launchctl
para carregar o novo daemon:sudo launchctl load /Library/LaunchDaemons/com.example.mydaemon.plist
sudo launchctl list | grep com.example.mydaemon
sudo launchctl unload /Library/LaunchDaemons/com.example.mydaemon.plist
sudo launchctl unload /Library/LaunchDaemons/com.example.mydaemon.plist
sudo rm /Library/LaunchDaemons/com.example.mydaemon.plist
Os LaunchDaemons são uma ferramenta poderosa para gerenciar serviços e tarefas em segundo plano no macOS. Compreender como criar e gerenciar esses daemons pode ajudar a automatizar tarefas e manter serviços essenciais em execução.