Aprenda Linux

Tudo sobre Daemons no Linux

Tudo sobre Daemons no Linux

Como o sistema operacional Linux é caracterizado como um sistema operacional multitarefa, um daemon é, por definição, um programa que é executado continuamente como um processo em segundo plano. Em suma, a execução deste processo não depende da interação do sistema de um usuário ativo. Um usuário normal do sistema não pode controlar a execução periódica de um processo daemon.

A convenção de nomenclatura que define a maioria dos processos daemon é o 'sufixo' de uma letra d. Esta convenção de nomenclatura torna possível diferenciar entre processos normais do sistema e processos acionados por daemon. Por exemplo, sshd é um processo daemon responsável pelo gerenciamento de entradaSSH conexões. Outro exemplo de processo daemon ésyslogd. É responsável pela facilidade de registro do sistema Linux.

Em um ambiente Linux, o lançamento de daemons é no momento da inicialização. Uma vez que o sistema Linux é um clone perfeito do Unix, um processo init se qualifica como o processo pai de um daemon. Para iniciar e parar daemons em seu sistema operacional Linux, primeiro você precisa acessar o/ etc / init.d diretório de scripts em seu sistema operacional.

Funções comuns de daemons

Daemons de serviço Linux úteis

Quer você seja um usuário iniciante, intermediário ou experiente no mundo do sistema operacional Linux, você nunca deixará de se familiarizar com nenhum dos daemons listados acima à medida que aprimora suas habilidades e conhecimentos neste ambiente de sistema operacional.

Iniciando / parando / reiniciando daemons: a abordagem baseada em terminal

Agora que você tem uma lista de daemons úteis do Linux para memorizar e explorar, a primeira coisa que você precisa saber é como iniciar, parar ou reiniciar esses daemons. Com o seu Terminal Linux iniciado, considere as seguintes regras de sintaxe para iniciar, parar e reiniciar um daemon em seu sistema operacional Linux.

service preferencial-daemon-name start serviço preferido-nome-daemon-stop  reinicialização do nome daemon-preferencial do serviço

Substitua o nome-daemon-preferido argumento de sintaxe com o nome do daemon do sistema Linux de sua escolha. Você pode escolher um da lista de daemons destacada acima, desde que esteja ativo ou já definido em seu sistema Linux. Por exemplo, podemos implementar o uso prático da sintaxe acima, tentando iniciar, parar e reiniciar umdemônio. Navegue até o / etc / init.d diretório em seu terminal para a lista de daemons disponíveis em seu sistema Linux.

listando daemons ativos em seu sistema Linux.png

como iniciar, parar e reiniciar um serviço daemon em seu sistema Linux.png

Listando os daemons de seus sistemas Linux

Uma maneira mais eficaz de observar os daemons disponíveis em seu sistema Linux em vez de navegar até o / etc / init.d diretório é para listar todos os daemons ativos e inativos definidos desse diretório com um único comando. O comando a seguir é eficaz para atingir este objetivo.

$ service -status-all

listando todos os daemons em seu sistema operacional Linux.png

Os sinais entre colchetes positivo [+] e negativo [-] precedendo os nomes de daemon listados implicam que eles estão ativos ou inativos, respectivamente.

Trabalhar com daemons definidos pelo usuário

Regras ou protocolos específicos devem ser seguidos para criar e implementar um daemon definido pelo usuário com sucesso. Esses protocolos ajudam você a compreender a execução de daemons em qualquer ambiente Linux totalmente. Daemons também são flexíveis o suficiente para fazer interface com os módulos do kernel por meio de chamadas de sistema. Esta extensão de funcionalidade do daemon suporta sua interação com dispositivos de hardware como PDAs (Personal Digital Assistants), impressoras e placas controladoras externas viáveis. Os blocos de construção dos daemons também contribuem para o poder e flexibilidade característicos do sistema operacional Linux.

Uma implementação de daemon relacionável usando Python é cuidadosamente demonstrada e documentada por Sander Marechal. Esteja atento para seguir a ordem de execução ao criar este daemon. Primeiro, seu sistema Linux precisa da instalação de pacotes Python para desenvolver daemons com sucesso. Para instalar o Python, você pode usar o seguinte comando.

$ sudo apt install python3-pip python3-dev

O link para o código daemon criado por Sander Marechal em Python também oferece uma versão de código Python 3 refinada. Ajudaria se você considerasse implementá-lo para entender melhor como os daemons funcionam.

Se você não tem certeza se tem o Python instalado, execute o seguinte comando em seu terminal Linux.

$ python3 --version

O propósito de qualquer daemon

Uma vez que um único daemon é dedicado a lidar com uma tarefa específica, ele deve executá-lo com perfeição. A tarefa em questão pode ser tão simples como criar um relatório e enviá-lo a um administrador por meio do sendmail ou tão complexa quanto gerenciar vários domínios vinculados a várias caixas de correio. Em algum ponto, o daemon que você vai criar terá que falar com outros daemons existentes.

interação de usuário para daemon

Não é recomendável que o usuário do sistema e o daemon criado se comuniquem diretamente. Se for necessário para o daemon, você cria para se comunicar com um usuário do sistema. Essa comunicação pode ser facilitada por meio de algo como uma interface GUI. Esta plataforma de comunicação pode ter complexidade GTK + GUI ou simplicidade de configuração de sinal.

Criando seu daemon

Numerosas abordagens apoiam a criação de daemons. Por exemplo, você pode usar sua interface de linha de comando para daemonizar um script Python da seguinte maneira:

$ python my_python_script.py &

Você pode salvar o código daemon Python3 de autoria de Sander Marechal em um arquivo Python e daemonizá-lo com o comando acima. Embora o comando de terminal acima crie facilmente um daemon para você, você terá que lidar com desafios como saídas de terminal imprevisíveis. Esses desafios dependem de quão bem você refatorou seu código daemon Python. Além disso, a abordagem acima não suporta a atribuição de arquivos de bloqueio PID a daemons específicos. Isso torna impossível controlar qualquer daemon, pois a maioria deles será executado instantaneamente. Por outro lado, se você só precisa de um daemon simples, a abordagem mencionada acima fornecerá os resultados do daemon desejados.

Estrutura básica do Daemon

Antes de um daemon executar ou realizar uma função pretendida, ele terá que considerar algumas regras pré-concebidas que levam à sua execução. Você pode pensar nessas regras como tarefas domésticas de baixo nível que conduzem à sua tarefa real. Essas regras podem ser divididas nas seguintes etapas.

Mais sobre implementações de exemplo de daemons podem ser encontradas no GitHub.

Ferramentas úteis para jogadores de Linux
Se você gosta de jogar no Linux, é provável que tenha usado aplicativos e utilitários como Wine, Lutris e OBS Studio para melhorar a experiência de jo...
Jogos HD Remasterizados para Linux que nunca tiveram uma versão Linux anterior
Muitos desenvolvedores e editores de jogos estão apresentando remasterização em HD de jogos antigos para estender a vida da franquia, por favor, os fã...
Como usar o AutoKey para automatizar jogos Linux
AutoKey é um utilitário de automação de desktop para Linux e X11, programado em Python 3, GTK e Qt. Usando sua funcionalidade de script e MACRO, você ...