Цитата(andrew_b @ Aug 17 2012, 14:59)

Абы какие скрипты в /etc/init.d класть нельзя. Они должны удовлетворять некоторому шаблону. Посмотрите, как устроен любой скрипт из этого каталога.
Не правда. Иниту не важно что внутри скрипта, главное чтобы был исполняемым и шабанг (#!/bin/sh) присутствовал. start/stop и пр. - это удобства
http://www.debian-administration.org/articles/28Бесконечный цикл в init-скрипте - плохая идея. Если просто из терминала приложение запускается и работает, а из инит-скрипта - нет, то смотрите в сторону окружения, может не хватает какой-то ещё программы ему, которая есть у юзера в PATH, но сама переменная PATH на момент запуска init не содержит нужного пути. Или библиотека какая
Цитата(kurtis)
Я бы добавил в самое начало приложения что-то вроде
fprintf(stderr, "Application %s started, %s %s\n", APP_NAME, __DATE__, __TIME__);
Тогда будет видно в чем именно проблема, что приложение не запустилось, или оно запустилось, но работает не так как ожидалось.
Да, но что Вам дадут дата и время сборки приложения? Тогда уж
Код
time_t t = time(NULL);
fprintf(stderr, "Application %s started %s\n", argv[0], ctime(&t));