On 16 Feb 2001, John Poltorak <[EMAIL PROTECTED]> wrote:

> On OS/2 there is a PSTAT command as well a number of other third-party
> apps which mimic ps. Using one of these shows no sign of RSYNC.
> 
> I guess 'netstat -s' would also provide some evidence of its presence
> if port 873 was in use but it isn't.

If an error occurs, it will be written to the system logs.  On Unix,
this is something like /var/log/daemon.  I'm not sure if syslog is
supported on OS/2.  If it's not, you should try something like this in
the rsyncd.conf

  log file = /log/rsync.log

Also, it may be that the program is not correctly finding the
configuration file, and perhaps you should start it with

  > rsync --config /etc/rsyncd.conf --daemon


> What would happen if I took the 'exit' out of the following code from 
> socket.c ?
> 
> /****************************************************************************
> become a daemon, discarding the controlling terminal
> ****************************************************************************/
> void become_daemon(void)
> {
>     int i;
> 
>     if (fork()) {
>         _exit(0);
>     }

What normally happens is that when running as a daemon, rsync starts a
background task, and then the task attached to the terminal.  This is
the normal Unix method of going into the background.  So, on Unix,
this would mean that your terminal would stay blocked, but otherwise
nothing else would change.  There are also some consequences about the
daemon remaining in the session group of the shell, which means (I
think) that signals will kill it.

On OS/2, I don't know.  I would be surprised if it fixes the problem,
but then I know the OS/2 process model is very different.

If you have an inetd equivalent on your system, then the simplest
solution may be to run rsync from that, as described in the manual.

-- 
Martin Pool, Human Resource
Linuxcare. Inc.   +61 2 6262 8990
[EMAIL PROTECTED], http://linuxcare.com.au/
Linuxcare.  Putting Open Source to work.

Reply via email to