icb писал(а):undefined писал(а): Версия?
#freebsd-version
10.0-RELEASE-p18
undefined писал(а): Обновляли недавно?
Месяц или чуть больше, точно не помню.
undefined писал(а): А порты остались старые и /usr/local/etc/rc.d/* тоже?
Порты обновлял. Часть софта пересобрал, часть остались прошлые.
Ругается вроде даже на то, что переставлялось после обновления.
undefined писал(а): # man service
Смотрел, там особо ничего не написано.
Появляется запись в логе после
service -e, остальные опции вроде не пишут подобное.
Все, на что ругается, находится в
/usr/local/etc/rc.d.
Откуда лезет
WARNING: $ is not set properly - see rc.conf(5) не могу сказать, даже не знаю в какую сторону смотреть.
rc.subr - время от времени изменяют, в Вашем(нашем) случае, проблема в определении переменной rcvar
и ее проверке при service -e -> checkyesno:
/usr/sbin/service (от 10.2):
...
if [ -n "$ENABLED" ]; then
for file in $files; do
if grep -q ^rcvar $file; then
eval `grep ^name= $file`
eval `grep ^rcvar $file`
checkyesno $rcvar 2>/dev/null && echo $file
fi
done
exit 0
fi
...
/etc/rc.subr (10.2):
...
checkyesno()
{
eval _value=\$${1}
debug "checkyesno: $1 is set to $_value."
case $_value in
# "yes", "true", "on", or "1"
[Yy][Ee][Ss]|[Tt][Rr][Uu][Ee]|[Oo][Nn]|1)
return 0
;;
# "no", "false", "off", or "0"
[Nn][Oo]|[Ff][Aa][Ll][Ss][Ee]|[Oo][Ff][Ff]|0)
return 1
;;
*)
warn "\$${1} is not set properly - see rc.conf(5)."
return 1
;;
esac
}
...
# man service
...
-e List services that are enabled. The list of scripts to check is com?
piled using rcorder(8) the same way that it is done in rc(8), then
that list of scripts is checked for an "rcvar" assignment. If
present the script is checked to see if it is enabled.
service -e - список доступных, далее идет проверка rcvar, допустим у нас установлен apache24:
# less /usr/local/etc/rc.d/apache24
...
name="apache24"
rcvar=apache24_enable
...
[ -z "$apache24_enable" ] && apache24_enable="NO"
получаем: rcvar у нас apache24_enable - но его значение в /etc/rc.conf не определено, не
важно что для него есть default в самом скрипте.
Вывод, ничего страшного, но если Вас смущает, просто задайте все rcvar в вашем /etc/rc.conf
-> те что стартуете в yes/true/on/1, те что не стартуют в no/false/off/1.
Возможно, доработают конструктив, но пока на сие забили уже 4-5 лет.