differences between service command and running command directly
ESGLinux
esggrupos at gmail.com
Tue Oct 4 16:27:25 UTC 2011
GOTCHA!!!!
I always have read that running services using service command is safer than
using the script directly
the key is that service runs the script with env -i (with an empty
enviroment) so if there is any wrong variable you are protected.
My problem is that in /etc/profile.d/ I have defined a wrong variable and
when I run /etc/init.d/httpd status the scripts runs with the corrupt
enviroment.
with service you allways run with an empty enviroment so I don´t get the
error.
Thank you all for your help. I hope it gives a bit of light about it ;-)
ESG
2011/10/4 Daniel Carrillo <daniel.carrillo at gmail.com>
> 2011/10/4 Barry Brimer <lists at brimer.org>:
> >> I use service and running the command in /etc/init.d/ directly to run
> the
> >> services in that directory. Until now I thought it was the same to run,
> >> for
> >> example:
> >>
> >> service httpd status
> >>
> >> and
> >>
> >> /etc/init.d/httpd status
> >>
> >> but now I have a server that they don´t do the same:
> >
> > <snip>
> >
> >> Anyone can explain me this? I suposse it´s something about enviroment
> >> variables, but I can´t see the difference
> >
> > I would run both with bash -x and redirect the output and compare or diff
> > them.
> >
> > bash -x service httpd status >/tmp/service.log 2>&1
> >
> > bash -x /etc/init.d/httpd status >/tmp/initscript.log 2>&1
>
> IMHO: This has no sense, because service is only a wrapper who calls
> to /etc/init.d/xservice
>
> man service
>
> service runs a System V init script in as predictable environment as
> possible, removing most environment variables and with current working
> directory set to /.
>
> Best regrads.
>
> --
> redhat-list mailing list
> unsubscribe mailto:redhat-list-request at redhat.com?subject=unsubscribe
> https://www.redhat.com/mailman/listinfo/redhat-list
>
More information about the redhat-list
mailing list