Порядок запуска rc.d-скриптов


Главная Форумы POWER Systems AIX/Hardware Порядок запуска rc.d-скриптов

В этой теме 3 ответа, 3 участника, последнее обновление  Andriy 5 года/лет, 7 мес. назад.

  • Автор
    Сообщения
  • #16720

    Albert Maksimov
    Участник

    Каким образом можно определить последовательность запуска rc.d скриптов?
    Необходимо, чтобы один скрипт запускался после выполнения другого.

    В BSD-системах такое делается просто – в скрипте, в поле REQUIRE пишем то, что необходимо для запуска этого скрипта. Соответственно и запускаться он будет во вторую очередь.

    Как подобное организовать в AIX?

  • #16721

    andrewk
    Участник

    # lsitab l2
    l2:2:wait:/etc/rc.d/rc 2

    # cat /etc/rc.d/rc

    #check if run level directory exists
    if [[ -s /etc/rc.d/rc${run_level}.d ]] then

    #get a list of the “kill” scripts in this directory
    k_list=$(/usr/bin/ls /etc/rc.d/rc${run_level}.d | /usr/bin/grep “^K” | /usr/bin/sort -)

    #get a list of the “start” scripts in this directory
    s_list=$(/usr/bin/ls /etc/rc.d/rc${run_level}.d | /usr/bin/grep “^S” | /usr/bin/sort -)

    #execute “kill” scripts
    if [[ -n ${k_list} ]] then
    for item in ${k_list}
    do
    /etc/rc.d/rc${run_level}.d/${item} stop
    done
    fi

    #execute “start” scripts
    if [[ -n ${s_list} ]] then
    for item in ${s_list}
    do
    /etc/rc.d/rc${run_level}.d/${item} start
    done
    fi

    видите там sort -? правильный ответ – по алфавиту. так, как оно всегда и было в System V.

  • #16722

    Albert Maksimov
    Участник

    Спасибо.

    Посмеялся над собой :laugh: – полез на форум, вместо того, чтобы посмотреть скрипт.

  • #16723

    Andriy
    Участник

    посмотрите скрипт /etc/rc.d/rc – в зависимости от runlevel он вызывается в процессе загрузки системы (lsitab -a | grep rc) и вызывает соответствующие скрипты из rc${runlevel}.d . внутри же скрипты исполняются исключительно по порядку, насколько мне известно

Для ответа в этой теме необходимо авторизоваться.