diff options
| -rw-r--r-- | ChangeLog | 3 | ||||
| -rw-r--r-- | examples/example.pgsql | 5 | ||||
| -rw-r--r-- | handlers/pgsql | 20 | ||||
| -rw-r--r-- | handlers/pgsql.helper | 5 | ||||
| -rwxr-xr-x | src/backupninja.in | 1 | 
5 files changed, 23 insertions, 11 deletions
| @@ -7,6 +7,9 @@ version 0.9.5 -- unreleased  	sys:  	 . Fixed typo breaking things for VServers.  	 . Fix bug when vrootdir is on its own partition (Closes: #395928) +	pgsql: +	 . Support configuring PGSQLUSER for real, and document it a bit +	   (Closes: #396578)      fixed automake 'make install' bug that failed if /etc/backup.d already      existed diff --git a/examples/example.pgsql b/examples/example.pgsql index d9aab42..42f045e 100644 --- a/examples/example.pgsql +++ b/examples/example.pgsql @@ -17,4 +17,7 @@  # compress = < yes | no > (default = yes)  # if yes, compress the pg_dump/pg_dumpall output.  - +### You can also set the following variables in /etc/backupninja.conf: +# PGSQLDUMP: pg_dump path (default: /usr/bin/pg_dump) +# PGSQLDUMPALL: pg_dumpall path (default: /usr/bin/pg_dumpall) +# PGSQLUSER: user running PostgreSQL (default: postgres) diff --git a/handlers/pgsql b/handlers/pgsql index 1b91624..fb8fa4f 100644 --- a/handlers/pgsql +++ b/handlers/pgsql @@ -64,10 +64,10 @@ fi  if [ $usevserver = yes ]; then     pguid=`$VSERVER $vsname exec getent passwd $PGSQLUSER | awk -F: '{print $3}'`  else -   pguid=`getent passwd postgres | awk -F: '{print $3}'` +   pguid=`getent passwd $PGSQLUSER | awk -F: '{print $3}'`  fi  [ -n "$pguid" ] || \ -    fatal "No user called postgres`[ $usevserver = no ] || echo \" on vserver $vsname\"`." +    fatal "No user called $PGSQLUSER`[ $usevserver = no ] || echo \" on vserver $vsname\"`."  debug "chown $pguid $vroot$backupdir"  chown $pguid $vroot$backupdir  debug "chmod 700 $vroot$backupdir" @@ -77,15 +77,15 @@ chmod 700 $vroot$backupdir  if [ "$databases" == "all" ]; then      if [ $usevserver = yes ]; then         if [ "$compress" == "yes" ]; then           -          execstr="$VSERVER $vsname exec su - postgres -c \"$PGSQLDUMPALL | $GZIP > $backupdir/${vsname}.sql.gz\"" +          execstr="$VSERVER $vsname exec su - $PGSQLUSER -c \"$PGSQLDUMPALL | $GZIP > $backupdir/${vsname}.sql.gz\""         else -          execstr="$VSERVER $vsname exec su - postgres -c \"$PGSQLDUMPALL > $backupdir/${vsname}.sql\"" +          execstr="$VSERVER $vsname exec su - $PGSQLUSER -c \"$PGSQLDUMPALL > $backupdir/${vsname}.sql\""         fi      else         if [ "$compress" == "yes" ]; then -          execstr="su - postgres -c \"$PGSQLDUMPALL | $GZIP > $backupdir/${localhost}-all.sql.gz\"" +          execstr="su - $PGSQLUSER -c \"$PGSQLDUMPALL | $GZIP > $backupdir/${localhost}-all.sql.gz\""         else -	execstr="su - postgres -c \"$PGSQLDUMPALL > $backupdir/${localhost}-all.sql\"" +	execstr="su - $PGSQLUSER -c \"$PGSQLDUMPALL > $backupdir/${localhost}-all.sql\""         fi      fi      debug "$execstr" @@ -106,15 +106,15 @@ else      for db in $databases; do  	if [ $usevserver = yes ]; then             if [ "$compress" == "yes" ]; then -              execstr="$VSERVER $vsname exec su - postgres -c \"$PGSQLDUMP $db | $GZIP > $backupdir/${db}.sql.gz\"" +              execstr="$VSERVER $vsname exec su - $PGSQLUSER -c \"$PGSQLDUMP $db | $GZIP > $backupdir/${db}.sql.gz\""             else -              execstr="$VSERVER $vsname exec su - postgres -c \"$PGSQLDUMP $db | > $backupdir/${db}.sql\"" +              execstr="$VSERVER $vsname exec su - $PGSQLUSER -c \"$PGSQLDUMP $db | > $backupdir/${db}.sql\""             fi  	else             if [ "$compress" == "yes" ]; then -              execstr="su - postgres -c \"$PGSQLDUMP $db | $GZIP > $backupdir/${db}.sql.gz\"" +              execstr="su - $PGSQLUSER -c \"$PGSQLDUMP $db | $GZIP > $backupdir/${db}.sql.gz\""             else -              execstr="su - postgres -c \"$PGSQLDUMP $db > $backupdir/${db}.sql\"" +              execstr="su - $PGSQLUSER -c \"$PGSQLDUMP $db > $backupdir/${db}.sql\""             fi  	fi  	debug "$execstr" diff --git a/handlers/pgsql.helper b/handlers/pgsql.helper index 2b05339..8024616 100644 --- a/handlers/pgsql.helper +++ b/handlers/pgsql.helper @@ -96,6 +96,11 @@ $pgsql_databases  # if yes, compress the pg_dump/pg_dumpall output.   $pgsql_compress +### You can also set the following variables in backupninja.conf: +# PGSQLDUMP: pg_dump path (default: /usr/bin/pg_dump) +# PGSQLDUMPALL: pg_dumpall path (default: /usr/bin/pg_dumpall) +# PGSQLUSER: user running PostgreSQL (default: postgres) +  EOF     chmod 600 $next_filename diff --git a/src/backupninja.in b/src/backupninja.in index 920d89e..8d1257f 100755 --- a/src/backupninja.in +++ b/src/backupninja.in @@ -450,6 +450,7 @@ getconf MYSQLHOTCOPY /usr/bin/mysqlhotcopy  getconf MYSQLDUMP /usr/bin/mysqldump  getconf PGSQLDUMP /usr/bin/pg_dump  getconf PGSQLDUMPALL /usr/bin/pg_dumpall +getconf PGSQLUSER postgres  getconf GZIP /bin/gzip  getconf RSYNC /usr/bin/rsync  getconf admingroup root | 
