Subject: Re: Can ipc-daemon2 put its files in directory other than /tmp?
From: Brian Dessent <[email-masked]>
To: [email-masked]
Date: Sat, 06 Mar 2004 00:51:20 -0800

David Garamond wrote:
> 
> I'm trying to bundle postgresql + cygwin in a single distribution for my
> clients. The goal is that a user can just extract the .zip file and run
> postgresql there (ipc-daemon2 + pg_ctl start; initdb need not be done
> because a zipped 'virgin' data dir will also be provided). Target
> platforms are Win98SE and WinXP Pro. The target machines do not have
> Cygwin installed.
> 
> It's pretty simple to do that. I just put all the files under
> postgresql-7.4.1\bin\, including many Cygwin DLLs, several needed
> commands like grep, basename, cat, chmod, sed, etc. And of course,
> postgres.exe, postmaster.exe (which I copied from postgres.exe;
> originally it was a symlink to postgres), and ipc-daemon2.exe.
> 
> However, ipc-daemon2.exe seems to always look for /tmp (which is
> c:\cygwin\tmp). On Win98, it seems to be able to use c:\tmp if
> c:\cygwin\tmp doesn't exist, but on WinXP Pro it can't.
> 
> Rather than creating c:\cygwin\tmp, can I make ipc-daemon2 put
> MultiFileMsg* and MultiFileShm* in some other place?

You know you can mount /tmp to any directory, right?  Since you
presumably have a startup script to kick things off, why not just do
something like the following, assuming the current dir is your install
dir:

mkdir tmp
mount -b "`cygpath -am .`" /tmp

If you know the full pathname of the directory you can use that instead
of cygpath, i.e.

mount -b "c:/program files/whatever/tmp" /tmp

You should probably do this for /bin as well.  See the manpage for more.

Brian

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/