Estoy acostumbrado a crear servicios de inicio con un archivo /etc/init/<service>.conf
y funciona perfectamente bien, lo único que me gustaría es completar las pestañas de la misma manera que todos los servicios en /etc/init.d/ lo tienen ahora.
Al escribir sudo service xx, debe aparecer el nombre del servicio.
¿Hay alguna manera de agregar servicios de arranque a esa lista de autocompletado?
Respuestas:
Se requiere que cada paquete que proporcione un demonio estándar que use upstart proporcione un enlace simbólico
/etc/init.d
por la política de Debian. Así autocompletado para ya funciona. Asegúrese de tener el paquete instalado si tiene problemas.sudo service name
bash-completion
Si está creando sus propios trabajos de inicio, entonces haga un enlace simbólico para que le gusten los otros trabajos de inicio. Esto hará que sus propios trabajos funcionen de la misma manera.
/etc/init.d/your_job
/lib/init/upstart-job
Hay trabajos especiales de inicio en los
/etc/init
que no tiene una entrada correspondiente/etc/init.d
. Estas son una excepción. De la política de Debian:Estas excepciones no funcionan actualmente con
bash-completion
. Sin embargo, se puede utilizarstart
,stop
,restart
yreload
directamente sinservice
, y la terminación automática funcionará. Por ejemplo,sudo start shut
correctamente se completa automáticamente. Pero normalmente no debería necesitar llamar directamente a trabajos de inicio que no tienen unainit.d
entrada correspondiente .Nota: Probé esto en Saucy. Si el soporte no aparece en una versión anterior, quizás no esté disponible allí (pero lo obtendrá pronto cuando actualice a una versión suficientemente nueva).
fuente