OSDN Git Service

* Makefile.in (install): Explicitely create directories. Install
authorcorinna <corinna>
Fri, 21 Nov 2003 18:10:49 +0000 (18:10 +0000)
committercorinna <corinna>
Fri, 21 Nov 2003 18:10:49 +0000 (18:10 +0000)
README to $(prefix)/share/doc/Cygwin.
* README: New file.

winsup/cygserver/ChangeLog
winsup/cygserver/Makefile.in
winsup/cygserver/README [new file with mode: 0644]

index 339fc43..f32817e 100644 (file)
@@ -1,5 +1,11 @@
 2003-11-21  Corinna Vinschen  <corinna@vinschen.de>
 
+       * Makefile.in (install): Explicitely create directories.  Install
+       README to $(prefix)/share/doc/Cygwin.
+       * README: New file.
+
+2003-11-21  Corinna Vinschen  <corinna@vinschen.de>
+
        * cygserver.cc (print_usage): Fix scrambled output.
 
 2003-11-20  Corinna Vinschen  <corinna@vinschen.de>
index b587d0b..d76b471 100644 (file)
@@ -48,10 +48,15 @@ CYGWIN_OBJS:=$(cygwin_build)/smallprint.o $(cygwin_build)/version.o \
 
 all: cygserver.exe
 
-install: all cygserver.conf cygserver-config
+install: all $(updir1)/mkinstalldirs cygserver.conf cygserver-config README
+       $(updir1)/mkinstalldirs $(sbindir)
+       $(updir1)/mkinstalldirs $(bindir)
+       $(updir1)/mkinstalldirs $(sysconfdir)/defaults/etc
+       $(updir1)/mkinstalldirs $(prefix)/share/doc/Cygwin
        $(INSTALL_PROGRAM) cygserver.exe $(sbindir)/cygserver.exe
-       $(INSTALL_PROGRAM) cygserver-config $(bindir)/cygserver-config
+       $(INSTALL_PROGRAM) $(srcdir)/cygserver-config $(bindir)/cygserver-config
        $(INSTALL_DATA) $(srcdir)/cygserver.conf $(sysconfdir)/defaults/etc/cygserver.conf
+       $(INSTALL_DATA) $(srcdir)/README $(prefix)/share/doc/Cygwin/cygserver.README
 
 clean:
        rm -f $(OBJS) ${patsubst %.o,%.d,$(OBJS)} cygserver.exe
