Чому в команді служби не заповнюється спеціальна вкладка назв завдань на початку?


16

Я звик створювати сервіси для запуску з файлом, /etc/init/<service>.confі він працює прекрасно. Єдине, що я хотів би - це завершення вкладки так само, як зараз у будь-якій службі /etc/init.d/.

Під час написання служби sudo xx назва сервісу повинна з’являтися.

Чи є спосіб додати початкові послуги до цього списку автоматичного завершення?


Привіт, ви пробували раніше?
rɑːdʒɑ

Відповіді:


25

Кожен пакунок, що забезпечує стандартний демон, що використовує початковий старт, зобов'язаний надати символьне посилання в /etc/init.dполітиці Debian. Тож автодоповнення вже працює. Переконайтеся, що у вас встановлений пакет, якщо у вас є проблеми.sudo service namebash-completion

Якщо ви створюєте власні початкові завдання, тоді посилайтеся на посилання, подібні до інших завдань на початковому рівні. Це змусить ваші власні робочі місця працювати так само./etc/init.d/your_job/lib/init/upstart-job

Існують спеціальні /etc/initпочаткові завдання , які не мають відповідного запису /etc/init.d. Це виняток. З політики Debian:

Виняток із цього правила - це сценарії чи завдання, надані самою програмою init; такі завдання можуть знадобитися для еквівалента сценарію /etc/rcS.d/, специфічного для впровадження, і не можуть мати відповідність один до одного зі сценаріями init.

Наразі ці винятки не працюють bash-completion. Тим НЕ менше, ви можете використовувати start, stop, restartі reloadбезпосередньо без service, і автодоповнення буде працювати. Наприклад, sudo start shutправильно автозавершує. Але зазвичай вам не потрібно безпосередньо телефонувати для init.dпочаткових завдань, у яких немає відповідного запису.

Примітка. Я перевірив це на Saucy. Якщо підтримка не з’являється в старій версії, можливо, вона там недоступна (але ви отримаєте її незабаром, коли оновите до достатньо нового випуску).


Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.