On Jul 2, 2006, at 9:55 AM, Joe wrote:
> I'm now migrating to FreeBSD and was surprised to find that the
> port used 'pgsql' as the user. The maintainer said that was done
> to ensure backward compatibility because that *was* the original
> name. Since I didn't need to be backward compatible (and my
> Windows dbs already used 'postgres'), I tried to bypass that (sort
> of) requirement by renaming 'pgsql' to 'postgres' (in the passwd
> file) and changing the postgresql_user variable used in the rc
> startup file. That was OK until I tried to build 8.1.4_1. I
> figured out how to tweak the build files to stick with 'postgres'
> but then I realized I'd have to patch them every time I'd fetch a
> new build, so I went back to 'pgsql'.
if you want to use the freebsd ports system (which is advisable)
don't fight against it. use the recommended/defaults where you can.
What I do, though, is set the PostgreSQL super user to be 'postgres'
and let the unix system user remain 'pgsql' since the latter doesn't
matter one bit. This is trivially done by altering the
~pgsql/.profile file and adding PGUSER=postgres and exporting that
variable. Do this *before* you init the DB, then run initdb with this
comand:
su - pgsql -c 'initdb -U postgres'
From now on, any upgrades you do will no longer be so painful.