>>>надо видать обратно к 4-6-2 переходить, что то не понравилась мне 4-8
>>>
>>>консерватор я :) не все новое хорошее... IMHO!
>>
>>В процедуре запуска скриптов в /usr/local/etc/rc.d ни в 4.x ни в 5.x
>>НИЧЕГО не менялось.
>>man rc - всё описано!
>>
>>Всё, что нужно:
>>1. Бит выполнимости
>>2. Расширение .sh
>>3. Способность обрабатывать параметры start и stop
>Вот все - как есть
>-bash-2.05b# ls -l
>total 6
>-r-xr-xr-x 1 root wheel 181 Apr 11 16:16 000.mysql-client.sh
>
>-r-xr-xr-x 1 root wheel 106 Apr 11 15:42 2apache.sh
>
>-r-xr-xr-x 1 root wheel 992 Apr 12 12:39 arpwatch.sh
>
>
>что не так?
>я и 555 и 755 ставил один хрен :(
>не мог я случаем при компиляции ядра что то удалить что отвечает
>за запуск прог в автозагрузке? там кажись ничего такого и нету...
>
бог мой, проверь целостность файла /etc/rc.conf - ручаюсь за него, если
он редактировался в unix с помощью VI. Проверь в нем наличие открывающихся
и закрывающихся кавычек.
Выкинь из /etc/rc.conf ВСЕ что дублирует /etc/defaults/rc.conf - чтобы
не было переменных с одинаковыми параметрами.
Никогда не редактируй файлы в /etc/defaults/* - их используют как
шаблоны для своих /etc/make.conf и /etc/rc.conf - в последние добавляют
только НУЖНЫЕ переменные с НУЖНЫМИ значениями, остальное будет браться
из defaults.
Замени их на стандартные:
# cd /etc/defaults
# cp /usr/src/etc/defaults/* .
сравни ВСЕ /etc/rc* скрипты c оригиналами из /usr/src/etc/rc*
Везде же написано, НЕ ПРАВЬТЕ /etc/rc* , для этого используйте
/etc/rc.local - какая проблема посмотреть:
# less /etc/rc
...
# Do traditional (but rather obsolete) rc.local file if it exists. If you
# use this file and want to make it programmatic, source /etc/defaults/rc.conf
# in /etc/rc.local and add your custom variables to /etc/rc.conf, as
# shown below. Please do not put local extensions into /etc/rc itself.
# Use /etc/rc.local
#
# ---- rc.local ----
# if [ -r /etc/defaults/rc.conf ]; then
# . /etc/defaults/rc.conf
# source_rc_confs
# elif [ -r /etc/rc.conf ]; then
# . /etc/rc.conf
# fi
#
# ... additional startup conditionals ...
# ---- rc.local ----
#
if [ -r /etc/rc.local ]; then
echo -n 'Starting local daemons:'
sh /etc/rc.local
echo '.'
fi
И видим как ниже *) идет обнуление переменных, затем
наполняется переменная slist, затем цикл запуска if -x скрипт
исполняемый его запускают через trap(запрет прерываний) $script start
где имена берутся из переменной slist...
# For each valid dir in $local_startup, search for init scripts matching *.sh
#
case ${local_startup} in
[Nn][Oo] | '')
;;
*)
echo -n 'Local package initialization:'
slist=""
if [ -z "${script_name_sep}" ]; then
script_name_sep=" "
fi
for dir in ${local_startup}; do
if [ -d "${dir}" ]; then
for script in ${dir}/*.sh; do
slist="${slist}${script_name_sep}${script}"
done
fi
done
script_save_sep="$IFS"
IFS="${script_name_sep}"
for script in ${slist}; do
if [ -x "${script}" ]; then
(set -T
trap 'exit 1' 2
${script} start)
elif [ -f "${script}" -o -L "${script}" ]; then
echo -n " (skipping ${script##*/}, not executable)"
fi
done
IFS="${script_save_sep}"
echo '.'
;;
esac
...
Недаром ведь сказано НЕ ЗАБЫВАЙТЕ ДЕЛАТЬ: mergemaster
после upgrade'а.