Ошибки при использовании service

Простые/общие вопросы по UNIX системам. Спросите здесь, если вы новичок

Модераторы: vadim64, terminus

Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
icb
лейтенант
Сообщения: 751
Зарегистрирован: 2008-07-15 16:11:11

Ошибки при использовании service

Непрочитанное сообщение icb » 2016-01-09 22:01:30

При использовании service в syslog пишутся такие ошибки

Код: Выделить всё

/usr/sbin/service: WARNING: $ is not set properly - see rc.conf(5).
/usr/sbin/service: WARNING: $tcsd_enable is not set properly - see rc.conf(5).
/usr/sbin/service: WARNING: $snmptrapd_enable is not set properly - see rc.conf(5).
/usr/sbin/service: WARNING: $snmpd_enable is not set properly - see rc.conf(5).
/usr/sbin/service: WARNING: $php_fpm_enable is not set properly - see rc.conf(5).
/usr/sbin/service: WARNING: $htcacheclean_enable is not set properly - see rc.conf(5).
Для примера смотрю файл /usr/local/etc/rc.d/htcacheclean и там четко написано
# htcacheclean_enable (bool)
# Set to "NO" by default
# Set it to "YES" to enable htcacheclean
т.е. указывать значение htcacheclean_enable в rc.conf не обязательно.
А уж что значит ошибка WARNING: $ is not set properly - see rc.conf(5). вообще загадка.

Как чинить подобное?

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

guest
проходил мимо

Ошибки при использовании service

Непрочитанное сообщение guest » 2016-01-10 12:00:39

icb писал(а):При использовании service в syslog пишутся такие ошибки

Код: Выделить всё

/usr/sbin/service: WARNING: $ is not set properly - see rc.conf(5).
/usr/sbin/service: WARNING: $tcsd_enable is not set properly - see rc.conf(5).
/usr/sbin/service: WARNING: $snmptrapd_enable is not set properly - see rc.conf(5).
/usr/sbin/service: WARNING: $snmpd_enable is not set properly - see rc.conf(5).
/usr/sbin/service: WARNING: $php_fpm_enable is not set properly - see rc.conf(5).
/usr/sbin/service: WARNING: $htcacheclean_enable is not set properly - see rc.conf(5).
Для примера смотрю файл /usr/local/etc/rc.d/htcacheclean и там четко написано
# htcacheclean_enable (bool)
# Set to "NO" by default
# Set it to "YES" to enable htcacheclean
т.е. указывать значение htcacheclean_enable в rc.conf не обязательно.
А уж что значит ошибка WARNING: $ is not set properly - see rc.conf(5). вообще загадка.

Как чинить подобное?
дохтур, у мине эта..?

Версия? Обновляли недавно? /etc/rc* ? А порты остались старые и /usr/local/etc/rc.d/* тоже?

# man service

icb
лейтенант
Сообщения: 751
Зарегистрирован: 2008-07-15 16:11:11

Ошибки при использовании service

Непрочитанное сообщение icb » 2016-01-10 16:56:22

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) не могу сказать, даже не знаю в какую сторону смотреть.

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35426
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Ошибки при использовании service

Непрочитанное сообщение Alex Keda » 2016-01-10 17:00:14

rc.conf покажите штоле....
Убей их всех! Бог потом рассортирует...

icb
лейтенант
Сообщения: 751
Зарегистрирован: 2008-07-15 16:11:11

Ошибки при использовании service

Непрочитанное сообщение icb » 2016-01-10 17:05:11

Код: Выделить всё

dumpdev="NO"
syslogd_flags="-s -cc"
fsck_y_enable="YES"
background_fsck="NO"

sshd_enable="YES"
sendmail_enable="NONE"
###ntpd_enable="YES"
###ntpd_sync_on_start="YES"

#named_enable="YES"
#nginx_enable="YES"
apache24_enable="YES"
#php_fpm_enable="YES"
mysql_enable="YES"
mysql_dbdir="/db_mariadb"

zabbix_server_enable="YES"
zabbix_agentd_enable="YES"

guest
проходил мимо

Ошибки при использовании service

Непрочитанное сообщение guest » 2016-01-10 19:24:38

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 лет.