Using the Watchdog (uxwdog) Process (Unix)
180
Netscape Enterprise Server Administrator’s Guide
However, with the addition of a number of subsystems to the server in
Enterprise Server 3.0, it was felt that the server should be completely stopped
and started for a restart operation, as the most expedient way to be sure that all
subsystems were properly initialized. This had several immediate drawbacks.
First, it became necessary to reenter the key file password for a secure server
during a restart. This was particularly a problem for a secure server with
automatic log rotation enabled, since log rotation relies on a server restart
operation. Finally, every server configuration change required the server to be
completely stopped and started.
The basic idea of
uxwdog
is to have a lightweight process that keeps around
just enough state information to be able to start a new server process during a
restart operation, without human intervention. This state consists mainly of any
passwords or PINs required to start a secure server, and open file descriptors
for sockets on which the server will listen. The socket file descriptors had to be
kept around because some of them might be for privileged TCP ports, port 80
for example, which would require a process running as root to bind them.
When this is the case, the Enterprise Administration Server generally runs as
root, and starts
uxwdog
as root, or else an administrator who is running as root
executes the server
start
script. Once
uxwdog
binds the server listen port(s),
it changes its
uid
to the server
uid
, often “nobody,” and then starts the server
process as that
uid
.
One consequence of this behavior is that the NSAPI Init directives always run
under the server
uid
, unlike in Enterprise 3.0 and earlier, where it was possible
to have them run as root. This has created some problems in upgrade
situations, when a plugin Init function was creating a file during the Init. The
file would be owned by root in the older server version, and when installing
the plugin in Enterprise 3.01 and later, it would be necessary to change the
ownership or protection on the migrated file.
In order to determine on which ports the server listens,
uxwdog
must read
magnus.conf
and
obj.conf
. It does this each time the server is restarted,
and verifies that the port numbers have not been changed. If they have, a
restart operation is not possible,
uxwdog
will exit, and the server will have to
be manually started. This is also true if security is turned on, the server
uid
is
changed, or the
PidLog
filename is changed.
The
restart
and
stop
scripts send
SIGHUP
and
SIGTERM
, respectively, to
uxwdog
. In both cases,
uxwdog
sends
SIGTERM
to the
ns-httpd
process to
shut down the server. For a restart operation,
uxwdog
then creates a new
server process, passing it the file descriptors of the listen ports, and any
passwords or PINs it has saved.
Summary of Contents for Netscape Enterprise Server
Page 30: ...Contacting Technical Support 30 Netscape Enterprise Server Administrator s Guide ...
Page 32: ...32 Netscape Enterprise Server Administrator s Guide ...
Page 56: ...Sending Error Information to Netscape 56 Netscape Enterprise Server Administrator s Guide ...
Page 66: ...66 Netscape Enterprise Server Administrator s Guide ...
Page 112: ...Managing a Preferred Language List 112 Netscape Enterprise Server Administrator s Guide ...
Page 158: ...158 Netscape Enterprise Server Administrator s Guide ...
Page 182: ...Using the Watchdog uxwdog Process Unix 182 Netscape Enterprise Server Administrator s Guide ...
Page 196: ...Viewing Events Windows NT 196 Netscape Enterprise Server Administrator s Guide ...
Page 218: ...Enabling the Subagent 218 Netscape Enterprise Server Administrator s Guide ...
Page 266: ...266 Netscape Enterprise Server Administrator s Guide ...
Page 302: ...Enabling WAI Services 302 Netscape Enterprise Server Administrator s Guide ...
Page 310: ...310 Netscape Enterprise Server Administrator s Guide ...
Page 446: ...Customizing the Search Interface 446 Netscape Enterprise Server Administrator s Guide ...
Page 448: ...448 Netscape Enterprise Server Administrator s Guide ...
Page 454: ...Responses 454 Netscape Enterprise Server Administrator s Guide ...
Page 464: ...Referencing ACL Files in obj conf 464 Netscape Enterprise Server Administrator s Guide ...
Page 504: ...504 Netscape Enterprise Server Administrator s Guide ...