<!-- 
Fcron documentation
Copyright 2000-2025 Thibault Godouet <fcron@free.fr>
Permission is granted to copy, distribute and/or modify this
document under the terms of the GNU Free Documentation License,
Version 1.1 or any later version published by the Free Software
Foundation.
A copy of the license is included in gfdl.sgml.
-->


<sect1 id="readme">
    <title>About fcron</title>
    <sect2>
	<title>What is fcron?</title>
	<para>&Fcron; is a scheduler. It aims at replacing <application>Vixie
Cron</application>, so it implements most of its functionalities.</para>
	<para>But contrary to <application>Vixie Cron</application>, &fcron;
does not need your system to be up 7 days a week, 24 hours a day: it also works
well with systems which are neither running all the time nor regularly
(contrary to <application>anacrontab</application>).</para>
	<para>In other words, &fcron; does both the job of <application>Vixie
Cron</application> and <application>anacron</application>, but does even more
and better :)) ...</para>

	<para>To do so, &fcron; allows you to use the standard mode in which you
tell it to execute one command at a given date and time. Alternatively you can
instruct &fcron; to execute a command after a certain duration of &fcron;'s runtime
(which is normally the same as system up time because &fcron; is typically started
on boot). For example:

            <blockquote>
		<para>Run the task 'save /home/ directory' every 3h15 of system
up time.</para>
	    </blockquote> and, of course, in order to make it really useful, the
time remaining until next execution is saved each time the system is stopped.
You can also say:

            <blockquote>
		<para>run that command once between 2am and 5am</para>
            </blockquote> which will be done if the system is running at any
time in this interval.</para>

	<para>&Fcron; also includes a useful system of options, which can be
applied either to every lines following the declaration or to a single line.
Some of the supported options permit to:
	    <itemizedlist>
		<listitem><para>run jobs one by one (fcrontab option
&optserial;),</para></listitem>
		<listitem><para>set the max system load average value under
which the job should be run (fcrontab option &optlavg;),</para></listitem>
		<listitem><para>set a nice value for a job (fcrontab option
&optnice;),</para></listitem>
		<listitem><para>run jobs at &fcron;'s startup if they should
have been run during system down time (fcrontab option
&optbootrun;),</para></listitem>
		<listitem><para>mail user to tell him a job has not run and why
(fcrontab option &optnoticenotrun;),</para></listitem>
		<listitem><para>a better management of the mailing of outputs
...</para></listitem>
	    </itemizedlist>
	</para>
    </sect2>

    <sect2>
	<title>License</title>
	<para>&Fcron; is distributed under GPL license (please read the license
in the <link linkend="gpl">gpl</link> file).</para>
    </sect2>

    <sect2>
	<title>Requirements</title>
	<itemizedlist>
	    <listitem>
		<para>a <productname>Linux/Unix system</productname></para>
		<para>&Fcron; should work on every
<productname>POSIX</productname> system, but it has been developed on
<productname>Mandrake</productname> Linux (so it should work without any
problems on <productname>Redhat</productname>).</para>
		<para>Fcron has been reported to work correctly on:
		</para>
		<itemizedlist>
		  <listitem><para><productname>Linux Mandrake</productname>
		     </para></listitem>
		  <listitem><para><productname>Linux Debian 3.0</productname>
		     </para></listitem>
		  <listitem><para><productname>LFS</productname></para>
		     <para>(take a look at the <ulink
			   url="http://www.linuxfromscratch.org/blfs/">Beyond
			   LFS book</ulink> to find the installation
			informations).</para>
		  </listitem>
		  <listitem><para><productname>FreeBSD 4.2</productname>
		     </para></listitem>
		  <listitem><para><productname>OpenBSD 2.8</productname>
		     </para></listitem>
		  <listitem><para><productname>NetBSD 2.0</productname>
		     </para></listitem>
		  <listitem>
		     <para><productname>Darwin/MacOS-X</productname></para>
		  </listitem>
		  <listitem><para><productname>Solaris 8</productname>
		     </para></listitem>
		  <listitem><para><productname>AIX 4.3.3</productname>
		     </para></listitem>
		  <listitem><para><productname>HP-UX 11.11</productname>
		     </para></listitem>
	       </itemizedlist>
		<para>but fcron should work on other OS as well. Yet,
		  if you have troubles
		  making it work on a <productname>POSIX</productname> system, please
		  contact me at &email;.</para>
	    </listitem>
	    <listitem><para>a running <application>syslog</application> (or you
won't have any log)</para></listitem>
	    <listitem><para>a running mail system (
<application>sendmail</application> or <application>postfix</application> for
example) (or users will not able to read their jobs output)
		    </para></listitem>
	    <listitem><para>(optional) a <productname>PAM</productname>
library.</para></listitem>
	    <listitem><para>(optional) a system with a working <productname>SE Linux</productname> environment.</para></listitem>
	</itemizedlist>
    </sect2>

    <sect2>
	<title>Compilation and installation</title>
	<para>See the <link linkend="install">install</link> file (either install.txt
or install.html).</para>
    </sect2>

    <sect2>
	<title>Configuration</title>
	<para>See the <link linkend="fcron.8">&fcron;(8)</link>, <link
linkend="fcrontab.5">&fcrontab;(5)</link> and <link
linkend="fcrontab.1">&fcrontab;(1)</link> manpages.</para>
    </sect2>

    <sect2>
	<title>Bug reports, corrections, propositions...</title>
	<para>Please send me the description of any bug you happen to encounter
(with, even better, the corresponding patch -:) and any propositions,
congratulations or flames at &email;</para>
	    <para>Please contact Russell Coker directly for problems about SE Linux support at &selinuxemail;, since he maintains this part of the code.</para>
    </sect2>
</sect1>

<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-parent-document:("fcron-doc.sgml" "book" "chapter" "sect1" "")
End:
-->
