Re: [HACKERS] text patch -- sugg cmd when run as root

From: "Pedro J(dot) Lobo" <pjlobo(at)euitt(dot)upm(dot)es>
To: The Hermit Hacker <scrappy(at)hub(dot)org>
Cc: David Gould <dg(at)illustra(dot)com>, Brett McCormick <brett(at)work(dot)chicken(dot)org>, pgsql-hackers(at)hub(dot)org
Subject: Re: [HACKERS] text patch -- sugg cmd when run as root
Date: 1998-04-30 14:28:45
Message-ID: Pine.OSF.3.96.980430162120.23147D-100000@haddock.euitt.upm.es
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Thu, 30 Apr 1998, The Hermit Hacker wrote:

>On Wed, 29 Apr 1998, David Gould wrote:
>
>> > When you run postgresql as root, the command it gives for putting in
>> > your startup script is a little weird. The main issue is that 2>&1
>> > only works in bash, not tcsh. >& works in both, so it seems
>> > preferable. Another minor issue is that it echoes the command and
>> > pipes it through su. Shouldn't this be "su - postgres -c 'cmd'"? Do
>> > all versions of su have the '-c' argument? piping it through seems
>> > weird, but maybe it isn't.
>> >
>> > this is a straight diff for src/backend/main/main.c
>> >
>> > --cut here--
>> > 38c38
>> > < echo \"postmaster -B 256 >/var/log/pglog 2>&1 &\" | su - postgres\n\n"
>> > ---
>> > > su - postgres -c 'postmaster -B 256 >& /var/log/pglog' &\n\n"
>> > --cut here--
>>
>> You have tcsh as the root shell???
>
> As do I...so? I just make sure I put a copy in /bin and you're
>fine...or, at least, I haven't been burnt yet. I can't stand the other
>shells :(

IMHO, the startup script should be written for plain sh (best) or plain
csh, because those are the shells that are guaranteed to exist on any Un*x
system. And, it doesn't matter which shell you are using (bash, tcsh, ksh,
zsh or whatever), simply put "#!/bin/sh" or "#!/bin/csh" as the first line
on the script, and you're done.

As a side note: Marc, if you use tcsh as root's shell, you also must check
that tcsh is statically linked. Anyway, I keep /bin/sh as root's shell,
and the first command I execute when I log on as root is "bash ; exit". I
could even modify root's .profile to execute it automatically, but I'm too
lazy :-)

-------------------------------------------------------------------
Pedro José Lobo Perea Tel: +34 91 336 78 19
Centro de Cálculo Fax: +34 91 331 92 29
EUIT Telecomunicación - UPM e-mail: pjlobo(at)euitt(dot)upm(dot)es

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 1998-04-30 14:52:47 Re: [HACKERS] removing the exec() from doexec()
Previous Message Bruce Momjian 1998-04-30 14:18:44 Re: [HACKERS] removing the exec() from doexec()