From f7b836eb83dce05976dd07f71c92c16a718b89f6 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Tue, 25 Sep 2012 13:52:57 -0400 Subject: [PATCH] Fix examples of how to use "su" while starting the server. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The syntax "su -c 'command' username" is not accepted by all versions of su, for example not OpenBSD's. More portable is "su username -c 'command'". So change runtime.sgml to recommend that syntax. Also, add a -D switch to the OpenBSD example script, for consistency with other examples. Per Denis Lapshin and Gábor Hidvégi. --- doc/src/sgml/runtime.sgml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/doc/src/sgml/runtime.sgml b/doc/src/sgml/runtime.sgml index ff8ef7ed403..bb7b8c16f2e 100644 --- a/doc/src/sgml/runtime.sgml +++ b/doc/src/sgml/runtime.sgml @@ -286,10 +286,10 @@ pg_ctl start -l logfile rc.d directories. Whatever you do, the server must be run by the PostgreSQL user account and not by root or any other user. Therefore you - probably should form your commands using su -c '...' - postgres. For example: + probably should form your commands using + su postgres -c '...'. For example: -su -c 'pg_ctl start -D /usr/local/pgsql/data -l serverlog' postgres +su postgres -c 'pg_ctl start -D /usr/local/pgsql/data -l serverlog' @@ -315,7 +315,7 @@ su -c 'pg_ctl start -D /usr/local/pgsql/data -l serverlog' postgres OpenBSDstart script if [ -x /usr/local/pgsql/bin/pg_ctl -a -x /usr/local/pgsql/bin/postgres ]; then - su - -c '/usr/local/pgsql/bin/pg_ctl start -l /var/postgresql/log -s' postgres + su -l postgres -c '/usr/local/pgsql/bin/pg_ctl start -s -l /var/postgresql/log -D /usr/local/pgsql/data' echo -n ' postgresql' fi