diff --git a/winsup/cygserver/README b/winsup/cygserver/README
new file mode 100644 (file)
index 0000000..2099531
--- /dev/null
@@ -0,0 +1,210 @@
+What is Cygserver?
+
+  Cygserver is a program which is designed to run as a background service.
+  It provides Cygwin applications with services which require security
+  arbitration or which need to persist while no other cygwin application
+  is running.
+
+  The implemented services so far are:
+
+  - Control slave tty/pty handle dispersal from tty owner to other
+    processes without compromising the owner processes' security.
+  - XSI IPC Message Queues.
+  - XSI IPC Semaphores.
+  - XSI IPC Shared Memory.
+
+
+Cygserver command line options:
+
+  Options to Cygserver take the normal UNIX-style `-X' or `--longoption' form.
+  Nearly all options have a counterpart in the configuration file (see below)
+  so setting them on the command line isn't really necessary.  Command line
+  options override settings from the Cygserver configuration file.
+
+  The one-character options are prepended by a single dash, the long variants
+  are prepended with two dashes.  Arguments to options are marked in angle
+  brackets below.  These are not part of the actual syntax but are used only to
+  denote the arguments.  Note that all arguments are required.  Cygserver
+  has no options with optional arguments.
+  
+  The options recognized are:
+
+  -f, --config-file <file>
+  
+    Use <file> as configuration file instead of the default configuration
+    line.  The default configuration file is /etc/cygserver.conf, typically. 
+    The --help and --version options will print the default configuration
+    pathname.
+
+    This option has no counterpart in the configuration file, for obvious
+   reasons.
+
+  -c, --cleanup-threads <num>  
+  
+    Number of threads started to perform cleanup tasks.  Default is 2.
+    Configuration file option:  kern.srv.cleanup_threads
+
+  -r, --request-threads <num>  
+  
+    Number of threads started to serve application requests.  Default is 10.
+    The -c and -r options can be used to play with Cygserver's performance
+    under heavy load conditions or on slow machines.
+    Configuration file option:  kern.srv.request_threads
+
+  -d, --debug
+  
+    Log debug messages to stderr.  These will clutter your stderr output with
+    a lot of information, typically only useful to developers.
+
+  -e, --stderr
+  
+    Force logging to stderr.  This is the default if stderr is connected to
+    a tty.  Otherwise, the default is logging to the system log.  By using
+    the -e, -E, -y, -Y options (or the appropriate settings in the
+    configuration file), you can explicitely set the logging output as you
+    like, even to both, stderr and syslog.
+    Configuration file option:  kern.log.stderr
+
+  -E, --no-stderr
+  
+    Don't log to stderr.  Configuration file option:  kern.log.stderr
+
+  -y, --syslog
+  
+    Force logging to the system log.  This is the default, if stderr is not
+    connected to a tty, e. g. redirected to a file.  Note, that on 9x/Me
+    systems the syslog is faked by a file C:\CYGWIN_SYSLOG.TXT.
+    Configuration file option:  kern.log.syslog
+
+  -Y, --no-syslog
+  
+    Don't log to syslog.  Configuration file option:  kern.log.syslog
+
+  -l, --log-level <level>
+  
+    Set the verbosity level of the logging output.  Valid values are between
+    1 and 7.  The default level is 6, which is relatively chatty.  If you set
+    it to 1, you will get only messages which are printed under severe conditions,
+    which will result in stopping Cygserver itself.
+    Configuration file option:  kern.log.level
+
+  -m, --no-sharedmem
+  
+    Don't start XSI IPC Shared Memory support.  If you don't need XSI IPC
+    Shared Memory support, you can switch it off here.
+    Configuration file option:  kern.srv.sharedmem
+
+  -q, --no-msgqueues
+  
+    Don't start XSI IPC Message Queues. 
+    Configuration file option:  kern.srv.msgqueues
+
+  -s, --no-semaphores
+  
+    Don't start XSI IPC Semaphores.
+    Configuration file option:  kern.srv.semaphores
+
+  -S, --shutdown
+  
+    Shutdown a running daemon and exit.  Other methods are sending a SIGHUP
+    to the Cygserver PID or, if running as service under NT, calling
+    `net stop cygserver' or `cygrunsrv -E cygserver'.
+
+  -h, --help
+  
+    Output usage information and exit.
+
+  -v, --version
+  
+    Output version information and exit.
+
+
+How to start Cygserver:
+
+  Before you run Cygserver for the first time, you should run the
+  /usr/bin/cygserver-config script once.  It creates the default
+  configuration file and, upon request, installs Cygserver as service
+  when running under NT.  The script only performs a default install,
+  with no further options given to Cygserver when running as service.
+  Due to the wide configurability by changing the configuration file,
+  that's typically not necessary.
+
+  On Windows 9x/Me, just start Cygserver in any console window.  It's
+  advisable to redirect stderr to a file of choice (e. g.
+  /var/log/cygserver.log) and to use the -e and -Y options or the
+  set the appropriate settings in the configuration file (see below).
+
+  On Windows NT/2000/XP or 2003, you should always run Cygserver as a
+  service under LocalSystem account.  This is the way it is installed
+  for you by the /usr/bin/cygserver-config script.
+
+
+How to use the Cygserver services:
+
+  The Cygserver services are used by Cygwin applications only if you
+  set the environment variable CYGWIN to contain the string "server".
+  You must do this before starting the application.
+
+  Typically, you don't need any other option, so it's ok to set CYGWIN
+  just to "server".  It is not necessary to set the CYGWIN environment
+  variable prior to starting the Cygserver process itself, but it won't
+  hurt to do so.
+
+  The easiest way is to set the environment variable CYGWIN to the values
+  you want in the Windows system environment and to reboot the machine.
+  This is advisable, since it allows you to set the variable once and
+  then forget about it.  It also ensures that services as well as desktop
+  applications have the same setting.
+
+  If you don't want that for whatever reason, you can set the
+  variable in the /cygwin.bat file which is used in the net distribution,
+  to start a Cygwin bash from the desktop.  In that file, you can set
+  the CYGWIN variable using Windows command line interpreter syntax, e. g.:
+
+    set CYGWIN=server
+
+  If you don't set CYGWIN in the system environment, but you're running
+  other Cygwin services, these services need to get that CYGWIN value by
+  setting the environment using the appropriate cygrunsrv option '-e' when
+  installing the service.  Example installing a service 'foo':
+
+    cygrunsrv -I foo -p /usr/sbin/foo -e "CYGWIN=server"
+
+
+The Cygserver configuration file:
+
+  Cygserver has many options, which allow to customize the server
+  to your needs.  Customization is accomplished by editing the configuration
+  file, which is by default /etc/cygserver.conf.  This file is read only
+  once on startup of Cygserver.  There's no option to re-read the file on
+  runtime by, say, sending a signal to Cygserver.
+
+  The configuration file determines how Cygserver operates.  There are
+  options which set the number of threads running in parallel, options
+  for setting how and what to log and options to set various maximum
+  values for the IPC services.
+
+  The default configuration file delivered with Cygserver is installed
+  to /etc/defaults/etc.  The /usr/bin/cygserver-config script copies it to
+  /etc, giving you the option to overwrite an already existing file or to
+  leave it alone.  Therefore, the /etc file is safe to be changed by you,
+  since it will not be overwritten by a later update installation.
+
+  The default configuration file contains many comments which describe
+  everything needed to understand the settings.  A comment at the start of the
+  file describes the syntax rules for the file.  The default options are shown
+  in the file but are commented out.
+
+  It is generally a good idea to uncomment only options which you intend to
+  change from the default values.  Since reading the options file on Cygserver
+  startup doesn't take much time, it's also considered good practice to keep
+  all other comments in the file.  This keeps you from searching for clues
+  in other sources.
+
+
+If you have problems with Cygserver, or you have found a bug, or you
+think you have found a bug, or you don't understand configuration file
+options, the mailing list <cygwin@cygwin.com> is the right place to ask
+questions.
+
+Have fun!