Localização comum para arquivos da unidade systemd no Ubuntu e RHEL

0

Eu gostaria de criar uma instalação por script para uma lista de Systemd services. Esta instalação deve suportar tanto o Ubuntu (começando com a versão 16.04) quanto o RHEL / CentOS (começando com a versão 7.2)

Eu li documentos do RHEL e encontrei três caminhos nos quais eu pude armazenar arquivos de unidade, esses caminhos são:

  • / usr / lib / systemd / system /
  • / lib / systemd / system /
  • / etc / systemd / system

Qual é o local correto para serviços que atendem a esses critérios:

  • Arquivos de unidade estão disponíveis para serviços que não são do sistema (serviços específicos do aplicativo)
  • Nenhum serviço no nível do SO já existente é sobrescrito
  • A localização é idêntica no Ubuntu e no RHEL / CentOS
por Marged 14.09.2018 / 21:46

1 resposta

2

Nas distribuições padrão da Red Hat, /lib é um link simbólico para /usr/lib , mas parece que esses são locais diferentes no Ubuntu.

De acordo com a documentação do systemd , /usr/lib/systemd/system/ é designado para armazenar unidade ascendente arquivos que não seriam editados pelos usuários e, em vez disso, fornecidos e atualizados por meio de pacotes.

O /etc/systemd/system é designado como o local onde os arquivos de unidade fornecidos pelo usuário seriam. Os pacotes não devem substituir ou atualizar nada em /etc/systemd/system . Você também pode usar /etc/systemd/system para substituir os arquivos de unidade existentes.

Portanto, usar /etc/systemd/system deve ser o mais compatível entre diferentes distribuições.

    
por 14.09.2018 / 22:03