start-stop-daemon на CentOS

Потребовалось сделать start-stop-daemon на CentOS, чтобы пускать свои процессы в виде демонов. Самым простым решением показалось использование одноименного демона для Debian и сборка его под CentOS. Все написанное, вероятно, будет справедливо и для других дистрибутивов, но я не проверял 🙂

1. Для начала устанавливаем компилятор, линковщик и все остальное для сборки пакетов. Если у вас установлено, можно пропустить 🙂

# yum install gcc gcc-c++ m4 make automake libtool gettext openssl-devel

2. Теперь скачиваем нужный пакет, распаковываем его:

# mkdir /tmp/start-stop
# cd /tmp/start-stop
# wget http://ftp.de.debian.org/debian/pool/main/d/dpkg/dpkg_1.14.31.tar.gz
# tar xfz *.tar.gz

3. Компилируем и пробуем собрать:

# cd /tmp/start-stop/dpkg_1.14.31
./configure
./make
cd utils
./make install

У меня сразу не собралось, ругалось на отсутствие pkg-config, поэтому пришлось собрать pkg-config:

# mkdir /tmp/pkgconfig
# cd /tmp/pkgconfig
# wget http://pkgconfig.freedesktop.org/releases/pkg-config-0.23.tar.gz
# tar -xzfv pkg-config-0.23.tar.gz
# cd pkg-config-0.23
# ./configure
# make
# make install

И затем повторить пункт 2.
После этого start-stop-daemon работает, можно веселиться:

# start-stop-daemon
start-stop-daemon: need one of --start or --stop
Try `start-stop-daemon --help' for more information.

Комментарии 1

  • Пост весьма полезный, спасибо, мне правда на «сухой» RHEL6.1 EC2 instance потребовалось еще поставить и gcc-c++. Но тут я сам виноват, когда ставил gcc, make, видать забыл про него.

    Но дойти до самого конца это не помогло:

    [ec2-user@ip-ХХХХХ dpkg-1.14.31]$ cd utils/
    [ec2-user@ip-ХХХХХ utils]$ sudo make install
    gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -DLOCALEDIR=\»/usr/local/share/locale\» -idirafter ../libcompat -I../lib -g -O2 -MT start-stop-daemon.o -MD -MP -MF .deps/start-stop-daemon.Tpo -c -o start-stop-daemon.o start-stop-daemon.c
    mv -f .deps/start-stop-daemon.Tpo .deps/start-stop-daemon.Po
    make: *** No rule to make target `../libcompat/libcompat.a’, needed by `start-stop-daemon’. Stop.

    Workaround был найден здесь: https://www.centos.org/modules/newbb/viewtopic.php?viewmode=flat&topic_id=24207&forum=40
    Он не такой красивый, как у вас, но тоже работает.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *