este artigo pode ser um comando curto, mas a impressão resultante é muito longa.

o comando dump

Se alguém lhe pedir para mostrar toda a configuração do seu sistema, use o comando dump.

$ systemd –dump-configuration-items

o ficheiro abrange todas as unidades que tem no sistema. Uma vez que um desenvolvedor tem este arquivo disponível, a pessoa vai passar pelo que você tem e tentar encontrar os problemas que você está enfrentando. Acabou., No entanto, você não estaria lendo este artigo se você fosse deixar alguém fazer tudo. Vamos ver o que você pode fazer com um serviço de cada vez e aprender alguns truques para filtrar seus resultados.

A hierarquia do systemd

Para se tornar eficiente, você precisa perceber que, dentro do systemd, você tem hierarquia e você pode definir cada serviço depende e/ou esperar para outros serviços. As diferentes maneiras que você faz isso é evidente nos arquivos do serviço. As diferentes declarações que você tem são “quer”, “requerido”, “antes” e “depois”., Para uma análise eficaz, você pode usá-los para ver se sua unidade está em baixo por causa de dependências. Você pode então rastrear de volta para onde o problema subjacente reside. Aqui está um exemplo disto.

$ systemctl list-dependencies –before xpra.service

a impressão mostra as outras unidades que xpra.o serviço depende. Neste caso, as outras unidades estão ativas, por isso é necessário focar-se no motivo pelo qual a própria unidade está quebrada. Faltava um ficheiro de certificado ao exemplo.,

o uso mais importante disto é investigar se o seu serviço está faltando dependências, use o comando desta forma.

$ systemctl list-dependências xringd

o resultado é uma longa lista, convenientemente organizada numa árvore e mostrando todos os serviços como verdes ou vermelhos se algo estiver errado. Você também pode ver as dependências no arquivo de serviços. Abra o ficheiro com o seu editor favorito ou use o systemctl, que irá abrir o ficheiro com o editor por omissão.,

listar os serviços activos

quando quiser investigar um sistema, terá de saber como as unidades se encaixam. Para fazer isso, você tem uma série de opções para imprimir os detalhes. Você pode listar quais sistemas estão ocupados, falharam e assim por diante. Mais importante, você pode listar como eles são colocados juntos, que Unidade, serviço, etc. a unidade atual depende. O comando principal para fazer isso é systemctl, as opções são úteis para estreitar em seu problema específico.

para obter o uso adequado do systemctl, olhe cuidadosamente para as opções para o comando., Existem opções para escolher exatamente o que você precisa, especialmente no que diz respeito ao estado de qualquer serviço. Aqui estamos à procura de serviços que têm problemas.

$ systemctl list-unit-files –type=service

Esta lista também é longa e você tem que percorrer todos os serviços para encontrar o que está à procura. Com mais alguns parâmetros, você pode filtrar para um específico ou os que estão desativados. O comando abaixo encontrará todas as unidades mascaradas.,

$ systemctl lista-unidade-arquivos –type=serviço –state=mascarada

Mascarado serviços são bloqueados para que outros serviços não pode iniciar-las, mesmo se o serviço precisa deles. Isto pode ser usado para garantir que você não tem serviços conflitantes funcionando. Normalmente, muitos serviços são mascarados pelo seu gestor de pacotes quando você remove o pacote. Você pode remover o arquivo de serviço completamente, se desejar depois de remover um serviço. Também é possível que destrua um monte de serviços que você quer, então certifique-se de que você sabe se você precisa dos serviços mascarados.,

alguns serviços são mascarados por processos e você nem sempre pretende que o serviço seja Mascarado. Quando isso aconteceu com o seu sistema, a primeira ação a tomar é desmascarar usando systemctl. No entanto, isso nem sempre é possível, então você precisa tirar o link no diretório apropriado. Na maioria dos sistemas, Este será o lib/systemd / system. Antes disso, verifique se o arquivo é realmente um link para /dev / null.,

$ ls -l lib/systemd/system> |grep null

Quando você estiver certo de que deseja remover este link, remova-a com rm ou desvincular.

$ rm /lib/systemd/system/udisks2.service

Agora que você sabe como fazê-lo, ouça este Aviso: muitas vezes é necessário ter este link lá. Tomemos o lvm2 como exemplo, ele é Mascarado da operação para que não interfira com o novo sistema, onde o lvm2 vem como muitos serviços pequenos., Ver o resultado de:

$ systemctl status lvm2*

remover a ligação pode causar estragos no seu sistema porque o próprio lvm2 precisa dela para evitar conflitos. Este é apenas um exemplo, por isso cuidado antes de seguir em frente.

conclusão

quando você quer listar serviços no systemd, você deve primeiro refletir sobre o que você está procurando em sua busca. Você está procurando um serviço que você precisa ou você vê que você tem muitos serviços. De qualquer forma, você precisa adaptar sua consulta às suas necessidades específicas., O Systemd parece confuso no início, mas quando você olha mais de perto, tudo usa uma maneira direta de unificar o start-up para que os serviços possam começar em paralelo onde o sistema precisa dele, enquanto sendo capaz de ter todos os Serviços à espera do serviço específico em que eles dependem.

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *