xref: /freebsd/usr.sbin/cron/doc/INSTALL (revision ba3c1f5972d7b90feb6e6da47905ff2757e0fe57)
1/* Copyright 1993,1994 by Paul Vixie
2 * All rights reserved
3 */
4
5/*
6 * Copyright (c) 1997 by Internet Software Consortium
7 *
8 * Permission to use, copy, modify, and distribute this software for any
9 * purpose with or without fee is hereby granted, provided that the above
10 * copyright notice and this permission notice appear in all copies.
11 *
12 * THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM DISCLAIMS
13 * ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES
14 * OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL INTERNET SOFTWARE
15 * CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
16 * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
17 * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS
18 * ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
19 * SOFTWARE.
20 */
21
22$Id: INSTALL,v 1.2 1998/08/14 00:32:35 vixie Exp $
23
24Read the comments at the top of the Makefile, then edit the area marked
25'configurable stuff'.
26
27Edit config.h.  The stuff I expect you to change is down a bit from the
28top of the file, but it's clearly marked.  Also look at pathnames.h.
29
30You don't have to create the /var/cron or /var/cron/tabs directories, since
31both the daemon and the `crontab' program will do this the first time they
32run if they don't exist.  You do need to have a /var, though -- just "mkdir
33/var" if you don't have one, or you can "mkdir /usr/var; ln -s /usr/var /var"
34if you expect your /var to have a lot of stuff in it.
35
36You will also need /usr/local/etc and /usr/local/bin directories unless you
37change the Makefile.  These will have to be created by hand, but if you are
38a long-time Usenet user you probably have them already.  /usr/local/man is
39where I keep my man pages, but I have the source for `man' and you probably
40do not.  Therefore you may have to put the man pages into /usr/man/manl,
41which will be hard since there will be name collisions.  (Note that the man
42command was originally written by Bill Joy before he left Berkeley, and it
43contains no AT&T code, so it is in UUNET's archive of freely-distributable
44BSD code.)
45
46LINUX note: /usr/include/paths.h on some linux systems shows _PATH_SENDMAIL
47	to be /usr/bin/sendmail even though sendmail is installed in /usr/lib.
48	you should check this out.
49
50say:
51	make all
52
53su and say:
54	make install
55
56Note that if I can get you to "su and say" something just by asking, you have
57a very serious security problem on your system and you should look into it.
58
59Edit your /usr/lib/crontab file into little pieces -- see the CONVERSION file
60for help on this.
61
62Use the `crontab' command to install all the little pieces you just created.
63Some examples (see below before trying any of these!)
64
65	crontab -u uucp -r /usr/lib/uucp/crontab.src
66	crontab -u news -r /usr/lib/news/crontab.src
67	crontab -u root -r /usr/adm/crontab.src
68
69Notes on above examples: (1) the .src files are copied at the time the
70command is issued; changing the source files later will have no effect until
71they are reinstalled with another `crontab -r' command.  (2) The crontab
72command will affect the crontab of the person using the command unless `-u
73USER' is given; `-u' only works for root.  When using most `su' commands
74under most BSD's, `crontab' will still think of you as yourself even though
75you may think of yourself as root -- so use `-u' liberally.  (3) the `-r'
76option stands for `replace'; check the man page for crontab(1) for other
77possibilities.
78
79Kill your existing cron daemon -- do `ps aux' and look for /etc/cron.
80
81Edit your /etc/rc or /etc/rc.local, looking for the line that starts up
82/etc/cron.  Comment it out and add a line to start the new cron daemon
83-- usually /usr/local/etc/cron, unless you changed it in the Makefile.
84
85Start up this cron daemon yourself as root.  Just type /usr/local/etc/cron
86(or whatever); no '&' is needed since the daemon forks itself and the
87process you executed returns immediately.
88
89ATT notes: for those people unfortunate enough to be stuck on a AT&T UNIX,
90you will need the public-domain "libndir", found in the B News source and in
91any comp.sources.unix archive.  You will also need to hack the code some.
92