Re: Service started via service(8) fails

From: Patrick M. Hausen <hausen_at_punkt.de>
Date: Thu, 27 May 2021 10:19:01 UTC
Hi all,

> Am 27.05.2021 um 11:56 schrieb Eugene Grosbein <eugen@grosbein.net>:
> 
> 27.05.2021 15:18, Ingeborg Hellemo wrote:
> 
>> FreeBSD 11.4-RELEASE-p3
>> 
>> What, if any, difference is there between using 'service <something> restart'
>> and /usr/local/etc/rc.d/<something> restart'?
>> 
>> I have this mindboggling situation where using 'service tac_plus restart'
>> leads to a service that is running but not working properly, whereas
>> '/usr/local/etc/rc.d/tac_plus restart' gives me a working service.
> 
> The "service" command resets the environment  but direct script invocation inherits the environment.
> Such problem often is a sign of wrong startup script or configuration of the service
> that makes incorrect assumption about PATH and/or locale settings.
> It may fail to find some commands because it does not set PATH to include /usr/local/... directories
> or fail due to incorrect locale assumptions or even TZ (time zone) settings.

Since /usr/sbin/service is itself a shell script you could try

sh -x /usr/sbin/service tac_plus restart
sh -x /usr/local/etc/rc.d/tac_plus restart

and compare what is actually executed.

Kind regards,
Patrick
--
punkt.de GmbH
Patrick M. Hausen
.infrastructure

Kaiserallee 13a
76133 Karlsruhe

Tel. +49 721 9109500

https://infrastructure.punkt.de
info@punkt.de

AG Mannheim 108285
Geschäftsführer: Jürgen Egeling, Daniel Lienert, Fabian Stein