File: prerm.inc

package info (click to toggle)
postgresql 7.2.1-2woody8
  • links: PTS
  • area: main
  • in suites: woody
  • size: 42,424 kB
  • ctags: 30,027
  • sloc: ansic: 290,568; java: 18,529; sh: 12,197; sql: 11,401; yacc: 11,189; tcl: 8,063; perl: 4,067; makefile: 3,332; xml: 2,874; lex: 2,799; python: 1,237; cpp: 845; pascal: 81; asm: 70; awk: 20; sed: 8
file content (59 lines) | stat: -rw-r--r-- 1,809 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
## start of included file prerm.inc ##

save_bins() {
	# Look for postgresql binaries, needed to dump the current database, and
	# copy them into a safe location, so that they will be preserved when
	# postgresql is replaced by a new release.

	# This procedure is run by the prerm of libpgsql2, postgresql and
	# postgresql-client, to ensure that the necessary binaries are saved
	# as soon as possible

	## UPDATED PACKAGE: if this is a new upstream version check the ##
	## shared library version ##

	if [ -r /etc/postgresql/postmaster.conf -a -r /etc/postgresql/postgresql.env ]
	then
		. /etc/postgresql/postgresql.env
		if [ -d ${PGDATA:=/var/lib/postgres/data}/base ]
		then
			filelist="/usr/lib/libpq.so.2.1 /usr/lib/postgresql/bin/postgres /usr/lib/postgresql/bin/pg_dump  /usr/lib/postgresql/bin/pg_dumpall /usr/lib/postgresql/bin/psql"

			PG_VERSION=`cat $PGDATA/PG_VERSION`
			# Create the directory to hold the saved binaries
			if [ ! -d /usr/lib/postgresql/dumpall/$PG_VERSION ]
			then
				install -d /usr/lib/postgresql/dumpall/$PG_VERSION
			fi
			(  cd /usr/lib/postgresql/dumpall/$PG_VERSION &&
				for f in $filelist
				do
					if [ -f $f -a ! -f `basename $f` -a ! -L $f ]
					then
						cp $f .
					fi
					if [ $f = libpq.so.2.1 ]
					then
					# make shared-library softlink
						target=libpq.so.2
						if [ ! -f $target ]
						then
							ln -s $f $target
						fi
					fi
				done
				if [ -f postgres -a ! -f postmaster ]  
				then  
					ln postgres postmaster
				fi
			) || echo Could not save old binaries
		else
			echo "postgresql package apparently not installed - no old binaries saved"
		fi
	else
		echo /etc/postgresql/postmaster.conf already deleted\; I assume that the
		echo old binaries have already been saved.
	fi
}

## end of included file prerm.inc ##