Bart.Kersten@TNOFEL.FEL.TNO.NL (Bart Kersten) (04/23/91)
Dear ISODE-devotees, We have installed the interim version 6.8 of the ISODE package over SUNOs41. Our 'isotailor'-file specifies the following directory configuration: binpath: /home/assg7/isode/bin/ sbinpath: /home/assg7/isode/bin/ etcpath: /home/assg7/isode/etc/ logpath: /home/assg7/isode/tmp/ All goes well, accept one thing: When user 'assg7', who has super-user authority, starts up the daemons 'tsapd', 'snmpd' and 'smux.unixd' manually, all the log-files are correctly put in the logpath-directory. However, when the daemons become active after a system-boot by executing the 'rc.local'-file, log-files are put in the root-directory. We hate that. Please contribute in solving this problem. -- +-----------------------------------------------------------------------------+ | Bart Kersten | | TNO Physics and Electronic Laboratory | | The Netherlands | | +31 70 3264221 | | bart.kersten@fel.tno.nl | +-----------------------------------------------------------------------------+
j.onions@xtel.co.uk (Julian Onions) (04/23/91)
Couple of things to check... when you start the daemons from rc.local, are all the appropriate discs mounted - e.g. the disc with your isotailor file in? Do you redirect the output of the commands in rc.local? Julian.
Eric.Rosenquist@DRE-SW1.SOFKIN.CA (04/23/91)
> However, when the daemons become active after a system-boot by executing the > 'rc.local'-file, log-files are put in the root-directory. We hate that. Make sure you remember to redirect the stderr of the tsapd when you start it in rc.local. If not, it calls the ll_dbinit() routine to initilize the logging package in `debug' mode, which causes the log file to go in the current directory. Eric -- Eric Rosenquist - Software Kinetics Limited 65 Iber Road, Stittsville Ontario Canada, K2S 1E7 Tel: (613) 831-0888, Fax: (613) 831-1836 email: Eric.Rosenquist@crc.sofkin.ca Eric.Rosenquist@crc.skl.dnd.ca (old)
alan@CURTA.CC.COLUMBIA.EDU (Alan Crosswell) (04/23/91)
The way the ISODE servers work is that if their stdout is non-existent, they assume that they are running as background daemons and write to their configured log file. If they have a stdout, they assume they are running from the command line (e.g. because they are being debugged) and they write to stdout/stderr and to log files in the connected directory. Some genius at Sun decided that they should change the way /etc/rc* scripts work. Back in the good old days(:-) it used to be that they had no controlling terminal and programs that wanted one had to explicitly redirect output (e.g. to /dev/console). So, you would see things like: if [-f /etc/foo ]; then echo -n 'starting foo server: ' >/dev/console /etc/foo >/dev/console fi if [ -f /usr/local/etc/tsapd ]; then echo -n 'starting ISODE: ' >/dev/console /usr/local/etc/tsapd & echo -n 'tsapd ' >/dev/console fi This causes stdout to go to /dev/console and also makes /dev/console the controlling tty for the /etc/foo process. And the tsapd runs without a controlling tty, figures this out, and writes to logdir. Somewhere along the line, this behavior changed such that all the /etc/rc scripts run with a controlling tty of /dev/console and stdin/out/err redirected there. So now you see scripts like this: if [-f /etc/foo ]; then echo -n 'starting foo server: ' /etc/foo fi if [ -f /usr/local/etc/tsapd ]; then echo -n 'starting ISODE: ' /usr/local/etc/tsapd >/dev/null 2>&1 & echo -n 'tsapd ' fi In other words, to get the "correct" behavior in an /etc/rc script you have to explicitly redirect stdout/stderr to /dev/null. We reported this to Sun as a bug and were rebuffed. It was certainly an undocumented change which broke many of our programs that relied on not having a controlling tty. /a
Dirk.Husemann@informatik.uni-erlangen.de (Dirk Husemann) (04/27/91)
> > Dear ISODE-devotees, > ... > However, when the daemons become active after a system-boot by executing the > 'rc.local'-file, log-files are put in the root-directory. We hate that. So do I! > > Please contribute in solving this problem. Dirk Husemann Tel.: +49 9131 85 8029 University of Erlangen-Nuremberg FAX: +49 9131 39388 Department of Computer Science Martenstrasse 1 D-W 8520 Erlangen, Germany Dirk.Husemann@informatik.uni-erlangen.de /C=de/A=dbp/P=uni-erlangen/OU=informatik/S=husemann/G=dirk/