Должны ли использоваться «invoke-rc.d» или «service» для перезапуска служб?

Я смущен относительно того, что лучше всего и в каких обстоятельствах:

invoke-rc.d apache2 restart 

или

 service apache2 restart 

Есть ли реальная разница?

man service есть следующий интересный бит:

служба запускает сценарий инициализации System V как можно более предсказуемую среду, удаляя большинство переменных окружения и с текущим рабочим каталогом, установленным в /.

Меня интересует главным образом Debian, но также Mint (также основанный на Debian).

  • Cron job throwing error "service: not found ", но при выполнении вручную в терминальном скрипте работает нормально
  • Как работают службы в Debian и как я могу ими управлять?
  • Как избежать sudo при работе с файлами, принадлежащими учетной записи службы?
  • Как мы можем разрешить пользователям без полномочий root управлять сервисом system.d?
  • rpc.statd работает в системе, не использующей NFS
  • start-stop-daemon делает cron pidfile с неправильным pid
  • Как проверить, установлена ​​ли Samba
  • Запуск сценария Python в виртуальной среде Conda в качестве службы
  • One Solution collect form web for “Должны ли использоваться «invoke-rc.d» или «service» для перезапуска служб?”

    На официальной странице вики Debian на демонах говорится, что вы используете service :

     # service ssh restart Restarting OpenBSD Secure Shell server: sshd. 

    Функциональное service и invoke-rc.d в основном эквивалентны:

    • invoke-rc.d является предпочтительной командой для сценариев поддержки пакетов, в соответствии с справочной страницей команды
    • service имеет уникальную опцию --status-all , которая запрашивает статус всех доступных демонов

    Похоже, что service – это ориентированная на пользователя команда, а invoke-rc.d – для других целей.

    Linux и Unix - лучшая ОС в мире.