Запустить запуск демона с помощью Linux

Я пишу простое приложение-демон с использованием C / C ++, и я хочу, чтобы он начинался с запуска Linux.

Я новичок в системах Linux.

Я попытался изменить /etc/init.d/skeleton чтобы добавить скрипт в каталог init.d следующим образом

  1. добавлено мое приложение-демон в каталоге /usr/sbin/ и изменилось NAME=myDaemon

  2. написать update-rc.d myDaemon default в терминале

  3. и он добавил символические ссылки на rc#.d директории

Но это не сработало.

Моя вторая попытка – изменить rc.local как

 /usr/sbin/myDaemon start 

Но это тоже не сработало.

Как я могу заставить моего демона начать с ОС? Я хочу делать все программно.

Я использую Ubuntu 10.10, но если существует общее решение для всех дистрибутивов, это было бы здорово!

  • Перечислить допустимые значения для mknod
  • Как linux kernel Makefile понимает .config?
  • Arch Linux не загружается после обновления системы
  • Почему Linux-игры менее эффективны, чем Win 7?
  • Должен ли я записывать ошибки вверх по течению, моим менеджерам распространения или тому и другому?
  • Можно ли увидеть мертвые успехи?
  • Начать процесс root при загрузке?
  • Почему пользователь sudo может использовать sched_setscheduler SCHED_RR, а root не может?
  • 2 Solutions collect form web for “Запустить запуск демона с помощью Linux”

    Вы не изменяете файл /etc/init.d/skeleton . Вы скопируете его в новый файл /etc/init.d/mamoudservice (замените mamoudservice на более подходящее имя), а затем отредактируйте этот новый файл соответствующим образом.

    Затем вы добавляете символическую ссылку из /etc/rc2.d/S99mamoudservice в /etc/init.d/mamoudservice и т. Д.

    Используйте, например,

      /bin/bash -vx /etc/init.d/mamoudservice start 

    чтобы понять, как интерпретатор скрипта интерпретирует оболочку bash .

    Если ваша программа daemon /usr/sbin/mamouddaemon закодирована на C или на C ++, я предлагаю использовать openlog и syslog внутри, по крайней мере, для получения сообщений об отладке (не выводить на stderr или stdout в деамоне, это никуда не годится) ,

    Альтернативой тому, чтобы ваш скрипт /etc/init.d/mamoudservice мог разместить запись @reboot в вашем crontab

    Попробуйте chkconfig с именем вашего сервиса, а затем «on». Это должно выполняться как root.

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