¿Dónde está mi /etc/init.d/skeleton en OpenSuse 12.3?

¿Dónde está mi /etc/init.d/skeleton en OpenSuse 12.3?

En una instalación nueva de OpenSuse 12.3, quiero "daemonizar" un programa. Y, en todos los ejemplos encontrados en Internet, veo que primero tengo que crear uno /etc/init.d/myscriptbasado en /etc/init.d/skeleton...

Pero no tengo /etc/init.d/skeleton... ¿Existe otro lugar para este archivo? ¿O tal vez necesito instalar algo?

El sistema está actualizado, lo comprobé primero.

Sé que puedo intentar copiar otro /etc/init.dscript existente y modificarlo, o crear uno nuevo, pero sabría si lo estoy haciendo mal o si hay otra forma especial de hacerlo en OpenSuse.

Respuesta1

No estoy seguro de dónde /etc/init.d/skeletondesapareció el archivo, pero esperaría que este cambio esté relacionado con el reemplazo del tradicional SysV init daemondesde systemdOpenSUSE 12. systemdEs totalmente compatible con scripts de inicio bien conocidos, pero preferiría usar el systemdmodelo de servicios de inicio.

En mi opinión, los scripts de inicio tradicionales pueden ser complicados y, a veces, pueden requerir un conocimiento más profundo de los scripts de shell. Por otro lado, systemdel "initscript" o unitarchivo de configuración de un servicio ( man systemd.unit) es más fácil de mantener ya que tiene una sintaxis simple similar a la de .INIlos archivos. Puede intentar escribir algún archivo de unidad y habilitarlo soltando el archivo en el /etc/systemd/systemdirectorio. Este directorio tiene mayor prioridad que el directorio predeterminado /usr/lib/systemd/system. A continuación se muestra un ejemplo de sshdunidad demonio:

[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

O puede seguir con los scripts de inicio "heredados" a medida que los utiliza. Pero perderás algunas características interesantes systemdcomo:

  • tiempo de arranque más rápido, inicio paralelo real de servicios
  • manejo automático de dependencias
  • Monitoreo de servicios y reinicio automático de los que fallaron.
  • y mucho más

Finalmente, tenga en cuenta que si hay una unidad ( sshd.service) con el mismo nombre base que un script de inicio ( /etc/init.d/sshd), entonces el script de inicio se ignora y systemdse preferirá y utilizará la unidad.

información relacionada