LINUX.ORG.RU
ФорумAdmin

запуск процесса при загрузке системы


0

0

Куда нужно добавить запись, чтобы запускался определенный процесс при загрузке системы под определенным пользователем? В cron вроде по времени только можно установить или как сделать скрипт который все время проверял запущен или нет данный процес и чтобы он запусклся? redhat 9.0

Заранее спасибо

anonymous

Ответ на: комментарий от fagot

А ты лучше помалкивай :) Везде комментарии у тебя такого типа, типа почитай доку по qmail, смысл заходить на форум и всем писать это?

anonymous
()
Ответ на: комментарий от anonymous

Почему всем? Мало ты форум читал :) А какой вопрос, такой ответ.

Допустим, я уже несколько раз писал ответ на _этот_ вопрос, еще раз писать лень. Вот и все.

А если чел таки прочитает книжку, ему станет лучше, скажешь нет?

fagot ★★★★★
()
Ответ на: комментарий от anonymous

>комментарии у тебя такого типа

И в конце-концов, ответ-то правильный! Пусть меня закидают камнями, если это ему не поможет.

fagot ★★★★★
()

> Куда нужно добавить запись

RTFM System V init в умных книжках, тебе же правильно сказали!
Лично я решил проблему следующим скриптом /etc/init.d/autoload

#!/bin/bash
#
# autorun:      Runs programs at boot time
#
# Version:      @(#) /etc/init.d/xfs 2.0
#
# chkconfig: 345 99 01
# description:  Runs programs at boot time
#
# hide: true

# Source function library.
export LANG=C
. /etc/init.d/functions

umask 133

# Make sure that xfs has "/" as the CWD
cd /

start() {
    if [ -d /etc/autoload ]
    then
        programs=`find /etc/autoload -type f | sort`
        for command in $programs; do
            if [ -x $command ]
            then
                echo "Autoload: starting $command"
                $command start
            fi
        done
    fi
    touch /var/lock/subsys/autoload
}

stop() {
    if [ -d /etc/autoload ]
    then
        programs=`find /etc/autoload -type f | sort -r`
        for command in $programs; do
            if [ -x $command ]
            then
                echo "Autoload: stopping $command"
                $command stop
            fi
        done
    fi
    rm -f /var/lock/subsys/autoload 2>/dev/null
}

restart() {
   stop
   start
}

case "$1" in
  start)
        if [ -f /var/lock/subsys/autoload ]
        then
            echo "Already running"
            exit 1
        else
            start
        fi
        ;;
  stop)
        if [ -f /var/lock/subsys/autoload ]
        then
            stop
        else
            echo "Was not started"
            exit 1
        fi
        ;;
  restart)
        restart
        ;;
  status)
        if [ -f /var/lock/subsys/autoload ]
        then
            echo "Autoload active"
            exit 0
        else
            echo "Autoload is not active"
            exit 1
        fi
        ;;
  rhstatus)
        status
        ;;
  *)
        echo $"Usage: $prog {start|stop|restart|status|rhstatus}"
        exit 1
esac

exit 0

После написания скрипта достаточно сделать chkconfig --add autoload

Все мои скрипты, которые должны запускаться в момент запуска,
складываются в /etc/autoload, и скрипт вызывает их с параметром
start в момент старта системы и с параметром stop при остановке
системы. Чтобы а чтобы программы запускались с правами нужного
пользователя, достаточно прочесть man su

no-dashi ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.