Não tenho certeza de onde o arquivo /etc/init.d/skeleton
desapareceu, mas espero que essa alteração esteja relacionada à substituição do tradicional SysV init daemon
por systemd
, já que o OpenSUSE 12. systemd
é totalmente compatível com os scripts bem conhecidos, mas Eu preferiria usar o modelo systemd
de iniciar serviços.
Na minha opinião, os initscripts tradicionais podem ser complicados e, às vezes, podem requerer um conhecimento mais profundo dos scripts de shell. Por outro lado, systemd
"initscript" ou unit
arquivo de configuração para um serviço ( man systemd.unit
) é mais fácil de manter, pois possui uma sintaxe simples semelhante a .INI
files. Você pode tentar escrever algum arquivo de unidade e ativá-lo, largando o arquivo no diretório /etc/systemd/system
. Esse diretório tem precedência mais alta que o diretório padrão /usr/lib/systemd/system
. Um exemplo da unidade% daemon sshd
segue:
[Unit]
Description=OpenSSH Daemon
After=syslog.target network.target
[Service]
EnvironmentFile=/etc/sysconfig/ssh
ExecStartPre=/usr/sbin/sshd-gen-keys-start
ExecStart=/usr/sbin/sshd -D $SSHD_OPTS
ExecReload=/bin/kill -HUP $MAINPID
KillMode=process
Restart=always
[Install]
WantedBy=multi-user.target
Ou você pode ficar com initscripts "legados" quando estiver usando. Mas você perderá alguns recursos interessantes de systemd
como:
- tempo de inicialização mais rápido, inicialização paralela real de serviços
- tratamento automático de dependências
- moitoring de serviços e seu reinício automático dos que falharam
- e muito mais
Por fim, lembre-se de que se houver uma unidade ( sshd.service
) com o mesmo nome de base como um script de inicialização ( /etc/init.d/sshd
), o script será ignorado e a unidade systemd
será preferida e usada.