--- README.orig Tue Dec 12 23:20:30 2000 +++ README Mon Nov 22 00:06:00 2004 @@ -1,181 +1,174 @@ -setiathome(1) User Commands Version 3.03 - December 2000 - -NAME - setiathome - the SETI@home client program - -SYNOPSIS - setiathome [options] - -DESCRIPTION - setiathome is the UNIX version of the SETI@home client. - It downloads radio telescope data from a network server, - analyzes the data looking for signals of extraterrestrial origin, - and uploads results to the server, repeating this cycle indefinitely. - See http://setiathome.berkeley.edu for more information. - -FILES - The program generates several files with .sah extension - in the directory from which it's run. - These should not be modified. - - If you want to run multiple instances of setiathome - (on a multiprocessor machine, or on multiple machines - that share a filesystem) each one must be run in a different directory. - You can use symlinks for each directory to avoid duplication - of the binary image. e.g.: - ln -s cpu0/setiathome cpu1/setiathome - - setiathome uses a lock file (lock.txt) to prevent - multiple instances from running in the same directory. - - To finish up your current work unit, return your result, and not - download a new work unit, while the client is running, touch - a file named "stop_after_send.txt" in the client directory. - When the processing is finished, and the result sent, the client will stop. - *** Note this one file extension is .txt, while all other files used by - the client have extensions .sah *** - - The file "pid.sah" contains the process ID of the current instance. - -RUNNING SETIATHOME - The first time you run setiathome it will interactively - ask you for email address, name, country etc. - This info is stored in a file and no interaction is - needed when you run the program subsequently. - - After this you can run setiathome in the background, - and direct its output to /dev/null if you like. - - setiathome can be freely stopped and restarted. - It saves its state in files, and will pick up where it left off. - - If you want setiathome to be started automatically, you can - set up a cron job. Add the following line to your crontab: - - 0 * * * * cd ; ./setiathome -nice 19 > /dev/null 2> /dev/null - - Where is the directory where the setiathome client is installed. - This cron job will attempt to start the client at the top of every hour. - If it is already running, the next invocation will do nothing. - If the client is not running, it will be started. - For more information on cron jobs see the crontab(1) manual page. - - The following script will stop all instances SETI@home: - (assuming the binary execution name is: setiathome) - - #! /bin/sh - kill `ps aux | grep setia | grep -v grep | awk '{print $2}'` - - (adjust the ps arguments for your system) - - The following will stop the instance in the current directory: - - #! /bin/sh - kill `cat pid.sah` - - Please do not operate the client on machines for which you do not - have permission. - -ENVIRONMENT VARIABLES - - If the environment variable HTTP_PROXY is defined, - setiathome will connect through a proxy server, - specified as hostname or hostname:port. - - If the environment variable SOCKS_SERVER is defined, - setiathome will connect through a SOCKS server, - specified as hostname or hostname:port. - If the environment variables SOCKS_USER and SOCKS_PASSWD - are defined, these will be used as the login name and password - for the SOCKS server. Otherwise setiathome will query you. - -OPTIONS - -login - Login or create new account. - - -countries - Show list of country codes. - - -version - Show software version - - -nice N - Set "nice" priority to N (default 1); - - -email - Send email (to login email address) on errors. - Useful if you run in background directed to /dev/null. - This option is not available for all clients. - - -graphics - Generate a data stream for the xsetiathome graphical interface - (see README.xsetiathome) - This option is not available for all clients. - - -proxy hostname:port - Connect to SETI@home server via specified HTTP proxy server and port. - - -socks_server hostname:port - Connect to SETI@home server via specified SOCKS server and port. - Overrides SOCKS_SERVER. - SOCKS versions 4 and 5 are supported. - - -socks_user name - SOCKS user name. - - -socks_passwd password - SOCKS password. - - -stop_after_process - If a work_unit.sah file is present, process this work unit - and stop after processing is complete, do not return result. - If the client is started with this option, and there is - a completed result.sah file present, the client will first - return the results, then pick up a new work unit, process - to completion, then exit. - - -stop_after_xfer - Return results and pick up a new work unit. - This option only functions if the result.sah file is present - and complete indicating that processing is finished for this - work unit. If a work_unit.sah is present, indicating processing - is not complete, no transfer or processing will be performed, - and the client will exit. - (see also: stop_after_send.txt mentioned in FILES above) - - -verbose - print a running summary of the work being done. - Starting with the version 2.4 clients, the client is silent - to stdout during processing. There are messages at the start - and finish of processing a work unit, but there are no progress - messages printed during processing unless this option is used. - - -nolock - omit the multiple-instance check, which uses file locking - (not available on some NFS systems) - -KNOWN BUGS: - Outstanding shared memory segments and semaphores may be left - active in case of an abnormal exit of the 'setiathome -graphics' - process. These can prevent any future invocation of - 'setiathome -graphics'. To resolve this problem, use 'ipcs' - and 'ipcrm' to remove shared memory segments and semaphores that - are not associated with a process. This behavior may vary - depending upon how your UNIX system handles this situation. - See also ipcs(1) and ipcrm(1) - - For version 3.* clients, the estimated progress as indicated - by the prog= line in the state.sah file in not exactly linear - in relationship to completion time. Using this value to - predict completion time may not be completely accurate. - The linear relationship will vary depending upon the characteristics - of the work unit parameters. - -SEE ALSO: - There is much more information to be found about the operation - of the client at the following WEB sites: - http://setiathome.berkeley.edu/ - http://setiathome.berkeley.edu/faq.html - http://setiathome.berkeley.edu/links.html - with discussions of add-on programs and scripts to control - the client in various situations. +.\" setiathome.1 +.\" +.\" Copyright (c) 2004 OpenDarwin.org +.\" All rights reserved. +.\" Author: Matt Anton +.\" +.\" This man page was written for MacPorts +.\" and is basically Seti@home's README +.\" bundled with the binary. +.\" Feel free to use it as long as this copyright notice +.\" is left untouched. +.\" +.Dd November 21, 2004 +.Dt SETIATHOME 1 "Seti@home Institute" +.Os Darwin +.Sh NAME +.Nm setiathome +.Nd the SETI@home client program +.Sh SYNOPSIS +.Nm +.Op Ar options +.Sh DESCRIPTION +.Nm +is the UNIX version of the SETI@home client. It downloads radio telescope data from a network server, analyzes the data looking for signals of extraterrestrial origin, and uploads results to the server, repeating this cycle indefinitely. See +.Ar http://setiathome.berkeley.edu +for more information. +.Sh FILES +The program generates several files with +.Ar .sah +extension in the directory from which it's run. These should not be modified. +.Pp +If you want to run multiple instances of +.Nm +(on a multiprocessor machine, or on multiple machines that share a filesystem) each one must be run in a different directory. You can use symlinks for each directory to avoid duplication of the binary image. e.g.: +.Pp +.Dl "ln -s cpu0/setiathome cpu1/setiathome +.Pp +.Nm +uses a lock file (lock.txt) to prevent multiple instances from running in the same directory. +.Pp +To finish up your current work unit, return your result, and not download a new work unit, while the client is running, touch a file named "stop_after_send.txt" in the client directory. When the processing is finished, and the result sent, the client will stop. +.Pp +.Ic *** +Note this one file extension is .txt, while all other files used by the client have extensions +.Ar .sah +.Ic *** +.Pp +The file "pid.sah" contains the process ID of the current instance. + +.Sh RUNNING SETIATHOME +The first time you run +.Nm +it will interactively ask you for email address, name, country etc. This info is stored in a file and no interaction is needed when you run the program subsequently. +.Pp +After this you can run setiathome in the background, and direct its output to /dev/null if you like. +.Pp +.Nm +can be freely stopped and restarted. It saves its state in files, and will pick up where it left off. +.Pp +If you want +.Nm +to be started automatically, you can set up a cron job. Add the following line to your crontab: +.Pp +.Dl 0 * * * * cd ; ./setiathome -nice 19 > /dev/null 2> /dev/null +.Pp +Where is the directory where the setiathome client is installed. This cron job will attempt to start the client at the top of every hour. If it is already running, the next invocation will do nothing. If the client is not running, it will be started. For more information on cron jobs see the crontab(1) manual page. +.Pp +The following script will stop all instances SETI@home: +.Pp +.Dl (assuming the binary execution name is: setiathome) +.Pp +.Dl #! /bin/sh +.Dl kill `ps aux | grep setia | grep -v grep | awk '{print $2}'` +.Pp +.Dl (adjust the ps arguments for your system) +.Pp +.Dl The following will stop the instance in the current directory: +.Pp +.Dl #! /bin/sh +.Dl kill `cat pid.sah` +.Pp +.Dl Please do not operate the client on machines for which you do not have permission. + +.Sh ENVIRONMENT VARIABLES +If the environment variable +.Ar HTTP_PROXY +is defined, +.Nm +will connect through a proxy server, specified as +.Ar hostname +or +.Ar hostname:port +. +.Pp +If the environment variable +.Ar SOCKS_SERVER +is defined, +.Nm +will connect through a SOCKS server, specified as +.Ar hostname +or +.Ar hostname:port +. +.Pp +If the environment variables +.Ar SOCKS_USER +and +.Ar SOCKS_PASSWD +are defined, these will be used as the login name and password for the SOCKS server. Otherwise +.Nm +will query you. + +.Sh OPTIONS +.Bl -tag -width -indent +.It Fl login +Login or create new account. +.It Fl countries +Show list of country codes. +.It Fl version +Show software version +.It Fl nice Ar N +Set "nice" priority to N (default 1); +.It Fl -email +Send email (to login email address) on errors. Useful if you run in background directed to /dev/null. This option is not available for all clients. +.It Fl -graphics +Generate a data stream for the xsetiathome graphical interface (see README.xsetiathome) This option is not available for all clients. +.It Fl -proxy Ar hostname:port +Connect to SETI@home server via specified HTTP proxy server and port. +.It Fl -socks_server Ar hostname:port +Connect to SETI@home server via specified SOCKS server and port. Overrides +.Ar SOCKS_SERVER. +SOCKS versions 4 and 5 are supported. +.It Fl -socks_user Ar name +SOCKS user name. +.It Fl -socks_passwd Ar password +SOCKS password. +.It Fl stop_after_process +If a +.Ar work_unit.sah +file is present, process this work unit and stop after processing is complete, do not return result. If the client is started with this option, and there is a completed +.Ar result.sah +file present, the client will first return the results, then pick up a new work unit, process to completion, then exit. +.It Fl stop_after_xfer +Return results and pick up a new work unit. This option only functions if the +.Ar result.sah +file is present and complete indicating that processing is finished for this work unit. If a +.Ar work_unit.sah +is present, indicating processing is not complete, no transfer or processing will be performed, and the client will exit. (see also: stop_after_send.txt mentioned in +.Ic FILES +above) +.It Fl verbose +Print a running summary of the work being done. Starting with the version 2.4 clients, the client is silent to stdout during processing. There are messages at the start and finish of processing a work unit, but there are no progress messages printed during processing unless this option is used. +.It Fl nolock +omit the multiple-instance check, which uses file locking (not available on some NFS systems) +.Sh KNOWN BUGS +Outstanding shared memory segments and semaphores may be left active in case of an abnormal exit of the +.Nm +.Fl graphics +process. These can prevent any future invocation of +.Nm +.Fl graphics +. To resolve this problem, use 'ipcs' and 'ipcrm' to remove shared memory segments and semaphores that are not associated with a process. This behavior may vary depending upon how your UNIX system handles this situation. See also ipcs(1) and ipcrm(1) +.Pp +For version 3.* clients, the estimated progress as indicated by the prog= line in the +.Ar state.sah +file in not exactly linear in relationship to completion time. Using this value to predict completion time may not be completely accurate. The linear relationship will vary depending upon the characteristics of the work unit parameters. +.Sh SEE ALSO +There is much more information to be found about the operation of the client at the following WEB sites: +.Pp +.Dl Ar http://setiathome.berkeley.edu/ +.Dl Ar http://setiathome.berkeley.edu/faq.html +.Dl Ar http://setiathome.berkeley.edu/links.html +.Pp +with discussions of add-on programs and scripts to control the client in various situations.