Я привык создавать сервисы upstart с файлом в нем, /etc/init/<service>.conf
и он прекрасно работает, единственное, что я хотел бы, это иметь завершение табуляции так же, как и у каждого сервиса в /etc/init.d/ прямо сейчас.
При написании службы sudo xx название службы должно появляться.
Есть ли способ добавить сервис upstart в этот список автозаполнения?
Ответы:
Каждый пакет, который предоставляет стандартный демон, использующий upstart, должен предоставлять символическую ссылку в соответствии
/etc/init.d
с политикой Debian. Так что автозаполнение для уже работает. Убедитесь, что у вас установлен пакет, если у вас возникли проблемы.sudo service name
bash-completion
Если вы создаете свои собственные рабочие места выскочки, то символические ссылки на как и другие рабочие выскочки делают уже. Это заставит ваши собственные рабочие места работать так же.
/etc/init.d/your_job
/lib/init/upstart-job
Есть специальные выскочки, в
/etc/init
которых нет соответствующей записи/etc/init.d
. Это исключение. Из политики Debian:Эти исключения в настоящее время не работают
bash-completion
. Тем не менее, вы можете использоватьstart
,stop
,restart
иreload
непосредственно безservice
, и автодополнение будет работать. Например,sudo start shut
правильно автозаполнение. Но обычно вам не нужно напрямую вызывать выскочившие задания, у которых нет соответствующейinit.d
записи.Примечание: я проверял это на Saucy. Если поддержка не появляется в более старом выпуске, возможно, ее там нет (но вы получите ее в ближайшее время, когда перейдете на достаточно новый выпуск).
источник