]> granicus.if.org Git - fcron/commitdiff
Initial revision
authorthib <thib>
Sun, 5 Feb 2006 19:25:05 +0000 (19:25 +0000)
committerthib <thib>
Sun, 5 Feb 2006 19:25:05 +0000 (19:25 +0000)
16 files changed:
doc/fr/changes.sgml [new file with mode: 0644]
doc/fr/faq.sgml [new file with mode: 0644]
doc/fr/fcron-doc.sgml [new file with mode: 0644]
doc/fr/fcron.8.sgml [new file with mode: 0644]
doc/fr/fcron.conf.5.sgml [new file with mode: 0644]
doc/fr/fcrondyn.1.sgml [new file with mode: 0644]
doc/fr/fcrontab.1.sgml [new file with mode: 0644]
doc/fr/fcrontab.5.sgml [new file with mode: 0644]
doc/fr/fdl.sgml [new file with mode: 0644]
doc/fr/gpl.sgml [new file with mode: 0644]
doc/fr/install.sgml [new file with mode: 0644]
doc/fr/manpage-foot.sgml [new file with mode: 0644]
doc/fr/readme.sgml [new file with mode: 0644]
doc/fr/relnotes.sgml [new file with mode: 0644]
doc/fr/thanks.sgml [new file with mode: 0644]
doc/fr/todo.sgml [new file with mode: 0644]

diff --git a/doc/fr/changes.sgml b/doc/fr/changes.sgml
new file mode 100644 (file)
index 0000000..6d4884a
--- /dev/null
@@ -0,0 +1,1046 @@
+<!-- 
+Fcron documentation
+Copyright 2000-2006 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.
+-->
+
+<!-- $Id: changes.sgml,v 1.1 2006-02-05 19:26:16 thib Exp $ -->
+
+   <sect1 id="changes">
+      <title>Changes</title>
+
+      <itemizedlist>
+        <title>From version 3.0.0 to 3.0.1</title>
+        <listitem>
+           <para>Better handling of the pipes in job.c: this should remove some problems encountered on BSD systems.</para>
+        </listitem>
+        <listitem>
+           <para>Bug fix: set the FDs correctly for select(). Should fix the problem encountered on BSD systems.</para>
+        </listitem>
+        <listitem>
+           <para>fcrontab: access user's directory with user's rights (necessary if user/group fcron has not the right to read the directory).</para>
+        </listitem>
+        <listitem>
+           <para>improvement in check_system_crontabs: more comments, added some help messages, added command line options, cleaner, safer code.</para>
+        </listitem>
+        <listitem>
+           <para>Improved English documentation: clarified some previously-unclear points.</para>
+        </listitem>
+        <listitem>
+           <para>Added French translation of the manual pages (thanks go to Alain Portal)</para>
+        </listitem>
+      </itemizedlist>
+
+      <itemizedlist>
+        <title>From version 2.9.7 to 3.0.0</title>
+        <listitem>
+           <para>Added a missing entry in changelog (changes from 2.9.6 to 2.9.7, bug fix for NetBSD).</para>
+        </listitem>
+        <listitem>
+           <para>Merged a patch for the check_system_crontabs script (Security enhancements and cleanups).</para>
+        </listitem>
+      </itemizedlist>
+
+      <itemizedlist>
+        <title>From version 2.9.6 to 2.9.7</title>
+        <listitem>
+           <para>Added time zone support (option timezone).</para>
+        </listitem>
+        <listitem>
+           <para>Better support FreeBSD's users and groups modifications in
+              fcron's install scripts.</para>
+        </listitem>
+        <listitem>
+           <para>Fixed a bug which used to make fcron send empty mails on very
+              recent systems.</para>
+        </listitem>
+        <listitem>
+           <para>Fixed a bug which prevented fcrondyn to being used on NetBSD (thanks go to Gabor Z. Papp).</para>
+        </listitem>
+        <listitem>
+           <para>Added some casts in fileconf.c and save.c (to avoid some
+              warnings when compiling on HP-UX).</para>
+        </listitem>
+        <listitem>
+           <para>Added a FAQ entry on how to emulate an anacron entry.</para>
+        </listitem>
+      </itemizedlist>
+
+      <itemizedlist>
+        <title>From version 2.9.5.1 to 2.9.6</title>
+        <listitem>
+           <para>fixed the bug which made jobs run an hour too early after a
+              daylight saving time change.</para>
+           <para>Added detailed explanations about when a job will run when
+              there is a DST change in the FAQ.</para>
+        </listitem>
+        <listitem>
+           <para>fixed fcrondyn's "Unknown command" bug on x86_64 (thanks go to
+              Georgi Georgiev).</para>
+        </listitem>
+        <listitem>
+           <para>made fcrontab behave better when there is no space left in the
+              spool directory (used to truncate the fcrontab source file).
+           </para>
+        <listitem>
+           <para>Added a script, check_system_crontabs, to emulate Vixie cron's
+              behavior about /etc/crontab and /etc/cron.d. Please have a look
+              at the top of script/check_system_crontabs for more information.
+           </para>
+        </listitem>
+        <listitem>
+           <para>HP-UX support (needs more tests).</para>
+        </listitem>
+        <listitem>
+           <para>bug fix: restore umask even if fcron runs
+              unprivileged.</para>
+        </listitem>
+      </itemizedlist>
+
+      <itemizedlist>
+        <title>From version 2.9.5 to 2.9.5.1</title>
+        <listitem>
+           <para>Fixed serious security vulnerabilities in fcronsighup, and
+              improved fcronsighup's overall security (drop privileges, better
+              check user inputs, etc).</para>
+        </listitem>
+        <listitem>
+           <para>Fixed several typos in the doc.</para>
+        </listitem>
+        <listitem>
+           <para>Updated debian package scripts (patch from debian
+              maintainer).</para>
+        </listitem>
+      </itemizedlist>
+
+      <itemizedlist>
+        <title>From version 2.9.4 to 2.9.5</title>
+        <listitem>
+           <para>Ported to HP-UX (thanks go to Scott Tinsley)</para>
+        </listitem>
+        <listitem>
+           <para>Implemented fcrondyn commands run and runnow.</para>
+        </listitem>
+        <listitem>
+           <para>Merged patch from Russell Coker for new SE Linux.</para>
+        </listitem>
+        <listitem>
+           <para>Merged debian/ dir for debian package.</para>
+        </listitem>
+        <listitem>
+           <para>Mail reports: put the same username in the To: field than the
+              one we give as recipient to the MTA. mailto can now also be a
+              fully qualified email address.</para>
+        </listitem>
+        <listitem>
+           <para>changed a log message: a job which has ended without error is
+              reported has "completed" (which is more appropriated than
+              "terminated").
+           </para>
+        </listitem>
+        <listitem>
+           <para>Internal changes in log.c: code is more segmented, and code
+              has been added to be able to send log message to fcrondyn. Syslog
+              messages are now never longer than MAX_MSG (even with string from
+              strerror()).</para>
+        </listitem>
+        <listitem>
+           <para>Fixed a bug which happened on Daylight Saving Time change on
+              some systems. It would make fcron run into a nasty infinite loop.
+              Added a sanity check in set_nextexe() to avoid such
+              things.</para>
+        </listitem>
+        <listitem>
+           <para>Fixed a crash bug: in 2.9.4, if a user run ls_exeq when a job
+              is running and has been removed from its fcrontab, it makes fcron
+              crash.</para>
+        </listitem>
+        <listitem>
+           <para>Fixed a small bug: scripts were supposing perl was in
+              /usr/bin.</para>
+        </listitem>
+        <listitem>
+           <para>Fixed a bug which caused the pid of a child process to be
+              incorrectly read</para>
+        </listitem>
+        <listitem>
+           <para>fixed memory leak: some strings returned by log.c:make_msg()
+              weren't always free()d.</para>
+        </listitem>
+        <listitem>
+           <para>bug fix: fcrondyn commands renice and kill used not to handle
+              correctly the case where a job has several entries in exeq
+              (exesev jobs).</para>
+        </listitem>
+      </itemizedlist>
+
+      <itemizedlist>
+        <title>From version 2.9.3 to 2.9.4</title>
+        <listitem>
+           <para>Merged support for SE Linux (patch from Russell Coker: thanks!)
+           </para>
+        </listitem>
+        <listitem>
+           <para>Work on the documentation (fixed spelling mistakes, tried to
+              make things clearer in fcrontab.5) (thanks Bill Wohler for your
+              help!)</para>
+        </listitem>
+        <listitem>
+           <para>Changed the subject line of mail reports: it now contains the
+              subject line, and is very similar to vixie cron's one.</para>
+        </listitem>
+        <listitem>
+           <para>Added a sum-up at the end of ./configure.</para>
+        </listitem>
+        <listitem>
+           <para>bug fix: "makewhatis" bug is fixed -- at last!</para>
+           <para>In fact, the problems encountered were due to an abusively
+              ignored signal SIGPIPE.</para>
+        </listitem>
+        <listitem>
+           <para>bug fix: possible crash of fcron when trying to save a file
+              if there was no space left on device.</para>
+        </listitem>
+        <listitem>
+           <para>bug fix: we don't consider '-' and '_' as word delimiters for
+              a username before the command anymore, since many programs have
+              one of these characters in their name.</para>
+        </listitem>
+        <listitem>
+           <para>bug fix: option first was broken in fcron 2.9.3.</para>
+        </listitem>
+        <listitem>
+           <para>fixed a little typo in an error message
+              (could->couldn't)</para>
+        </listitem>
+        <listitem>
+           <para>bug fix: do not ignore the last line of a fcrontab if there
+              is no \n before the end of file.</para>
+        </listitem>
+        <listitem>
+           <para>fixed compile on SunOS 5.9 .</para>
+        </listitem>
+        <listitem>
+           <para>Fcron now compiles on MacOS X.</para>
+        </listitem>
+        <listitem>
+           <para>added some $srcdir to be able (again ;) ) to run configure
+              from another directory.</para>
+        </listitem>
+        <listitem>
+           <para>Perf improvement: use buffer for i/o in run_job().</para>
+        </listitem>
+      </itemizedlist>
+
+      <itemizedlist>
+        <title>From version 2.9.2 to 2.9.3</title>
+        <listitem>
+           <para>security issue: fcron used not to check the fcrontabs
+              installed by root for a standard user. This could make an
+              inattentive superuser install a user job runas(root)
+              involontary.</para>
+        </listitem>
+        <listitem>
+           <para>Perf improvement: we now use buffers to write something to
+              disk (became necessary due to the use of O_SYNC).</para>
+        </listitem>
+        <listitem>
+           <para>To avoid loss of data in case of an hardware failure or a
+              system crash, fcron now saves files to a temporary name, and then
+              renames them to their definitive filename if everything's
+              ok.</para>
+        </listitem>
+        <listitem>
+           <para>The PID indicated by fcrondyn is now the pid of the job itself
+              (up to now, it was the one of the fcron process controlling the
+              job).</para>
+        </listitem>
+        <listitem>
+           <para>Implemented functions kill (send a signal to a running job)
+              and renice (change the priority of a running job) in
+              fcrondyn.</para>
+        </listitem>
+        <listitem>
+           <para>Added fcron's option -q to control the lavg and serial queue
+              sizes.
+           </para>
+        </listitem>
+        <listitem>
+           <para>Added some timeouts in fcron for fcrondyn clients.</para>
+        </listitem>
+        <listitem>
+           <para>Fcron is less restrictive concerning mailto addresses. In
+              particular, you can now use address like user@host.</para>
+        </listitem>
+        <listitem>
+           <para>bug fix: in 2.9.2, fcrontab and fcron did not set correctly
+              some file modes.</para>
+        </listitem>
+        <listitem>
+           <para>bug (introduced in 2.9.1): when a job stops with an non-zero
+              exit status or because it has been signaled, send a mail to its
+              owner to inform him (in 2.9.1 and 2.9.2, the mail was sent, but
+              contained nothing).</para>
+        </listitem>
+        <listitem>
+           <para>code clean: use the same scheme for all struct types, removed
+              some code redundancy (save to disk management).</para>
+        </listitem>
+      </itemizedlist>
+
+      <itemizedlist>
+        <title>From version 2.9.1 to 2.9.2</title>
+        <listitem>
+           <para>Added a system fcrontab. Root can access it with fcrontab by
+              using "-u systab".</para>
+        </listitem>
+        <listitem>
+           <para>fcrondyn's ls_lavgq, ls_serialq and ls_exeq are now
+              functional.</para>
+        </listitem>
+        <listitem>
+           <para>mailto can now be set to a non-real user (for ex., an
+              alias).</para>
+        </listitem>
+        <listitem>
+           <para>fcron now calls shutdown() when a connection from fcrondyn is
+              closed.  Another change in the code should prevent fcrondyn from
+              not returning to the prompt after a command has been run.</para>
+        </listitem>
+        <listitem>
+           <para>use open() instead of fopen() to write files, for more
+              security.</para>
+        </listitem>
+        <listitem>
+           <para>fcrontab sets euid=uid before running the editor. This is
+              required by some programs (for instance, perl).</para>
+        </listitem>
+        <listitem>
+           <para>bug fix: using DESTDIR with make did not work with the
+              doc.</para>
+        </listitem>
+        <listitem>
+           <para>Code clean: changed macros to make parameters clearly
+              different from vars.</para>
+        </listitem>
+      </itemizedlist>
+
+      <itemizedlist>
+        <title>From version 2.9.0 to 2.9.1</title>
+        <listitem>
+           <para>fcron can now be run without root's privileges (<link
+                 linkend="faq">see FAQ</link>)</para>
+        </listitem>
+        <listitem>
+           <para>added configure's option --with-boot-install .</para>
+        </listitem>
+        <listitem>
+           <para>Minor change in the PAM code of fcron: may work better on
+              some systems.</para>
+        </listitem>
+        <listitem>
+           <para>configure script now uses getpwnam() and getgrnam() instead of
+              reading directly /etc/passwd and /etc/group: this makes easier
+              the use of NIS, LDAP, etc.</para>
+        </listitem>
+        <listitem>
+           <para>Bug fix: using some "cmd > /dev/stderr" (or stdout) in a
+              script used to make fcron send a bogus output mail. (rewrite of
+              the code managing the output of jobs)</para>
+        </listitem>
+        <listitem>
+           <para>Bug fix: typo error prevented fcrontab to be compiled on some
+              systems.</para>
+        </listitem>
+        <listitem>
+           <para>Minor bug fix about stdout option.</para>
+        </listitem>
+        <listitem>
+           <para>Minor bug fix: giving fcrontab's option -c a relative path
+              now works correctly.</para>
+        </listitem>
+      </itemizedlist>
+
+      <itemizedlist>
+        <title>From version 2.1.0 to 2.9.0</title>
+        <listitem>
+           <para>Added some new options to fcron: -y, -o, -l; and some
+              fcrontab options: stdout and volatile. All these permit to make
+              fcron run in foreground, execute all the pending jobs (mainly
+              %-jobs), and return. May be used, for instance, in a ppp-up
+              script with a dialup connection to update a software
+              regularly.</para>
+        </listitem>
+        <listitem>
+           <para>Added fcrondyn: this software allows users to dialog
+              dyn-amically with a running fcron daemon. Currently, it can list
+              jobs of the user running it (or all jobs for root). In the near
+              future, it should be able to run a job, change its next time and
+              date of execution, renice a running job, send a signal to a
+              running job, etc.</para>
+        </listitem>
+        <listitem>
+           <para>All the documentation has been ported to SGML DocBook.</para>
+           <para>It results on a much better HTML version, which I recommand
+              you use. It is installed by default in fcron documentation
+              directory (for instance, on my system:
+              <filename>/usr/share/doc/fcron-X.X.X/</filename>).</para>
+        </listitem>
+        <listitem>
+           <para>Fcrontab.5 has been updated and improved. Some examples have
+              been added and some possible use of the different lines and
+              options are mentioned.</para>
+        </listitem>
+        <listitem>
+           <para>Added option random, which allows an entry run periodically to
+              be run at a random time in its intervals of execution, instead of
+              being run as soon as possible.</para>
+        </listitem>
+        <listitem>
+           <para>added some more checks in fileconf.c: allow user to use
+              hours, days, hourly, daily, etc options only with %-lines: it is
+              ignored if set for a &-line, which is quite confusing for users
+              who may type, for instance "&amp;hourly" instead of
+              "%hourly".</para>
+        </listitem>
+        <listitem>
+           <para>bug fixed: you can now use arguments in the var EDITOR and
+              VISUAL.</para>
+        </listitem>
+        <listitem>
+           <para>bug fixed: fcron used to call sometimes a sleep(-1), which
+              causes a freeze (no crash, but a very very long sleep :) ) under
+              system using LIBC5, and maybe on some non-linux systems. It was
+              not causing any problem under GLIBC2. Thanks go to Nick
+              Pasich.</para>
+        </listitem>
+      </itemizedlist>
+      
+      <itemizedlist>
+        <title>From version 2.0.0 to 2.1.0</title>
+        <listitem>
+           <para>PAM support for fcron and fcrontab (need testing! - help
+              would be appreciated).</para>
+        </listitem>
+        <listitem>
+           <para>Fcron now send a mail if a job has noticenotrun set and could
+              not be run because of a queue full.</para>
+        </listitem>
+        <listitem>
+           <para>Fcron now compiles on AIX (thank you, John A. Parker!), and a
+              few AIX-only bugs have been fixed, but it may remain some
+              problems to correct.  Please try, and tell me!</para>
+        </listitem>
+        <listitem>
+           <para>We now use constants ROOTUID and ROOTGID instead of some
+              hard-coded "0", and those constants are defined by the configure
+              script (we use the uid/gid of the name given with the option
+              "--with-root{name|group}"). It allows fcron to be run on system
+              on which root is not uid/gid 0/0.</para>
+        </listitem>
+        <listitem>
+           <para>code cleaning.</para>
+        </listitem>
+        <listitem>
+           <para>bug fixed: setting lavg to (0,0,0) used to make the line be
+              added in the lavg queue instead of the serial queue (but the
+              lavgs were ignored anyway).</para>
+        </listitem>
+        <listitem>
+           <para>bug fixed: fcrontab's "-z" option was not ignoring previous
+              user's fcrontab version.</para> </listitem>
+        <listitem>
+           <para>bug fixed: on systems using putenv(), the var HOME, USER and
+              SHELL wasn't correctly assigned. On system supporting setenv()
+              (which is the default), the problem did not occur. (thanks go to
+              Evan A. Zacks).</para>
+        </listitem>
+      </itemizedlist>
+
+
+      <itemizedlist>
+        <title>From version 1.1.1 to 2.0.0</title>
+        <listitem>
+           <para>using SIGUSR2 on fcron makes it print its current schedule on
+              syslog and toggles on/off the printing of debug info on
+              syslog.</para>
+        </listitem>
+        <listitem>
+           <para>fcron behavior on serial and lavg queues overflow has changed: 
+              in previous versions, it used to run a job to make room to put
+              a new one. As it may conduct to a overwhelming of system
+              resources, the new job is now refused (and not run). An error
+              message is also logged through syslog.</para>
+        </listitem>
+        <listitem>
+           <para>a mail is now sent if the job exited due to a signal, or if
+              exit status is non-zero. Read FAQ if you experience problems
+              about that.</para>
+        </listitem>
+        <listitem>
+           <para>added a FAQ.</para>
+        </listitem>
+        <listitem>
+           <para>bug fixed: a midmonthly job executed after the 15th of the
+              month used to cause an endless loop. Thanks go to Guy Geens
+              (thanks a lot!).</para>
+        </listitem>
+        <listitem>
+           <para>bug fixed: inserting a job in serial queue or running a job
+              not finished at startup was broken, unless the job was
+              strict(no).</para>
+        </listitem>
+        <listitem>
+           <para>bug fixed: some 1.1.1 changes used to make fcron impossible
+              to compile without sendmail (./configure's option
+              "--with-sendmail=no").</para>
+        </listitem>
+        <listitem>
+           <para>bug fixed in sysV boot script: we know specify explicitly the
+              path to fcron.</para>
+        </listitem>
+        <listitem>
+           <para>bug fixed: unresolved error used to occur on some system not
+              defining getopt_long().</para>
+        </listitem>
+      </itemizedlist>
+
+      <itemizedlist>
+        <title>From version 1.1.0 to 1.1.1</title>
+        <listitem>
+           <para>security fix: sym link attack against fcrontab. Any user
+              allowed to use fcrontab used to be able to remove any fcrontab,
+              and potentially to truncate any file to zero-length (under
+              certain conditions, anyway).</para>
+        </listitem>
+        <listitem>
+           <para>fcron and fcrontab now have a configuration file: fcron.conf.
+              It contains the default paths (spool dir, etc) and programs to
+              use (editor, shell, etc). Thanks to that file, several fcron
+              processes can run simultaneously if they have a different config
+              (different spool dir and pid file).</para>
+        </listitem>
+        <listitem>
+           <para>added fcron's option "-m" to control the number of serial jobs
+              which can be executed simultaneously.</para>
+        </listitem>
+        <listitem>
+           <para>added fcron's option "-n" to create a new spool dir.</para>
+        </listitem>
+        <listitem>
+           <para>command line syntax of fcrontab has changed: you can know use
+              "user" (after the file name if any) instead of "-u user". It
+              should make fcrontab a little more intuitive.</para>
+        </listitem>
+        <listitem>
+           <para>It is now possible to put a user name between the time/date
+              fields and the shell command of a fcrontab line (for Vixie cron
+              format compatibility): it is equivalent to runas(user).</para>
+        </listitem>
+        <listitem>
+           <para>support of Solaris (and SysV).</para>
+        </listitem>
+        <listitem>
+           <para>early support of OpenBSD.</para>
+        </listitem>
+        <listitem>
+           <para>the installation scripts now use nsswitch.conf to detect if a
+              user or a group exists on the system. That way, naming services
+              (NYS, ldap, etc) are supported.</para>
+        </listitem>
+        <listitem>
+           <para>the man page and doc is now installed by default in
+              $prefix/share/{man|doc} (instead of the previous
+              $prefix/{man|doc}) ($prefix is generally "/usr").</para>
+        </listitem>
+        <listitem>
+           <para>bug corrected: fcron used not to add a serial_sev line to
+              serial/lavg queue if this line was running, saying "already in
+              serial queue".</para>
+        </listitem>
+
+        <listitem>
+           <para>bug corrected: a "all" in fcron.allow with no fcron.deny file
+              was not considered as an allow rule.</para>
+        </listitem>
+      </itemizedlist>
+
+      <itemizedlist>
+        <title>From version 1.0.3 to 1.1.0</title>
+        <listitem>
+           <para>The binary format of the binary fcrontabs has changed: there
+              is now no more need to reinstall the fcrontabs when upgrading
+              fcron (but you need to convert your fcrontabs to the new format
+              once), and this format should allow extensions without losing any
+              information.</para>
+        </listitem>
+        <listitem>
+           <para>better management of the errors in load/save fcrontabs
+              functions.</para>
+        </listitem>
+        <listitem>
+           <para>the doc is a clearer about @-lines.</para>
+        </listitem>
+        <listitem>
+           <para>more security tests by fcrontab in the case it is suid root
+              (but, if possible, it should be suid fcron as it is far more
+              secure).</para>
+        </listitem>
+        <listitem>
+           <para>we now remove unwanted fcrontabs before loading them in memory: 
+              well, it seems to be more logical like that :)) .</para>
+        </listitem>
+        <listitem>
+           <para>bug fix: using options first with a &-line may have led to
+              some problems during the first read by fcron (mail send
+              erroneously if noticenotrun was used, bad set of the first
+              execution's time and date or immediate execution if bootrun was
+              set: in fact, the line was not recognized as a new line).</para>
+        </listitem>
+        <listitem>
+           <para>bug fix: fcron used not to be able to be compiled from any
+              directory because of an absent -I. line option for the compiler
+              (the config.h file was not found).</para>
+        </listitem>
+      </itemizedlist>
+
+      <itemizedlist>
+        <title>From version 1.0.2 to 1.0.3</title>
+        <listitem>
+           <para>fcron can now be configured and compiled from any directory
+              (not only from the source dir).</para>
+        </listitem>
+        <listitem>
+           <para>bug fix: fcron now sets umask to the value it got at start
+              before running a job.</para>
+        </listitem>
+        <listitem>
+           <para>bug corrected: a bug used to make the "truncated" system not
+              to work correctly, so a too long log message used to make fcron
+              crash.</para>
+        </listitem>
+      </itemizedlist>
+
+      <itemizedlist>
+        <title>From version 1.0.1 to 1.0.2</title>
+        <listitem>
+           <para>the user for whom a job is run is now logged.</para>
+        </listitem>
+        <listitem>
+           <para>installation script is now more explicit about what it is
+              going to do.</para>
+        </listitem>
+        <listitem>
+           <para>a boolean value can now also be set by "yes" and "no".</para>
+        </listitem>
+        <listitem>
+           <para>bug corrected: bootrun option works again.</para>
+        </listitem>
+        <listitem>
+           <para>bug corrected: shell variable containing underscore (_) used
+              to be rejected.</para>
+        </listitem>
+        <listitem>
+           <para>bug corrected: installation script used not to check if user
+              fcron was in group fcron, in which case fcrontab doesn't work
+              correctly (it cannot, in that case, read the fcrontabs for
+              non-privileged users).</para>
+        </listitem>
+      </itemizedlist>
+
+      <itemizedlist>
+        <title>From version 1.0.0 to 1.0.1</title>
+        <listitem>
+           <para>security fix: a user used to be able to read a file owned by
+              root if root runs a "fcrontab -u user -e".</para>
+        </listitem>
+      </itemizedlist>
+
+      <itemizedlist>
+        <title>From version 0.9.5 to 1.0.0</title>
+        <listitem>
+           <para>added fcron's option "-s" to control the time between two
+              saves of the fcrontabs on disk.</para>
+        </listitem>
+        <listitem>
+           <para>installation scripts now support better FreeBSD and sh.</para>
+        </listitem>
+        <listitem>
+           <para>bug corrected: configure's options prefix and
+              without-sendmail used not to work.</para>
+        </listitem>
+        <listitem>
+           <para>bug corrected: installing an fcrontab by "fcrontab file"
+              wasn't working correctly with a relative path (a path not
+              beginning by a "/").</para>
+        </listitem>
+      </itemizedlist>
+
+      <itemizedlist>
+        <title>From version 0.9.4 to 0.9.5</title>
+        <listitem>
+           <para>security fix: the jobs of a fcrontab reinstalled by root used
+              to be run as root (until the next action of the owner on the
+              fcrontab).</para>
+        </listitem>
+        <listitem>
+           <para>added options strict and noticenotrun to tell fcron
+              respectively if a job should be removed from lavg queue if its
+              execution interval is exceeded, and if fcron should mail user to
+              report the non-execution of a job.</para>
+        </listitem>
+        <listitem>
+           <para>added option nolog in order to log only errors (i.e. no
+              message like "job x started"). This can help to reduce the disk
+              access and save energy on a laptop, and make the log more
+              readable if some jobs are run very often.</para>
+        </listitem>
+        <listitem>
+           <para>better handle of changes of the uids of users in /etc/passwd
+              (no more need to reinstall the fcrontabs).</para>
+        </listitem>
+        <listitem>
+           <para>fcron.deny and fcron.allow files are now owned by root (they
+              used to be owned by user fcron).</para>
+        </listitem>
+        <listitem>
+           <para>added ./configure's option --with-answer-all to be able to use
+              "make install" in a non-interactive way (can be useful for
+              automatic installers).</para>
+        </listitem>
+        <listitem>
+           <para>added option --with-rootname and --with-rootgroup to
+              ./configure script for a better support of exotic systems.</para>
+        </listitem>
+        <listitem>
+           <para>bug corrected in make install (script user-group): the script
+              used not to handle correctly the absence of both useradd and
+              adduser commands.  This script now checks and tries to add a
+              group fcron if necessary.</para>
+        </listitem>
+      </itemizedlist>
+
+      <itemizedlist>
+        <title>From version 0.9.3 to 0.9.4</title>
+        <listitem>
+           <para>security improvement: after the (horrible) root exploit found
+              in version 0.9.3, I decided to improve fcron/fcrontab's security.
+              I've included some strong (I hope :)) ) tests in fcron to ensure
+              that only root can run commands as superuser and use option
+              runas. Even an corrupted fcrontab should not be able to get
+              root's privileges. Pretty reassuring, isn't it?</para>
+        </listitem>
+        <listitem>
+           <para>runfreq(1) lines have been replaced and extended by a new kind
+              of line: the lines beginning by a "%". It's now possible to tell
+              fcron to run a command once an hour, a week, etc, but only at
+              some specified moments. For instance: '%weekly * 4-7 echo "foo"'
+              will run the command 'echo "foo"' once a week between 4 and 7 in
+              the morning. (see "man 5 fcrontab" for more details).</para>
+        </listitem>
+        <listitem>
+           <para>installation process improved: user is now consulted before
+              anything is done about installation in boot scripts, etc. The
+              default username of fcron is now ... fcron! (this is more secure
+              than daemon, which can be used by other programs). </para>
+        </listitem>
+        <listitem>
+           <para>fcron now adds the host name to the addresses of the mails it
+              sends.</para>
+        </listitem>
+        <listitem>
+           <para>fcrontab determines the identity of the running user by his
+              uid (it used to use the var USER). That way, fcrontab should act
+              as crontab under a "su".</para>
+        </listitem>
+        <listitem>
+           <para>bug fixed: a tmp file was not removed after a "fcron
+              -z"</para>
+        </listitem>
+        <listitem>
+           <para>bug fixed in fcrontab: an expression of the form "start-stop"
+              with start > stop used to be incorrectly managed by fcron.</para>
+        </listitem>
+        <listitem>
+           <para>bug fixed: when fcron and fcrontab were installed under a
+              non-privileged user rights, a normal user used to be not able to
+              use fcrontab.</para>
+        </listitem>
+        <listitem>
+           <para>bug fixed: while fcrontab was asking user if he would like to
+              correct an erroneous line, the answer was not correctly
+              handled.</para>
+        </listitem>
+      </itemizedlist>
+
+      <itemizedlist>
+        <title>From version 0.9.2.1 to 0.9.3</title>
+        <listitem>
+           <para>installation scripts improved.</para>
+        </listitem>
+        <listitem>
+           <para>added code to avoid infinite loops.</para>
+        </listitem>
+        <listitem>
+           <para>bugs corrected in the functions to set the time and date of
+              next execution.</para>
+        </listitem>
+        <listitem>
+           <para>bug corrected in the check for invalid lines.</para>
+        </listitem>
+      </itemizedlist>
+
+      <itemizedlist>
+        <title>From version 0.9.2 to 0.9.2.1</title>
+        <listitem>
+           <para>minor bug corrected in Makefile</para>
+        </listitem>
+      </itemizedlist>
+
+      <itemizedlist>
+        <title>From version 0.9.1 to 0.9.2</title>
+        <listitem>
+           <para>fcron now uses autoconf (the configure script), so it should
+              be easier to compile and install it and various systems.</para>
+        </listitem>
+        <listitem>
+           <para>support of lavg options for all systems where getloadavg() is
+              defined (BSD unix, etc) and on Linux systems with a proc
+              filesystem (fcron can use /proc/loadavg).</para>
+        </listitem>
+        <listitem>
+           <para>a job can now be executed several times simultaneously if
+              option exesev is set to 1.</para>
+        </listitem>
+        <listitem>
+           <para>user can determine if a job can be put several times in the
+              serial queue simultaneously thanks to option serialonce.</para>
+        </listitem>
+        <listitem>
+           <para>fcron does not wait anymore for the completion of all jobs of
+              a file before deleting it from memory.</para>
+        </listitem>
+        <listitem>
+           <para>fcron handles correctly the jobs which are both serial and
+              lavg.</para>
+        </listitem>
+        <listitem>
+           <para>fcron now runs under a specific user and group (other than
+              root) for basic security reasons.</para>
+        </listitem>
+        <listitem>
+           <para>bug corrected: fcron used to crash after a file was deleted
+              from memory in some conditions.</para>
+        </listitem>
+        <listitem>
+           <para>corrected the bug which used to appear when a line was put
+              several times in the serial queue: in this case, fcron used not
+              to count correctly the number of running serial jobs.</para>
+        </listitem>
+        <listitem>
+           <para>bug corrected: fcrontab used not to remove the temporary file
+              it creates if no modification where done to a file after an
+              edition using the -e option and on errors.</para>
+        </listitem>
+        <listitem>
+           <para>bug corrected: fcrontab now defines correctly the remain
+              value of a line based on time and date beginning with a "&" but
+              without runfreq definition.</para>
+        </listitem>
+        <listitem>
+           <para>bug corrected: fcron used to not install correctly a file
+              edited if a correction was made.</para>
+        </listitem>
+        <listitem>
+           <para>bug corrected: reset option was not working correctly when
+              set to a single line.</para>
+        </listitem>
+      </itemizedlist>
+
+      <itemizedlist>
+        <title>From version 0.9.0 to 0.9.1</title>
+        <listitem>
+           <para>support of the option mailto for each line (it used to be set
+              for the whole file).</para>
+        </listitem>
+        <listitem>
+           <para>the value of the runas and mailto options are now stored
+              internally as a uid number: you must reinstall all the system's
+              fcrontabs if you change the uid of a user.</para>
+        </listitem>
+        <listitem>
+           <para>Support of options "lavg*", in order to run a job under a
+              specific 1, 5 and/or 15 minutes system load average value(s).
+              When the job should be run, it is placed in a specific queue and
+              the load average is checked regularly until the right value(s)
+              is/are got. The options "lavgor" and "lavgand" permits users to
+              tell fcron if they prefer to perform a logic OR or AND between
+              the 1, 5 and 15 load average values. The option "until" can be
+              use to force the execution of a job after a determined timeout if
+              the right conditions to run the job are not filled.</para>
+        </listitem>
+        <listitem>
+           <para>fcron now uses putenv() in place of setenv() (setenv() is not
+              POSIX compliant).</para>
+        </listitem>
+        <listitem>
+           <para>a mailto option set to "" is now equivalent to
+              "mail(false)".</para>
+        </listitem>
+        <listitem>
+           <para>corrected the bug which used to make a bootrun and runfreq(1)
+              job executed twice when fcron's start occurs in an interval of
+              execution of the job.</para>
+        </listitem>
+        <listitem>
+           <para>corrected the bug which used to make fcron crash after
+              serial_array is resized.</para>
+        </listitem>
+      </itemizedlist>
+
+      <itemizedlist>
+        <title>From version 0.8.3 to 0.9.0</title>
+        <listitem>
+           <para>support of options in fcrontabs. Options can be specific to a
+              line or defined once for every line located after their
+              definition (a special option "reset" set all options to their
+              default). Some options also have too names: a long name and an
+              abbreviation.</para>
+        </listitem>
+        <listitem>
+           <para>jobs can now be run be run one after the other (option
+              "serial"): when the job should normally be run, it is added to a
+              queue, which entries are executed one by one. It permits to avoid
+              the use of a lot of system resources for a brief moment by the
+              simultaneous execution of several tasks.</para>
+        </listitem>
+        <listitem>
+           <para>jobs can be run at system start up if they should have been
+              run during system down time (option "bootrun").</para>
+        </listitem>
+        <listitem>
+           <para>root can run jobs as an another user (option "runas")</para>
+        </listitem>
+        <listitem>
+           <para>user can set a nice value to a job, but only root can use a
+              negative value (a negative value will increase priority)</para>
+        </listitem>
+        <listitem>
+           <para>user can choose to perform a logic AND or a logic OR between
+              day of month and day of week (option "dayor" and "dayand")</para>
+        </listitem>
+        <listitem>
+           <para>user can choose to mail the output of jobs (option "mail") if
+              any, and can force fcron to send a mail even if output is
+              zero-length (option "forcemail").</para>
+        </listitem>
+        <listitem>
+           <para>fixed the bug which used to make fcron run a job with a
+              runfreq set to 1 at a wrong time.</para>
+        </listitem>
+        <listitem>
+           <para>fixed a bug which used to make fcrontab crash after several
+              corrections in edit mode.</para>
+        </listitem>
+      </itemizedlist>
+
+      <itemizedlist>
+        <title>From version 0.8.2 to 0.8.3</title>
+        <listitem>
+           <para>(all this bugs appeared in version 0.8.2 :)</para>
+        </listitem>
+        <listitem>
+           <para>fixed the bug which used to make fcron crash after a
+              SIGHUP</para>
+        </listitem>
+        <listitem>
+           <para>fixed the bug which used to prevent fcron from running some
+              job based on time and date</para>
+        </listitem>
+        <listitem>
+           <para>fixed the bug which used to makes fcron run the jobs one
+              second too late</para>
+        </listitem>
+      </itemizedlist>
+
+      <itemizedlist>
+        <title>From version 0.8.1 to 0.8.2</title>
+        <listitem>
+           <para>code has been optimized: The jobs are now queued in order of
+              execution. It permits avoid useless tests of all jobs every time
+              fcron wakes up, speeds up the determination of the time fcron
+              should sleep, speeds up the processing after the end of a job,
+              etc. I don't know why I haven't made it before :-) ...</para>
+        </listitem>
+        <listitem>
+           <para>fcrontab has been improved: it is now more stable (many bugs
+              which used to make fcrontab crash in case of errors in the
+              fcrontab has been fixed). Plus, it now asks if you want to make
+              corrections if needed when editing.</para>
+        </listitem>
+      </itemizedlist>
+
+      <itemizedlist>
+        <title>From version 0.8.0 to 0.8.1</title>
+        <listitem>
+           <para>ported to FreeBSD 4.0</para>
+        </listitem>
+      </itemizedlist>
+
+      <itemizedlist>
+        <title>From version 0.7.0 to 0.8.0</title>
+        <listitem>
+           <para>corrected the bug which keep normal users from listing and
+              editing their current configuration file with fcrontab -l or
+              -e.</para>
+        </listitem>
+        <listitem>
+           <para>corrected the bugs which used to block fcron when a task was
+              marked for execution but fcron stopped before it has been
+              launched, and when fcron stopped after the end of a job but
+              before the output has been mailed.</para>
+        </listitem>
+        <listitem>
+           <para>day of week 0 and 7 now both mean Sunday.</para>
+        </listitem>
+        <listitem>
+           <para>the abbreviations of months and day of week are not any more
+              case dependent.</para>
+        </listitem>
+        <listitem>
+           <para>months are now defined from 1 to 12 (and not from 0 to 11) (it
+              was a little bit illogical :-).</para>
+        </listitem>
+        <listitem>
+           <para>you can now force spaces in strings if you place them in
+              quotes.</para>
+        </listitem>
+        <listitem>
+           <para>I discovered ispell :-) ...</para>
+        </listitem>
+        <listitem>
+           <para>I've added a kind of signature in the formated configuration
+              files in order to keep the daemon from attempting to read an old
+              configuration file which doesn't use the same syntax.</para>
+        </listitem>
+        <listitem>
+           <para>You can now install a file with fcrontab from standard
+              input.</para>
+        </listitem>
+        <listitem>
+           <para>others minor adds and bug corrections.</para>
+        </listitem>
+      </itemizedlist>
+   </sect1>
+
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-parent-document:("fcron-doc.sgml" "book" "chapter" "sect1" "")
+End:
+-->
+   
\ No newline at end of file
diff --git a/doc/fr/faq.sgml b/doc/fr/faq.sgml
new file mode 100644 (file)
index 0000000..1819a00
--- /dev/null
@@ -0,0 +1,358 @@
+<!-- 
+Fcron documentation
+Copyright 2000-2006 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.
+-->
+
+<!-- $Id: faq.sgml,v 1.1 2006-02-05 19:25:46 thib Exp $ -->
+
+<sect1 id="faq">
+    <title>Frequently Asked Questions</title>
+    <para>This FAQ intends to complement the man pages by following a more
+practical approach.</para>
+    <para>If you think a QA should be added, please mail me it!</para>
+    <qandaset>
+       <qandaentry>
+           <question>
+               <para>How does fcron handle system clock adjustments?</para>
+           </question>
+           <answer>
+               <para>
+       First, you must understand that fcron determines, for each job, its next
+time and date of execution. It then determines which of those jobs would be the
+next to run and then, sleeps until that job should be run. In other words, fcron
+doesn't wake up like Vixie cron each minute to check all job in case one should
+be run ... and it avoids some problems associated with clock adjusts.</para>
+               <para>
+       This means that if the new time value is set into the past, fcron won't
+run a particular job again. For instance, suppose the real time and system clock
+are 3:00, so the next job cannot be scheduled to run before 3:00, as it would
+have already been run and re-scheduled.</para>
+               <para>
+       First, suppose you set your system clock into the past, say to 2:00,
+Presuming that the last run was shortly before 3:00. then fcron will sleep until
+the next job should be executed. The execution time for a job is determined by
+identifying the last time that the job ran and computing the next scheduled
+time. This means that the next scheduled time must be on or after 3:01.
+Therefore, in this example, fcron will not run a job for at least one
+hour.</para>
+               <para>
+       Next, if you set the system time into the future, say to 4:00, fcron will
+run every job scheduled between the old and the new time value once, regardless
+of how many times it would have been scheduled. When fcron wakes up to run a job
+after the time value has changed, it runs all the jobs which should have run
+during the interval because they are scheduled to run in a past time.</para>
+               <para>
+       As special case is when "@xxx" style scheduling rules are involved, you
+must consider the "adjustment-interval". The "adjustment-interval" is the time
+difference between the original system time and the new system time. The concerned
+jobs will run at "adjust-interval" too
+early or too late depending of the nature of the adjust.</para>
+               <para>
+       To conclude, fcron behaves quite well for small clock adjusts. Each job
+which should have run does so once, but not exactly at the correct time as if
+the job were scheduled within the adjustment interval. But, if you have to make
+a big change in the time and date, you should probably reset all the scheduled
+"nextexe" by running "fcrontab -z" on all the fcrontabs.</para>
+           </answer>
+       </qandaentry>
+        <qandaentry>
+           <question>
+              <para>How does fcron handle daylight saving time changes?</para>
+           </question>
+           <answer>
+              <para>There are two types of daylight saving time change: 
+the remove-one-hour change (for instance, "at 3:00, it will be 2:00"), 
+and the add-one-hour one (for instance, "at 2:00, it will be 3:00").
+In both cases, fcron will run the job only once (more precisely, it won't
+run the job twice as many as it should have).</para>
+              <para>In the first case, the official time changes as follow
+(in order of real chronological time): [x, 2:00] -> i1: [2:00, 3:00]
+ -> i2: [2:00, 3:00] -> [3:00, y]. i1 and i2 are the names of the two
+intervals [2:00, 3:00]. For this kind of DST change, a job which should
+run between 2:00 and 3:00 will run either in i1 or in i2, but not both.
+Consequently, a job scheduled to run every day at 2:30 (for instance)
+will be run only once. There is no way for a user to know if the job will
+be run in i1 or i2.</para>
+              <para>In the second case, there is a gap in time:
+the official time changes as follow (in order of real chronological time):
+[x, 2:00] -> [3:00, y]. A job scheduled between 2:00 and 3:00 will get
+run once, and only once, even if it should have been run several times.
+For instance, a job which should have run every 10 minutes will run only
+once, not 6 times, between 1:59 and 3:01. A job scheduled to run at
+2:xx will run at 3:xx. For instance, if a job is scheduled to run
+every day at 2:30, it will run at 3:30 the day of this kind of DST change.
+</para>
+           </answer>
+        </qandaentry>
+        <qandaentry>
+           <question>
+              <para>What about fcron and software suspend 
+                 (aka. suspend to RAM, to disk)?</para>
+           </question>
+           <answer>
+              <para>We suppose here that you are using swsusp and the hibernate
+                 script to do a "suspend to disk", but it should be similar
+                 with other methods.</para>
+              <para>When you switch on your computer after a suspend to disk,
+                 the system time will be incorrect, and will then be corrected
+                 by the hibernate script. Before it is corrected, fcron may
+                 compute the time and date of the next execution of a job:
+                 the computation would then be incorrect (please see the entry
+                 about system clock adjustment in the present FAQ).</para>
+              <para>So you should have the hibernate script stop fcron before
+                 the suspend, and then restart it when the system is switched on,
+                 ie. put a line like "RestartServices fcron" in your hibernate.conf
+                 file. That way, the system time will always be correct when
+                 fcron runs (assuming that fcron is started after the system time
+                 is corrected).</para>
+           </answer>
+        </qandaentry>
+       <qandaentry>
+           <question>
+               <para>How can I prevent fcrontab from considering the first
+"word" of my command line as a user name i.e. "runas(word)"?</para>
+           </question>
+           <answer>
+               <para>
+      Suppose you have an user called "echo" (weird idea ... :)) ). If you use
+the line '* * * * * echo "Hello!"' in root's fcrontab, "echo" will be
+interpreted as "runas(echo)".</para>
+               <para>To suppress that, put your command in quotes:
+<programlisting>* * * * * 'echo "Hello!"'</programlisting> will work as
+expected as quotes are allowed for the shell command but not for the user
+name.</para>
+           </answer>
+       </qandaentry>
+
+       <qandaentry>
+           <question>
+               <para>
+       I have a job which usually terminates with a non-zero status. When it
+does, I receive a mail with the exit status even if the command had no output.
+How can I avoid the mail?</para>
+           </question>
+           <answer>
+               <para>
+      You could disable mail entirely by setting the "mail" option to "no". But,
+if you still want to receive the standard output as mail, you can add an command
+which always evaluates to 0, like "/bin/true", after your primary command. This
+will not affect your job nor create additional output. For example:</para>
+               <programlisting>
+* * * * * /a/non/zero/status/job ; /bin/true</programlisting>
+           </answer>
+       </qandaentry>
+
+       <qandaentry>
+           <question>
+               <para>What does "loadavg" mean anyway?</para>
+           </question>
+           <answer>
+               <para>
+      The "/proc/loadavg" file provides loadavg values. These values are (in
+order): the system load averages for the past 1, 5, and 15 minutes; a count of
+the (active tasks/active processes); the pid of last process run;
+               </para>
+               <para>
+      The active task count includes those processes marked as running or
+uninterruptable. A load average is an estimate of the average number of
+processes running within a specified period. The load averages are computed from
+active task count. They are updated each time active task counts are taken.
+               </para>
+               <para>
+<!-- It sure would be nice for some MathML here. --> 
+The load average formula is: <programlisting>
+loadavg(d,n) = active_task_cnt - (active_task_cnt - old_loadavg)*(1/exp(d/n)
+</programlisting>
+where: d is the time interval between active task count readings, typically every
+5 seconds; n is the time over which the readings are averaged.
+               </para>
+           </answer>
+       </qandaentry>
+
+       <qandaentry>
+           <question>
+               <para>How can I use fcrontab in scripts?</para>
+           </question>
+           <answer>
+               <para>
+      You can use pipes with "<command>fcrontab -l</command>" (list the
+fcrontab) and "<command>fcrontab -</command>" (read the new fcrontab from
+input). For example: </para>
+               <screen> <command>echo -e "`fcrontab -l | grep -v exim`\n0 * * * *      /usr/sbin/exim -q" | fcrontab -</command></screen>
+               <para>
+                 can be used to add a line. Another way to do it would be to:
+list the fcrontab settings into a temporary file ("<command>fcrontab -l >
+tmpfile</command>"); modify the temporary file ("<command>echo $LINE >>
+tmpfile</command>"); replace the original fcrontab by the temporary; and
+finally, remove the temporary file ("<command>fcrontab tmpfile ; rm -f
+tmpfile</command>").
+               </para>
+           </answer>
+       </qandaentry>
+
+       <qandaentry>
+           <question>
+               <para>Can I use fcron from time to time, for instance in a
+script?</para>
+           </question>
+           <answer>
+               <para>Let's suppose you use fcron in your ppp-up script. Fcron
+can permit you to run some jobs at connection startup, but not at each
+connection, like it would be if the job was run directly by the ppp-up script:
+for instance, only once every week.</para>
+               <para><example>
+                       <title>Using fcron in a script: running a job once
+every day, week, etc, at dialup connection</title>
+                       <para>You can use a script like:</para>
+                       <programlisting>
+# A ppp-up script ... 
+# run the jobs pending, then returns: 
+fcron -f -y -o
+</programlisting>
+                       <para>in conjunction with a fcrontab file like:</para>
+                       <programlisting>
+# a fcrontab file ... 
+%random(no),weekly,stdout * * /a/command/to/download/latest/mozilla/release 
+%monthly,stdout * * * /update/junkbuster/config/files
+</programlisting>
+                   </example></para>
+               <para>You can also use fcron to run some jobs until the end of
+the connection. For instance, you can make fetchmail retrieve mails more often
+during connection: we suppose that it is configured to retrieve mails every
+hour, which launches a dialup connection if necessary, and we want it to check
+for mails every 5 minutes while connected.</para>
+               <para><example>
+                       <title>Using fcron in a script: running a job until the
+end of the connection</title>
+                       <para>ppp-up script:</para>
+                       <programlisting>
+# A ppp-up script ... 
+# run fcron at the beginning of the connection: 
+fcron -b
+</programlisting>
+                       <para>ppp-down script:</para>
+                       <programlisting>
+# A ppp-down script ... 
+# stop fcron at the end of the connection: 
+# -- Warning: killall may have unwanted effect on non linux systems -- 
+killall -TERM fcron
+</programlisting>
+                       <para>the fcrontab:</para>
+                       <programlisting>
+# a fcrontab file ... 
+@volatile,first(0) 5 fetchmail
+</programlisting>
+                   </example></para>
+
+               <para>If you run fcron in several scripts, or if you run fcron
+as a daemon and want also to run fcron in scripts, then you should use fcron,
+fcrontab and fcrondyn's <option>--configfile</option>.</para>
+               <para>For more details, see fcron's options
+<option>--once</option>, <option>--nosyslog</option>,
+<option>--firstsleep</option> and <option>--configfile</option> in <link
+linkend="fcron.8">&fcron;(8)</link>, and fcrontab's options &optvolatile;,
+&optstdout;, &optfirst; in <link
+linkend="fcrontab.5">&fcrontab;(5)</link></para>
+           </answer>
+       </qandaentry>
+       
+       <qandaentry>
+           <question>
+               <para>Can I run fcron without root's privileges?</para>
+           </question>
+           <answer>
+               <para>Yes, you can. To do that, see the
+following instructions, but please note that fcrondyn currently does *not* work
+without root privileges.</para>
+               <orderedlist>
+                   <listitem>
+                       <para>First, create a directory where you'll install fcron,
+ and some subdirectories:</para>
+                       <screen><prompt>bash$
+</prompt> <command>mkdir /home/thib/fcron</command>
+<prompt>bash$</prompt> <command>cd /home/thib/fcron</command>
+<prompt>bash$</prompt> <command>mkdir doc man spool</command></screen>
+                   </listitem>
+                   <listitem>
+                       <para>Then, run configure with option 
+<option>--with-run-non-privileged</option>, set all user names and groups to yours,
+and set appropriately the paths:</para>
+                       <para><warning>
+                           <para>This option allows a non privileged user to run
+       fcron. When used, fcron does not change its rights before running a job
+       (i.e., if joe runs fcron, every job will run as joe).  It means that
+       <emphasis>YOU SHOULD NOT RUN FCRON AS A PRIVILEGED USER WHEN COMPILED
+       WITH THIS OPTION</emphasis> or you'll have a serious security
+       hole.</para> </warning></para>
+                       <screen><prompt>bash$
+</prompt> <command>./configure --with-run-non-privileged --with-rootname=thib
+--with-rootgroup=thib --with-username=thib --with-groupname=thib
+--with-etcdir=/home/thib/fcron --with-piddir=/home/thib/fcron
+--with-fifodir=/home/thib/fcron --with-spooldir=/home/thib/fcron/spool
+--with-docdir=/home/thib/fcron/doc --prefix=/home/thib/fcron</command></screen>
+                   </listitem>
+               </orderedlist>
+               <para>The rest of the installation is described in the
+<link linkend="install">install file</link>.</para>
+           </answer>
+       </qandaentry>
+
+        <qandaentry>
+           <question>
+              <para>Has fcron some incompatibilities with Vixie cron?</para>
+           </question>
+           <answer>
+              <para>As far as I know, fcron supports completely the syntax of
+                 Vixie cron's crontab, excepted the @* syntax (@annually,
+                 @weekly, etc: if you use that, you will have to replace it
+                 with the explicit equivalent given in crontab(5)). So you
+                 should not have much problem with that (otherwise, please
+                 contact me at &email;).</para>
+              <para>The main problem is about the management of the system (f)crontab.
+                 Vixie cron monitors the changes on /etc/crontab every minute,
+                 and automatically takes into account the changes if any.
+                 As for now, fcron do not do that. Fcron do not support the
+                 /etc/cron.d/ dir too, as it is just an extension of the /etc/crontab
+                 file.
+                 But be reassured: /etc/cron.{daily,weekly,monthly} are supported
+                 by fcron (in fact, those dirs are not managed by fcron directly,
+                 but by run-parts, which is independent from fcron).</para>
+              <para>So if you want to replace transparently Vixie cron by fcron,
+                 all you have to do is creating a /usr/bin/crontab link to
+                 /usr/bin/crontab, and to reinstall the system (f)crontab
+              with fcrontab /etc/crontab each time you modify it
+                 (if you find something else to do, please tell me!).</para>
+              <para>You can also use the script script/check_system_crontabs
+                 to generate a system fcrontab from /etc/(f)crontab and /etc/cron.d/,
+                 and install it automatically. If you choose to do that, take 
+                 a look at the beginning of the script: you will find insctructions
+                 on how to use it -- and a few warnings you should pay attention to.
+                 With this script, the behavior of fcron should be very similar
+                 to Vixie cron's one concerning /etc/crontab and /etc/cron.d/.
+              </para>
+           </answer>
+        </qandaentry>
+        <qandaentry>
+           <question>
+              <para>How can I emulate an anacron entry?</para>
+           </question>
+           <answer>
+              <para>You should use a line similar to the following one:</para>
+              <para>@volatile,first(xx) BIG-period /your/command</para>
+              <para>where xx is the time you would have put in your anacron line.</para>
+           </answer>
+        </qandaentry>
+    </qandaset>
+</sect1>
+
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-parent-document:("fcron-doc.sgml" "book" "chapter" "sect1" "")
+End:
+-->
diff --git a/doc/fr/fcron-doc.sgml b/doc/fr/fcron-doc.sgml
new file mode 100644 (file)
index 0000000..0b5b057
--- /dev/null
@@ -0,0 +1,109 @@
+<!doctype book PUBLIC "-//OASIS//DTD DocBook V4.1//EN" [
+
+<!ENTITY % decl SYSTEM "fcron-doc.mod">
+%decl;
+
+]>
+
+<!-- 
+Fcron documentation
+Copyright 2000-2006 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.
+-->
+
+<!-- $Id: fcron-doc.sgml,v 1.1 2006-02-05 19:25:05 thib Exp $ -->
+
+<book lang="en" id="fcron-doc">
+    <bookinfo id="bookinfo">
+       <title>Fcron documentation</title>
+       <date>&date;</date>
+       <releaseinfo>Fcron &version; <![%devrelease; [
+(<emphasis>development</emphasis> release)]]></releaseinfo>
+       <authorgroup>
+           <author>
+               <firstname>Thibault</firstname>
+               <surname>Godouet</surname>
+           </author>
+       </authorgroup>
+       <copyright>
+           <year>&copyrightdate;</year>
+           <holder>Thibault Godouet</holder>
+       </copyright>
+       <legalnotice id="legalnotice">
+           <para><citetitle>Fcron documentation</citetitle> Copyright &copy;
+&copyrightdate; Thibault Godouet, &email;</para>
+           <para>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; with the Back-Cover
+Texts being <!-- ulink hack because this legal notice gets diverted --> <ulink
+url="#backcover">Back Cover Text</ulink>. A copy of the license is included in
+<xref linkend="fdl">.</para>
+       </legalnotice>
+
+       <abstract>
+           <para>&Fcron; is distributed under GPL license (please read the
+license in <xref linkend="gpl">).</para>
+           <para>Project home page: &webpage;</para>
+           <para>Author: Thibault GODOUET &email;</para>
+       </abstract>
+       <abstract>
+           <para>You can get the latest HTML version of this document at:
+&docurl; . The SGML DocBook sources are included with fcron packages.</para>
+       </abstract>
+
+       <![%devrelease; [ 
+       <abstract>
+           <para>
+               <warning>
+                   <para>This release (&version;) - as every version of the
+form x.y.z where y is an odd number -, is a <emphasis>development</emphasis>
+release, so it may contain more bugs (and uglier ones :)) ) than a stable
+release.
+                   </para>
+               </warning>
+           </para>
+       </abstract>
+       ]]>
+    </bookinfo>
+
+    <chapter id="how-and-why">
+       <title>Fcron: how and why?</title>
+       <para>This chapter will explain you what is &fcron;, why you should need
+it, and how to install it.</para>
+       &about;
+       &install;
+       &changes;
+       &relnotes;
+       &todo;
+       &thanks;
+    </chapter>
+
+    <chapter id="using-fcron">
+       <title>Using fcron ...</title>
+       <sect1 id="manpages">
+           <title>Manual pages of fcron</title>
+           <para>This section contains the manual pages, which tell you how to use &fcron;.</para>
+           &fcron.8;
+           &fcron.conf.5;
+           &fcrontab.1;
+           &fcrontab.5;
+           &fcrondyn.1;
+       </sect1>
+       &faq;
+    </chapter>
+
+    &gpl;
+    &fdl;
+</book>
+
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-indent-data:nil
+sgml-local-ecat-files:("psgml-ecat.file")
+End:
+-->
diff --git a/doc/fr/fcron.8.sgml b/doc/fr/fcron.8.sgml
new file mode 100644 (file)
index 0000000..61da01c
--- /dev/null
@@ -0,0 +1,355 @@
+<!--
+Fcron documentation
+Copyright 2000-2004 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.
+-->
+
+<!-- $Id: fcron.8.sgml,v 1.1 2006-02-05 19:26:12 thib Exp $ -->
+
+<refentry id="fcron.8">
+  <refmeta>
+    <refentrytitle>fcron</refentrytitle>
+    <manvolnum>8</manvolnum>
+    <refmiscinfo>Fcron &version; <![%devrelease; [
+(<emphasis>development</emphasis> release)]]></refmiscinfo>
+    <refmiscinfo>&date;</refmiscinfo>
+  </refmeta>
+  <refnamediv>
+    <refname>fcron</refname>
+    <refpurpose>démon pour exécuter des tâches planifiées</refpurpose>
+  </refnamediv>
+
+  <refsynopsisdiv>
+    <cmdsynopsis>
+      <command>fcron</command>
+      <arg>-c <replaceable>fichier</replaceable></arg>
+      <arg>-d</arg>
+      <arg>-b</arg>
+      <arg>-s <replaceable>temps</replaceable></arg>
+      <arg>-m <replaceable>nombre</replaceable></arg>
+      <arg>-q <replaceable>nombre</replaceable></arg>
+    </cmdsynopsis>
+    <cmdsynopsis>
+      <command>fcron</command>
+      <arg>-c <replaceable>fichier</replaceable></arg>
+      <arg>-d</arg>
+      <arg>-f</arg>
+      <arg>-o</arg>
+      <arg>-y</arg>
+      <arg>-l <replaceable>temps</replaceable></arg>
+    </cmdsynopsis>
+    <cmdsynopsis>
+      <command>fcron</command>
+      <arg>-n <replaceable>rép</replaceable></arg>
+    </cmdsynopsis>
+    <cmdsynopsis>
+      <command>fcron</command>
+      <arg>-h</arg>
+    </cmdsynopsis>
+    <cmdsynopsis>
+      <command>fcron</command>
+      <arg>-V</arg>
+    </cmdsynopsis>
+  </refsynopsisdiv>
+
+  <refsect1>
+    <title>Description</title>
+    <para>&Fcron; devrait être lancé par un script <filename>/etc/rc</filename>
+      ou <filename>/etc/rc.local</filename>. À moins que l'option
+      <option>-f</option> (ou <option>--foreground</option>) n'ait été fournie,
+      cette commande rend la main immédiatement. Ainsi, vous n'avez pas besoin
+      de la lancer avec «&nbsp;&&nbsp;».
+    </para>
+    <para>&Fcron; charge les fichiers &fcrontabf; des utilisateurs (voir
+      <link linkend="fcrontab.5">&fcrontab;(5)</link>) précédemment installés
+      par <command>fcrontab</command> (voir <link
+      linkend="fcrontab.1">&fcrontab;(1)</link>). Ensuite, &fcron; calcule la
+      date et l'heure de la prochaine exécution de chaque tâche, détermine
+      combien de temps il va devoir s'endormir et s'endort pendant cette durée.
+      Lorsqu'il se réveille, il vérifie toutes les tâches chargées et les
+      lancent si nécessaire. Lorsqu'une tâche est exécutée, &fcron; se dédouble
+      (Ndt&nbsp;: fork), modifie ses permissions utilisateur et groupe pour
+      correspondre à celles de l'utilisateur pour lequel la tâche est exécutée,
+      exécute cette tâche et envoie par courriel les sorties à l'utilisateur
+      (ce comportement peut être modifié&nbsp;: voir <link
+      linkend="fcrontab.5">&fcrontab;(5)</link>).
+    </para>
+    <para>Les messages d'informations sur ce qu'est en train de faire &fcron;
+      sont envoyés à <application>syslogd</application>(8) en utilisant ses
+      capacités <emphasis>cron</emphasis>, priorité <emphasis>notice</emphasis>.
+      Les avertissements ou les messages d'erreurs sont respectivement envoyés
+      avec la priorité <emphasis>warning</emphasis> ou <emphasis>error</emphasis>.
+    </para>
+    <para>
+      <note>
+        <para>&fcron; s'endort au moins &firstsleep; secondes après qu'il ait
+          été lancé avant d'exécuter une tâche, pour éviter de consommer trop
+          de ressources pendant le démarrage du système.
+        </para>
+      </note>
+    </para>
+  </refsect1>
+
+  <refsect1>
+    <title>Options</title>
+    <variablelist>
+      <varlistentry>
+        <term><option>-f</option></term>
+        <term><option>--foreground</option></term>
+        <listitem>
+          <para>Ne pas dédoubler en arrière plan. Dans ce mode de
+            fonctionnement, &fcron; enverra les messages d'information sur la
+            sortie d'erreur aussi bien qu'à syslogd.
+          </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>-b</option></term>
+        <term><option>--background</option></term>
+        <listitem>
+         <para>Forcer l'exécution en arrière plan, même si &fcron; a été
+           compilé pour être lancé en avant plan par défaut.
+         </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>-s</option> <replaceable>sec</replaceable></term>
+        <term><option>--savetime</option> <replaceable>sec</replaceable></term>
+        <listitem>
+         <para>Enregistrer les fichiers &fcrontabf; sur disque toutes les
+           <replaceable>sec</replaceable> secondes
+            (la valeur par défaut est 1800).
+          </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>-m</option> <replaceable>n</replaceable></term>
+        <term><option>--maxserial</option> <replaceable>n</replaceable></term>
+        <listitem>
+          <para>Positionner à <replaceable>n</replaceable> le nombre maximum
+            de tâches qui peuvent être exécutées simultanément. La valeur
+            par défaut est &serialmaxrunning;.
+          </para>
+          <para>&voiraussi; option &optserial; de &fcrontab;(5).</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>-q</option> <replaceable>n</replaceable></term>
+        <term><option>--queuelen</option> <replaceable>n</replaceable></term>
+        <listitem>
+          <para>Positionner à <replaceable>n</replaceable> le nombre de tâches
+            que les files d'attente sérialisée (Ndt&nbsp;: serial) et charge
+            système (Ndt&nbsp;: lavg) peuvent contenir.
+          </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>-c</option> <replaceable>fichier</replaceable></term>
+        <term><option>--configfile</option> <replaceable>fichier</replaceable></term>
+        <listitem>
+          <para>Indiquer à &fcron; d'utiliser le fichier de configuration
+            <replaceable>fichier</replaceable> au lieu du fichier de configuration
+            par défaut <filename>&etc;/&fcron.conf.location;</filename>. Pour
+            interagir avec un processus &fcron; en cours d'exécution, &fcrontab;
+            doit utiliser le même fichier de configuration (qui est défini par
+            l'option <option>-c</option> de &fcrontab;). De cette manière,
+            plusieurs processus &fcron; peuvent être exécutés simultanément
+            sur la même machine (mais chaque processus &fcron; *doit* avoir
+            un répertoire de travail (Ndt&nbsp;: spool directory) et un
+            fichier pid différents des autres processus).
+          </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>-o</option></term>
+        <term><option>--once</option></term>
+        <listitem>
+          <para>Exécuter toutes les tâches qui doivent l'être au moment où
+            &fcron; a été lancé, attendre que les tâches s'achèvent et s'arrêter.
+            Positionne <option>firstsleep</option> à 0. Peut être pratique
+            particulièrement lorsqu'elle est utilisée avec les options
+            <option>-y</option> et <option>-f</option> dans un script lançant,
+           par exemple, une connexion par ligne commutée (Ndt&nbsp;: dialup
+            connection).
+          </para>
+          <para>&voiraussi; les options &optvolatile; et &optstdout; de fcrontab.</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>-y</option></term>
+        <term><option>--nosyslog</option></term>
+        <listitem>
+          <para>Ne pas journaliser vers syslog. Peut être utile lors d'une
+            exécution en arrière plan.
+          </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>-l</option> <replaceable>time</replaceable></term>
+        <term><option>--firstsleep</option> <replaceable>time</replaceable></term>
+        <listitem>
+          <para>Définir le délai d'attente initial (en secondes) avant
+            qu'une tâche ne soit exécutée, la valeur par défaut est
+            &firstsleep; secondes.
+          </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>-n</option> <replaceable>rép</replaceable></term>
+        <term><option>--newspooldir</option> <replaceable>rép</replaceable></term>
+        <listitem>
+          <para>Créer <replaceable>rép</replaceable> comme nouveau répertoire
+            de travail (Ndt&nbsp;: spool directory) de &fcron;. Positionner
+            correctement son mode et son propriétaire. Puis, quitter.
+          </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>-h</option></term>
+        <term><option>--help</option></term>
+        <listitem>
+          <para>Afficher une brève description des options.</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>-V</option></term>
+        <term><option>--version</option></term>
+        <listitem>
+          <para>Afficher un message d'information à propos de &fcron;. Cela
+            inclut sa version et la licence sous laquelle il est distribué.
+          </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>-d</option></term>
+        <term><option>--debug</option></term>
+        <listitem>
+          <para>Démarrer en mode débogage (plus de détails sur la sortie
+            d'erreur stderr - si l'option <option>-f</option> est fournie - et
+            dans le fichier de journalisation).</para>
+        </listitem>
+      </varlistentry>
+    </variablelist>
+  </refsect1>
+
+  <refsect1>
+    <title>Valeurs renvoyÉes</title>
+    <para>&Fcron; renvoie &exitok; lorsqu'il quitte normalement, et &exiterr;
+      en cas d'erreur.
+    </para>
+  </refsect1>
+
+  <refsect1>
+    <title>Signaux</title>
+    <variablelist>
+      <varlistentry>
+        <term><constant>SIGTERM</constant></term>
+        <listitem>
+          <para>Enregistrer la configuration (temps restant jusqu'à la prochaine
+            exécution, date et heure de la prochaine exécution, etc), attendre
+            la fin des toutes les tâches en cours d'exécution et quitter.
+          </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><constant>SIGUSR1</constant></term>
+        <listitem>
+          <para>Forcer &fcron; à recharger sa configuration.</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><constant>SIGUSR2</constant></term>
+        <listitem>
+          <para>Faire journaliser à &fcron; sa planification actuelle dans
+            syslog. Il permet également d'activer ou désactiver l'affichage
+            des informations de débogage dans syslog.</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><constant>SIGHUP</constant></term>
+        <listitem>
+          <para>Demander à &fcron; de vérifier si la configuration a été
+            modifiée (ce signal est utilisé par &fcrontab;(5)).
+          </para>
+        </listitem>
+      </varlistentry>
+    </variablelist>
+  </refsect1>
+
+  <refsect1>
+    <title>ConformitÉ</title>
+    <para>Devrait être conforme aux spécifications POSIX.</para>
+  </refsect1>
+
+  <refsect1>
+    <title>Fichiers</title>
+    <variablelist>
+      <varlistentry>
+        <term><filename>&etc;/&fcron.conf.location;</filename></term>
+        <listitem>
+          <para>Fichier de configuration de &fcron;, &fcrontab et &fcrondyn;&nbsp;:
+            contient les chemins (répertoire spool, fichier pid) et les
+            programmes par défaut à utiliser (éditeur, shell, etc.). Voir
+            <link linkend="fcron.conf.5">&fcron.conf(5)</link> pour plus de
+            détails.
+         </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+       <term><filename>&etc;/&fcron.allow;</filename></term>
+       <listitem>
+         <para>Utilisateurs autorisés à utiliser &fcrontab; et &fcrondyn;
+            (un seul nom par ligne, le nom spécial «&nbsp;all&nbsp;»
+           signifiant tout le monde).
+          </para>
+       </listitem>
+      </varlistentry>
+      <varlistentry>
+       <term><filename>&etc;/&fcron.deny;</filename></term>
+       <listitem>
+         <para>Utilisateurs qui ne sont pas autorisés à utiliser &fcrontab;
+            et &fcrondyn; (même format que le fichier précédent).
+          </para>
+       </listitem>
+      </varlistentry>
+      <varlistentry>
+       <term><filename>&etc;/pam.d/fcron</filename> (ou
+         <filename>&etc;/pam.conf</filename>)
+        </term>
+       <listitem>
+         <para>Fichier de configuration <productname>PAM</productname> pour
+            &fcron;. Voir &pam;(8) pour plus de détails.
+          </para>
+       </listitem>
+      </varlistentry>
+    </variablelist>
+  </refsect1>
+
+  &manpage-foot;
+
+  <refsect1>
+    <title>Traduction</title>
+    <para>Ce document est une traduction réalisée par Alain Portal
+      &lt;aportal AT univ-montp2 DOT fr&gt;. le xx novembre 2005
+    </para>
+    <para>L'équipe de traduction a fait le maximum pour réaliser une adaptation
+      française de qualité. La version anglaise la plus à jour de ce document
+      est toujours consultable via la commande&nbsp;: «&nbsp;<emphasis>LANG=en
+      man 8 fcron</emphasis>&nbsp;».
+      N'hésitez pas à signaler à l'auteur ou au traducteur, selon le cas,
+      toute erreur dans cette page de manuel.
+    </para>
+  </refsect1>
+
+</refentry>
+
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-parent-document:("fcron-doc.sgml" "book" "chapter" "sect1" "")
+End:
+-->
\ No newline at end of file
diff --git a/doc/fr/fcron.conf.5.sgml b/doc/fr/fcron.conf.5.sgml
new file mode 100644 (file)
index 0000000..e34707f
--- /dev/null
@@ -0,0 +1,203 @@
+<!-- 
+Fcron documentation
+Copyright 2000-2004 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.
+-->
+
+<!-- $Id: fcron.conf.5.sgml,v 1.1 2006-02-05 19:25:39 thib Exp $ -->
+
+<refentry id="fcron.conf.5">
+  <refmeta>
+    <refentrytitle>fcron.conf</refentrytitle>
+    <manvolnum>5</manvolnum>
+    <refmiscinfo>Fcron &version; <![%devrelease; [
+(<emphasis>development</emphasis> release)]]></refmiscinfo>
+    <refmiscinfo>&date;</refmiscinfo>
+  </refmeta>
+  <refnamediv>
+    <refname>fcron.conf</refname>
+    <refpurpose>Fichier de configuration pour fcron et fcrontab</refpurpose>
+  </refnamediv>
+
+  <refsect1>
+    <title>Description</title>
+    <abstract>
+      <para>Cette page décrit la syntaxe utilisée dans le fichier de
+        configuration de <link linkend="fcrontab.1">&fcrontab;</link>(1),
+        <link linkend="fcrondyn.1">&fcrondyn;</link>(1) et
+        <link linkend="fcron.8">&fcron;</link>(8).
+      </para>
+    </abstract>
+    <para>Les lignes blanches, les lignes débutant par le symbole dièse
+      «&nbsp;#&nbsp;») (qui sont considérées comme étant des commentaires),
+      les espaces ou les tabulations placées en début de ligne sont ignorées.
+      Chaque ligne d'un fichier de configuration &fcron.conf est de la forme
+      <blockquote><para>nom = valeur</para></blockquote> où les espaces autour
+      du signe d'égalité «&nbsp;=&nbsp;» sont ignorés et optionnels.
+      Les espaces en fin de ligne sont également ignorées.
+    </para>
+    <para>Les noms suivants sont reconnus (leur valeur par défaut est
+      entre parenthèses)&nbsp;:
+    </para>
+    <para>
+      <variablelist><title>Variables valides dans un fichier fcron.conf</title>
+       <varlistentry>
+         <term><varname>fcrontabs</varname>=<replaceable>répertoire</replaceable>
+            (<filename>&fcrontabsdir;</filename>)
+          </term>
+         <listitem>
+           <para>Répertoire spool de &fcron;.</para>
+         </listitem>
+       </varlistentry>
+       <varlistentry>
+         <term><varname>pidfile</varname>=<replaceable>chemin-fichier</replaceable>
+            (<filename>&fcron.pid;</filename>)
+          </term>
+         <listitem>
+           <para>Emplacement du fichier pid de &fcron; (nécessaire au bon
+              fonctionnement de &fcrontab;).
+            </para>
+         </listitem>
+       </varlistentry>
+       <varlistentry>
+         <term><varname>fifofile</varname>=<replaceable>chemin-fichier</replaceable>
+            (<filename>&fcron.fifo;</filename>)
+          </term>
+         <listitem>
+           <para>Emplacement du fichier fifo de &fcron; (nécessaire à
+              &fcrondyn; pour communiquer avec fcron).
+            </para>
+         </listitem>
+       </varlistentry>
+       <varlistentry>
+         <term><varname>fcronallow</varname>=<replaceable>chemin-fichier</replaceable>
+            (<filename>&etc;/&fcron.allow;</filename>)
+          </term>
+         <listitem>
+            <para>Emplacement du fichier fcron.allow.</para>
+         </listitem>
+       </varlistentry>
+       <varlistentry>
+         <term><varname>fcrondeny</varname>=<replaceable>chemin-fichier</replaceable>
+            (<filename>&etc;/&fcron.deny;</filename>)
+          </term>
+         <listitem>
+           <para>Emplacement du fichier fcron.deny.</para>
+         </listitem>
+       </varlistentry>
+       <varlistentry>
+         <term><varname>shell</varname>=<replaceable>chemin-fichier</replaceable>
+            (<filename>&shell;</filename>)
+          </term>
+         <listitem>
+           <para>Emplacement du shell par défaut appelé par &fcron; pour le
+              lancement d'une tâche.
+            </para>
+         </listitem>
+       </varlistentry>
+       <varlistentry>
+         <term><varname>sendmail</varname>=<replaceable>chemin-fichier</replaceable>
+            (<filename>&sendmail;</filename>)
+          </term>
+         <listitem>
+           <para>Emplacement du programme d'envoi des courriels appelé par
+              &fcron; pour envoyer les sorties produites par la tâche.
+            </para>
+         </listitem>
+       </varlistentry>
+       <varlistentry>
+         <term><varname>editor</varname>=<replaceable>chemin-fichier</replaceable>
+            (<filename>&editor;</filename>)
+          </term>
+         <listitem>
+           <para>Emplacement de l'éditeur de texte par défaut lors de
+              l'invocation de la commande «&nbsp;fcrontab -e&nbsp;».
+            </para>
+         </listitem>
+       </varlistentry>
+      </variablelist>Tous les chemins fichiers sont complets et absolus
+      (c-à-d débutant par un «&nbsp;/&nbsp;»).
+    </para>
+    <para>Pour exécuter simultanément plusieurs instances de &fcron; sur la
+      même machine, vous devez utiliser un fichier de configuration différent
+      pour chaque instance. Chaque instance doit avoir un
+      <varname>fcrontabs</varname>, <varname>pidfile</varname> et
+      <varname>fifofile</varname> différent. Ensuite, utiliser l'option
+      <parameter>-c</parameter> de la ligne de commande de
+      <link linkend="fcron.8">&fcron;</link>(8) pour indiquer à quel fichier de
+      configuration (ou à quelle instance) se référer.
+    </para>
+  </refsect1>
+
+  <refsect1>
+    <title>Fichiers</title>
+    <variablelist>
+      <varlistentry>
+       <term><filename>&etc;/&fcron.conf.location;</filename></term>
+       <listitem>
+          <para>Fichier de configuration de &fcron;, &fcrontab et &fcrondyn;&nbsp;:
+            contient les chemins (répertoire spool, fichier pid) et les
+            programmes par défaut à utiliser (éditeur, shell, etc.). Voir
+            <link linkend="fcron.conf.5">&fcron.conf</link>(5) pour plus
+            de détails.
+         </para>
+       </listitem>
+      </varlistentry>
+      <varlistentry>
+       <term><filename>&etc;/&fcron.allow;</filename></term>
+       <listitem>
+         <para>Utilisateurs autorisés à utiliser &fcrontab; et &fcrondyn;
+            (un seul nom par ligne, le nom spécial «&nbsp;all&nbsp;» signifiant
+            tout le monde).
+          </para>
+       </listitem>
+      </varlistentry>
+      <varlistentry>
+       <term><filename>&etc;/&fcron.deny;</filename></term>
+       <listitem>
+         <para>Utilisateurs qui ne sont pas autorisés à utiliser
+            &fcrontab; et &fcrondyn; (même format que le fichier précédent).
+          </para>
+       </listitem>
+      </varlistentry>
+      <varlistentry>
+       <term><filename>&etc;/pam.d/fcron</filename> (ou
+          <filename>&etc;/pam.conf</filename>)
+        </term>
+       <listitem>
+         <para>Fichier de configuration <productname>PAM</productname> pour
+            &fcron;. Voir &pam;(8) pour plus de détails.
+          </para>
+       </listitem>
+      </varlistentry>
+    </variablelist>
+  </refsect1>
+
+  &manpage-foot;
+
+  <refsect1>
+    <title>Traduction</title>
+    <para>Ce document est une traduction réalisée par Alain Portal
+      &lt;aportal AT univ-montp2 DOT fr&gt;. le xx novembre 2005
+    </para>
+    <para>L'équipe de traduction a fait le maximum pour réaliser une adaptation
+      française de qualité. La version anglaise la plus à jour de ce document
+      est toujours consultable via la commande&nbsp;: «&nbsp;<emphasis>LANG=en
+      man 5 fcron.conf</emphasis>&nbsp;».
+      N'hésitez pas à signaler à l'auteur ou au traducteur, selon le cas,
+      toute erreur dans cette page de manuel.
+    </para>
+  </refsect1>
+
+</refentry>
+
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-parent-document:("fcron-doc.sgml" "book" "chapter" "sect1" "refentry" "")
+End:
+-->
diff --git a/doc/fr/fcrondyn.1.sgml b/doc/fr/fcrondyn.1.sgml
new file mode 100644 (file)
index 0000000..268d774
--- /dev/null
@@ -0,0 +1,451 @@
+<!-- 
+Fcron documentation
+Copyright 2000-2004 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.
+-->
+
+<!-- $Id: fcrondyn.1.sgml,v 1.1 2006-02-05 19:26:03 thib Exp $ -->
+
+<refentry id="fcrondyn.1">
+  <refmeta>
+    <refentrytitle>fcrondyn</refentrytitle>
+    <manvolnum>1</manvolnum>
+    <refmiscinfo>Fcron &version; <![%devrelease; [
+(<emphasis>development</emphasis> release)]]></refmiscinfo>
+    <refmiscinfo>&date;</refmiscinfo>
+  </refmeta>
+  <refnamediv>
+    <refname>fcrondyn</refname>
+    <refpurpose>Dialoguer dynamiquement avec un démon fcron en cours d'exécution.</refpurpose>
+  </refnamediv>
+
+  <refsynopsisdiv id="fcrondyn.1.synopsis">
+    <cmdsynopsis>
+      <command>fcrondyn</command>
+      <arg>-c <replaceable>fichier</replaceable></arg>
+      <arg>-i</arg>
+    </cmdsynopsis>
+    <cmdsynopsis>
+      <command>fcrondyn</command>
+      <arg>-c <replaceable>fichier</replaceable></arg>
+      <arg choice="plain">-x <replaceable>commande</replaceable></arg>
+    </cmdsynopsis>
+    <cmdsynopsis>
+      <command>fcrondyn</command>
+      <arg>-h</arg>
+    </cmdsynopsis>
+  </refsynopsisdiv>
+
+  <refsect1>
+    <title>Description</title>
+    <para>&Fcrondyn; est un outil utilisateur conçu pour interagir avec un
+      démon fcron en cours d'exécution. Il peut, par exemple, afficher les
+      tâches utilisateur chargées par &fcron;, lancer l'une d'elles, modifier
+      la «&nbsp;gentillesse&nbsp;» (Ndt&nbsp;: nice) d'une tâche en cours
+      d'exécution, envoyer un signal à une tâche, etc.
+    </para>
+  </refsect1>
+
+  <refsect1>
+    <title>Options</title>
+    <variablelist>
+      <varlistentry>
+       <term><option>-i</option></term>
+       <listitem>
+         <para>Lancer &fcrondyn; en mode interactif. &fcrondyn; est également
+            lancée en mode interactif lorsqu'aucune option n'est fournie.
+          </para>
+       </listitem>
+      </varlistentry>
+      <varlistentry>
+       <term><option>-x </option><replaceable>commande</replaceable></term>
+       <listitem>
+         <para>Lancer la <replaceable>commande</replaceable> et revenir
+            immédiatemment. <link linkend="fcrondyn.1.cmd.descp">Voir plus
+            loin</link> pour la syntaxe et la liste des commandes.
+          </para>
+       </listitem>
+      </varlistentry>
+      <varlistentry>
+       <term><option>-c</option> <replaceable>fichier</replaceable></term>
+       <listitem>
+         <para>Forcer &fcrondyn; à utiliser le fichier de configuration
+          <replaceable>fichier</replaceable> à la place du fichier de
+          configuration par défaut
+          <filename>&etc;/&fcron.conf.location;</filename>. Pour interagir
+          avec un processus &fcron; existant, &fcrondyn; doit utiliser le
+          même fichier de configuration que le processus. De cette manière,
+          plusieurs processus &fcron; peuvent être exécutés simultanément
+          sur un même système.
+        </para>
+       </listitem>
+      </varlistentry>
+      <varlistentry>
+       <term><option>-d</option></term>
+       <listitem>
+          <para>Démarrer en mode débogage. Dans ce mode, beaucoup de messages
+            d'informations seront produits en sortie afin de vérifier que
+            tout se passe bien.
+          </para>
+       </listitem>
+      </varlistentry>
+      <varlistentry>
+       <term><option>-h</option></term>
+       <listitem>
+          <para>Afficher une brève description des options.</para>
+       </listitem>
+      </varlistentry>
+      <varlistentry>
+       <term><option>-V</option></term>
+       <listitem>
+          <para>Afficher un message d'information à propos de &fcrondyn;
+            qui inclut sa version et la licence sous laquelle il est
+            distribué.
+          </para>
+       </listitem>
+      </varlistentry>
+    </variablelist>
+  </refsect1>
+
+  <refsect1 id="fcrondyn.1.cmd.descp">
+    <title>Description de la commande</title>
+    <para>La syntaxe de la commande &fcrondyn; est la suivante&nbsp;:</para>
+    <blockquote>
+      <para><command>commande</command> <replaceable>arg1</replaceable>
+        <replaceable>arg2</replaceable> [...]
+      </para>
+    </blockquote>
+    <para>Un argument de la commande &fcrondyn; est d'un des types
+      suivants&nbsp;:
+    </para>
+    <variablelist>
+      <title>Types d'argument des commandes &fcrondyn;</title>
+      <varlistentry>
+       <term><emphasis><type>utilisateur</type></emphasis></term>
+       <listitem>
+         <para>Un nom valide d'utilisateur.</para>
+       </listitem>
+      </varlistentry>
+      <varlistentry>
+       <term><emphasis><type>jobid</type></emphasis></term>
+       <listitem>
+         <para>Un identifiant de tâche fourni par une des commandes
+            <command>ls*</command> de &fcrondyn; (c.-à-d. un entier).</para>
+       </listitem>
+      </varlistentry>
+      <varlistentry>
+       <term><emphasis><type>sig</type></emphasis></term>
+       <listitem>
+          <para>Un numéro de signal, ou son nom. Par exemple,
+            «&nbsp;term&nbsp;» ou «&nbsp;15 &nbsp;».
+          </para>
+       </listitem>
+      </varlistentry>
+      <varlistentry>
+       <term><emphasis><type>gentillesse</type></emphasis></term>
+       <listitem>
+         <para>Une valeur de priorité de tâche. Une
+            <emphasis><type>gentillesse</type></emphasis> est un entier compris
+            entre -20 (plus forte priorité) et 19 (plus faible priorité).
+            Seul le super-utilisateur peut utiliser une valeur négative pour
+            cette option.
+          </para>
+       </listitem>
+      </varlistentry>
+    </variablelist>
+    <para>Enfin et surtout, les commandes suivantes sont reconnues (les
+      arguments optionnels sont entre [])&nbsp;:</para>
+    <variablelist>
+      <title>Commandes &fcrondyn; valides</title>
+      <varlistentry>
+       <term><command>help</command></term>
+       <term><command>h</command></term>
+       <listitem>
+         <para>Afficher un message d'aide sur les commandes fcrondyn.</para>
+       </listitem>
+      </varlistentry>
+      <varlistentry>
+       <term><command>quit</command></term>
+       <term><command>q</command></term>
+       <listitem>
+         <para>En mode interactif, quitter fcrondyn.</para>
+       </listitem>
+      </varlistentry>
+      <varlistentry>
+       <term><command>ls</command>
+[<emphasis><type>utilisateur</type></emphasis>]</term>
+       <listitem>
+         <para>Afficher toutes les tâches de l'utilisateur. Lorsque
+            <command>ls</command> est lancée par le super-utilisateur, tous
+            les utilisateurs sont affichés à moins qu'un utilisateur n'ait été
+            fourni en argument. <link
+            linkend="fcrondyn.1.ls.fields">Voir plus loin</link> pour plus
+            d'explications à propos des champs utilisés par les commandes
+            <command>ls*</command>.
+          </para>
+       </listitem>
+      </varlistentry>
+      <varlistentry>
+       <term><command>ls_lavgq</command>
+[<emphasis><type>utilisateur</type></emphasis>]</term>
+       <listitem>
+         <para>Identique à <command>ls</command>, mais afficher seulement
+            les tâches qui sont dans la file d'attente«&nbsp;charge
+            système&nbsp;» (Ndt&nbsp;: load-average queue) (c.-à-d. celles qui
+            attendent une charge système plus faible pour pouvoir être
+            lancées).
+          </para>
+       </listitem>
+      </varlistentry>
+      <varlistentry>
+       <term><command>ls_serialq</command>
+[<emphasis><type>utilisateur</type></emphasis>]</term>
+       <listitem>
+          <para>Identique à <command>ls</command>, mais afficher seulement
+            les tâches qui sont dans la file d'attente sérialisée (Ndt&nbsp;:
+            serial queue) (c.-à-d. celles qui attendent que d'autres tâches
+            soient achevées).
+          </para>
+       </listitem>
+      </varlistentry>
+      <varlistentry>
+       <term><command>ls_exeq</command>
+[<emphasis><type>utilisateur</type></emphasis>]</term>
+       <listitem>
+          <para>Identique à <command>ls</command>, mais afficher seulement
+            les tâches en cours d'exécution.
+          </para>
+       </listitem>
+      </varlistentry>
+      <varlistentry>
+       <term><command>detail</command>
+          <emphasis><type>jobid</type></emphasis></term>
+       <listitem>
+         <para>Afficher les détails d'une tâche.
+            <emphasis><type>jobid</type></emphasis> est la valeur fournie par
+            <command>ls</command>.
+          </para>
+       </listitem>
+      </varlistentry>
+      <varlistentry>
+       <term><command>runnow</command>
+          <emphasis><type>jobid</type></emphasis></term>
+       <listitem>
+         <para>Plutôt que d'attendre la date et heure de la prochaine
+            exécution planifiée, lancer la tâche maintenant. La date et heure
+            de la prochaine exécution sont modifiées comme si la tâche avait
+            été lancée par l'ordonnanceur.
+          </para>
+       </listitem>
+      </varlistentry>
+      <varlistentry>
+       <term><command>run</command>
+<emphasis><type>jobid</type></emphasis></term>
+       <listitem>
+         <para>Lancer la tâche maintenant. Ses date et heure de prochaine
+            exécution ne sont pas modifiées.
+          </para>
+       </listitem>
+      </varlistentry>
+      <varlistentry>
+       <term><command>kill</command>
+          <emphasis><type>sig</type></emphasis>
+          <emphasis><type>jobid</type></emphasis></term>
+       <listitem>
+         <para>Envoyer un signal à une tâche en cours d'exécution.</para>
+       </listitem>
+      </varlistentry>
+      <varlistentry>
+       <term><command>renice</command>
+<emphasis><type>gentillesse</type></emphasis>
+<emphasis><type>jobid</type></emphasis></term>
+       <listitem>
+          <para>Modifier la priorité d'une tâche en cours d'exécution.</para>
+       </listitem>
+      </varlistentry>
+    </variablelist>
+    <variablelist id="fcrondyn.1.ls.fields">
+      <title>Champs utilisés par les commandes <command>detail</command>
+        et <command>ls*</command></title>
+      <varlistentry>
+       <term>ID</term>
+       <listitem>
+         <para>Numéro d'identification unique de la tâche.</para>
+       </listitem>
+      </varlistentry>
+      <varlistentry>
+       <term>USER</term>
+       <listitem>
+         <para>Utilisateur auquel appartient la tâche.</para>
+       </listitem>
+      </varlistentry>
+      <varlistentry>
+       <term>PID</term>
+       <listitem>
+          <para>Le pid de la tâche en cours d'exécution.</para>
+       </listitem>
+      </varlistentry>
+      <varlistentry>
+       <term>INDEX</term>
+       <listitem>
+         <para>Index de la tâche dans la file d'attente séquentielle (c.-à-d.
+            qu'elle sera lancée lorsque toutes les tâches dont l'index a une
+            valeur plus petite auront été lancées).
+          </para>
+       </listitem>
+      </varlistentry>
+      <varlistentry>
+       <term>R&amp;Q</term>
+       <listitem>
+         <para>Indique le nombre d'instances de la tâche en cours ou en
+            attente d'exécution dans la file d'attente «&nbsp;série&nbsp;»
+            (Ndt&nbsp;:serial queue) ou dans la file d'attente «&nbsp;charge
+            système&nbsp;» (Ndt&nbsp;:lavg queue).
+          </para>
+       </listitem>
+      </varlistentry>
+      <varlistentry>
+       <term>OPTIONS</term>
+       <listitem>
+          <para>Indique les principales options positionnées de la tâche.
+            L pour les tâches ne s'exécutant qu'en dessous d'une charge système
+            donnée (Ndt&nbsp;: L pour Load average), LO si une seule instance
+            de la tâche peut se trouver dans dans la file d'attente
+            «&nbsp;charge système&nbsp;» (Ndt&nbsp;: LO pour Lavg Once), S pour
+            les tâches s'exécutant séquentiellement (Ndt&nbsp;:S pour Serial),
+            SO pour les tâches qui ne seront exécutées séquentiellement que
+            pour leur prochaine exécution (Ndt&nbsp;: SO pour Serial Once), et
+            ES pour les tâches dont plusieurs instances peuvent s'exécuter
+            simultanément (Ndt&nbsp;: ES pour «&nbsp;allow the Execution of
+            Several instances&nbsp;»).
+          </para>
+       </listitem>
+      </varlistentry>
+      <varlistentry>
+       <term>LAVG</term>
+       <listitem>
+          <para>Trois valeurs correspondant à la charge système moyennée sur
+            1, 5 et 15 minutes (dans cet ordre) en dessous de laquelle la
+            tâche sera exécutée, sinon elle sera placée en attente d'une
+            charge système adéquate (voir l'option &optlavg;).
+          </para>
+       </listitem>
+      </varlistentry>
+      <varlistentry>
+       <term>UNTIL</term>
+       <listitem>
+         <para>Champ correspondant à l'option &optuntil;.</para>
+       </listitem>
+      </varlistentry>
+      <varlistentry>
+       <term>STRICT</term>
+       <listitem>
+          <para>Champ correspondant à l'option &optstrict;. Y pour yes,
+            N pour non.</para>
+       </listitem>
+      </varlistentry>
+      <varlistentry>
+       <term>SCHEDULE</term>
+       <listitem>
+          <para>Indique la date et l'heure prévues de la prochaine exécution
+           de la tâche. Veuillez noter que l'heure indiquée est celle du
+           système sur lequel tourne &fcron;, et non celle du fuseau horaire
+           que l'utilisateur peut éventuellement définir avec l'option
+           &opttimezone; de &fcrontab;).
+         </para>
+       </listitem>
+      </varlistentry>
+      <varlistentry>
+       <term>CMD</term>
+       <listitem>
+         <para>La commande à exécuter.</para>
+       </listitem>
+      </varlistentry>
+    </variablelist>
+  </refsect1>
+
+  <refsect1>
+    <title>Valeurs renvoyÉes</title>
+    <para>&Fcrondyn; renvoie &exitok; lorsqu'il quitte normalement, et
+      &exiterr; en cas d'erreur.
+    </para>
+  </refsect1>
+
+  <refsect1>
+    <title>ConformitÉ</title>
+    <para>Devrait être conforme aux spécifications POSIX.</para>
+  </refsect1>
+
+  <refsect1 id="fcrondyn.1.files">
+    <title>Fichiers</title>
+    <variablelist>
+      <varlistentry>
+       <term><filename>&etc;/&fcron.conf.location;</filename></term>
+       <listitem>
+          <para>Fichier de configuration de &fcron;, &fcrontab et &fcrondyn;&nbsp;:
+            contient les chemins (répertoire spool, fichier pid) et les
+            programmes par défaut à utiliser (éditeur, shell, etc.). Voir
+            <link linkend="fcron.conf.5">&fcron.conf(5)</link> pour plus de
+            détails.
+          </para>
+       </listitem>
+      </varlistentry>
+      <varlistentry>
+       <term><filename>&etc;/&fcron.allow;</filename></term>
+       <listitem>
+          <para>Utilisateurs autorisés à utiliser &fcrontab; et &fcrondyn;
+            (un seul nom par ligne, le nom spécial «&nbsp;all&nbsp;»
+            signifiant tout le monde).
+          </para>
+       </listitem>
+      </varlistentry>
+      <varlistentry>
+       <term><filename>&etc;/&fcron.deny;</filename></term>
+       <listitem>
+          <para>Utilisateurs qui ne sont pas autorisés à utiliser &fcrontab;
+            et &fcrondyn; (même format que le fichier précédent).
+          </para>
+       </listitem>
+      </varlistentry>
+      <varlistentry>
+       <term><filename>&etc;/pam.d/fcron</filename> (ou
+          <filename>&etc;/pam.conf</filename>)
+        </term>
+       <listitem>
+          <para>Fichier de configuration <productname>PAM</productname> pour
+            &fcron;. Voir &pam;(8) pour plus de détails.
+          </para>
+       </listitem>
+      </varlistentry>
+    </variablelist>
+  </refsect1>
+
+  &manpage-foot;
+
+  <refsect1>
+    <title>Traduction</title>
+    <para>Ce document est une traduction réalisée par Alain Portal
+      &lt;aportal AT univ-montp2 DOT fr&gt;. le xx novembre 2005
+    </para>
+    <para>L'équipe de traduction a fait le maximum pour réaliser une adaptation
+      française de qualité. La version anglaise la plus à jour de ce document
+      est toujours consultable via la commande&nbsp;: «&nbsp;<emphasis>LANG=en
+      man 1 fcrondyn</emphasis>&nbsp;».
+      N'hésitez pas à signaler à l'auteur ou au traducteur, selon le cas,
+      toute erreur dans cette page de manuel.
+    </para>
+  </refsect1>
+
+</refentry>
+
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-parent-document:("fcron-doc.sgml" "book" "chapter" "sect1" "")
+End:
+-->
+
diff --git a/doc/fr/fcrontab.1.sgml b/doc/fr/fcrontab.1.sgml
new file mode 100644 (file)
index 0000000..1831314
--- /dev/null
@@ -0,0 +1,296 @@
+<!-- 
+Fcron documentation
+Copyright 2000-2004 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.
+-->
+
+<!-- $Id: fcrontab.1.sgml,v 1.1 2006-02-05 19:26:19 thib Exp $ -->
+
+  <refentry id="fcrontab.1">
+    <refmeta>
+      <refentrytitle>fcrontab</refentrytitle> <manvolnum>1</manvolnum>
+      <refmiscinfo>Fcron &version; <![%devrelease; [
+      (<emphasis>development</emphasis> release)]]></refmiscinfo>
+      <refmiscinfo>&date;</refmiscinfo>
+    </refmeta>
+    <refnamediv>
+      <refname>fcrontab</refname>
+      <refpurpose>Manipuler les fichiers fcrontab utilisateur</refpurpose>
+    </refnamediv>
+
+    <refsynopsisdiv id="fcrontab.1.synopsis">
+      <cmdsynopsis>
+       <command>fcrontab</command>
+       <arg>-c <replaceable>fichier</replaceable></arg>
+       <arg>-n</arg> <arg choice="plain"><replaceable>fichier</replaceable></arg>
+       <group>
+         <arg><replaceable>utilisateur</replaceable></arg>
+         <arg>-u <replaceable>utilisateur</replaceable></arg>
+       </group>
+      </cmdsynopsis>
+      <cmdsynopsis>
+       <command>fcrontab</command>
+       <arg>-c <replaceable>fichier</replaceable></arg>
+       <arg>-n</arg>
+       <group choice="req">
+         <arg>-l</arg> <arg>-r</arg> <arg>-e</arg> <arg>-z</arg>
+       </group>
+       <group>
+         <arg><replaceable>utilisateur</replaceable></arg>
+         <arg>-u <replaceable>utilisateur</replaceable></arg>
+       </group>
+      </cmdsynopsis>
+      <cmdsynopsis>
+       <command>fcrontab</command> <arg>-h</arg>
+      </cmdsynopsis>
+    </refsynopsisdiv>
+
+    <refsect1>
+      <title>Description</title>
+      <para>&Fcrontab; est le programme conçu pour installer, éditer, afficher
+        et supprimer les tables utilisées par le démon <link
+        linkend="fcron.8">&fcron;(8)</link>. Comme &fcron; utilise un format
+        non humainement lisible (ceci est nécessaire car &fcron; enregistre
+        beaucoup d'informations fournies par l'utilisateur, par exemple la
+        date et l'heure de la prochaine exécution), l'utilisateur ne peut pas
+        éditer directement son fichier &fcrontabf; (celui utilisé par &fcron;).
+      </para>
+      <para>Lorsqu'un utilisateur installe un &fcrontabf;, le fichier source
+        est enregistré dans le répertoire de travail (Ndt&nbsp;: spool
+        directory) (<filename>&fcrontabsdir;</filename>)
+        pour permettre des éditions ultérieures, un fichier formaté est généré
+        par le démon &fcron;, qui est averti dix secondes avant la minute
+        suivante de toutes les modifications effectuées précédemment. Le démon
+        &fcron; ne reçoit pas immédiatement le signal lui annonçant qu'un
+        fichier &fcrontab; a été modifié, mais en reçoit au plus un par minute,
+        de façon à éviter que des utilisateurs mal intentionnés ne gènent le
+        fonctionnement de &fcron; en faisant des modifications incessantes
+        d'un fichier &fcrontab; (c.-à-d. attaque en déni de service).
+        Nous appellerons, dans la suite du document,
+        «&nbsp;<emphasis>fcrontab</emphasis>&nbsp;» le fichier source des
+        tables &fcrontabf;.</para>
+      <para>Un utilisateur peut installer un &fcrontabf; si son nom est
+        enregistré dans le fichier <filename>&etc;/&fcron.allow;</filename> et
+        pas dans le fichier <filename>&etc;/&fcron.deny;</filename> (à moins
+        qu'il n'y ait le mot clé «&nbsp;all&nbsp;»). Voir la section
+        «&nbsp;<link linkend="fcrontab.1.files">FICHIERS</link>&nbsp;» plus
+        loin. Si aucun des fichiers <filename>fcron.allow</filename> ou
+        <filename>fcron.deny</filename> n'existe, tous les utilisateurs sont
+        autorisés. Il n'est pas nécessaire que ces deux fichiers existent,
+        mais s'ils existent, le fichier <filename>fcron.deny</filename> est
+        prioritaire.
+      </para>
+      <para>La première forme de la commande est utilisée pour installer un
+        nouveau fichier &fcrontabf;, à partir d'un nom de fichier ou de
+        l'entrée standard si le pseudo nom de fichier «&nbsp;-&nbsp;» est
+        fourni sur la ligne de commande, remplaçant le fichier précédent (s'il
+        existait)&nbsp;: chaque utilisateur ne peut avoir qu'un seul fichier
+        &fcrontabf;.
+      </para>
+      <para>Par exemple, le super-utilisateur peut créer un fichier fcrontab
+        pour le système, disons <filename>/etc/fcrontab</filename>, et lancer
+        «&nbsp;<command>fcrontab</command> <filename>/etc/fcrontab</filename>&nbsp;»
+        pour installer la nouvelle version après chaque modification du
+        fichier. Ou bien, il peut créer un nouveau fichier fcrontab en lançant
+        simplement «&nbsp;<command>fcrontab</command>&nbsp;», et le maintenir
+        par la suite en lançant «&nbsp;<command>fcrontab</command>
+        <option>-e</option>&nbsp;». Les mêmes considérations s'appliquent à un
+        utilisateur normal.
+      </para>
+    </refsect1>
+
+    <refsect1>
+      <title>Options</title>
+      <variablelist>
+       <varlistentry>
+         <term><option>-u</option> <replaceable>utilisateur</replaceable></term>
+         <listitem>
+           <para>Spécifier l'utilisateur dont le &fcrontabf; sera géré, ou
+              «&nbsp;&sysfcrontab;&nbsp;» pour le fcrontab système. Ne peut
+              être utilisée que par le super-utilisateur. S'il n'est pas
+              fourni, le fichier &fcrontabf; de l'utilisateur qui a invoqué
+              &fcrontab; sera traité. Cela peut être pratique puisque la
+              commande <application>su</application>(8) peut tromper &fcrontab;.
+              <note>
+                <para>l'«&nbsp;<replaceable>utilisateur</replaceable>&nbsp;»
+                  dans le <link linkend="fcrontab.1.synopsis">synopsys</link>
+                  est équivalent à «&nbsp;<option>-u</option>
+                  <replaceable>utilisateur</replaceable>&nbsp;».
+                </para>
+              </note>
+            </para>
+         </listitem>
+       </varlistentry>
+       <varlistentry>
+         <term><option>-l</option></term>
+         <listitem>
+           <para>Afficher sur la sortie standard le &fcrontabf; actuel de
+              l'utilisateur.
+            </para>
+         </listitem>
+       </varlistentry>
+       <varlistentry>
+         <term><option>-e</option></term>
+         <listitem>
+            <para>Éditer le &fcrontabf; actuel de l'utilisateur en utilisant
+              l'éditeur spécifié soit par la variable d'environnement
+              <envar>VISUAL</envar>,  soit par la variable d'environnement
+              <envar>EDITOR</envar> si <envar>VISUAL</envar> n'est pas
+              positionnée. Si aucune des deux n'est positionnée,
+              <command>&editor;</command> sera utilisée.
+            </para>
+         </listitem>
+       </varlistentry>
+       <varlistentry>
+         <term><option>-r</option></term>
+         <listitem>
+           <para>Effacer le &fcrontabf; de l'utilisateur.</para>
+         </listitem>
+       </varlistentry>
+       <varlistentry>
+         <term><option>-z</option></term>
+         <listitem>
+            <para>Réinstaller le &fcrontabf; de l'utilisateur à partir de son
+              code source. Toutes les informations que &fcron; aurait pu
+              conserver dans le &fcrontabf; binaire (comme l'heure et la date
+              de la prochaine exécution) seront perdues.
+            </para>
+         </listitem>
+       </varlistentry>
+       <varlistentry>
+         <term><option>-n</option></term>
+         <listitem>
+           <para>Ignorer la version précédente. Si cette option n'est pas
+              fournie, &fcron; essayera de conserver le plus d'informations
+              possibles entre l'ancienne et la nouvelle version du &fcrontabf;
+              (date et heure de la prochaine exécution, la tâche est-elle dans
+              une file série, etc.) si la ligne n'a pas été modifiée (mêmes
+              champs, même commande shell).
+            </para>
+         </listitem>
+       </varlistentry>
+       <varlistentry>
+         <term><option>-c</option> <replaceable>fichier</replaceable></term>
+         <listitem>
+           <para>Forcer &fcrontab; à utiliser le fichier de configuration
+              <replaceable>fichier</replaceable> à la place du fichier de
+              configuration par défaut
+              <filename>&etc;/&fcron.conf.location;</filename>. Pour interagir
+              avec un processus &fcron; existant, &fcrontab; doit utiliser le
+              même fichier de configuration que le processus. De cette manière,
+              plusieurs processus &fcron; peuvent être exécutés simultanément
+              sur un même système.
+            </para>
+         </listitem>
+       </varlistentry>
+       <varlistentry>
+         <term><option>-d</option></term>
+         <listitem>
+           <para>Démarrer en mode débogage. Dans ce mode, beaucoup de messages
+              d'informations seront produits en sortie afin de vérifier que
+              tout se passe bien.
+            </para>
+         </listitem>
+       </varlistentry>
+       <varlistentry>
+         <term><option>-h</option></term>
+         <listitem>
+           <para>Afficher une brève description des options.</para>
+         </listitem>
+       </varlistentry>
+       <varlistentry>
+         <term><option>-V</option></term>
+         <listitem>
+            <para>Afficher un message d'information à propos de &fcrontab;.
+              Cela inclut sa version et la licence sous laquelle il est
+              distribué.
+            </para>
+         </listitem>
+       </varlistentry>
+      </variablelist>
+    </refsect1>
+
+    <refsect1>
+      <title>Valeurs renvoyÉes</title>
+      <para>&Fcrontab; renvoie &exitok; lorsqu'il quitte normalement, et
+        &exiterr; en cas d'erreur.
+      </para>
+    </refsect1>
+
+    <refsect1>
+      <title>ConformitÉ</title>
+      <para>Devrait être conforme aux spécifications POSIX.</para>
+    </refsect1>
+
+    <refsect1 id="fcrontab.1.files">
+      <title>Fichiers</title>
+      <variablelist>
+       <varlistentry>
+         <term><filename>&etc;/&fcron.conf.location;</filename></term>
+         <listitem>
+            <para>Fichier de configuration de &fcron;, &fcrontab et &fcrondyn;&nbsp;:
+              contient les chemins (répertoire spool, fichier pid) et les
+              programmes par défaut à utiliser (éditeur, shell, etc.). Voir
+              <link linkend="fcron.conf.5">&fcron.conf(5)</link> pour plus de
+              détails.
+            </para>
+         </listitem>
+       </varlistentry>
+       <varlistentry>
+         <term><filename>&etc;/&fcron.allow;</filename></term>
+         <listitem>
+            <para>Utilisateurs autorisés à utiliser &fcrontab; et &fcrondyn;
+              (un seul nom par ligne, le nom spécial «&nbsp;all&nbsp;»
+              signifiant tout le monde).
+            </para>
+         </listitem>
+       </varlistentry>
+       <varlistentry>
+         <term><filename>&etc;/&fcron.deny;</filename></term>
+         <listitem>
+            <para>Utilisateurs autorisés à utiliser &fcrontab; et &fcrondyn;
+              (un seul nom par ligne, le nom spécial «&nbsp;all&nbsp;»
+              signifiant tout le monde).
+            </para>
+         </listitem>
+       </varlistentry>
+       <varlistentry>
+         <term><filename>&etc;/pam.d/fcron</filename> (or
+           <filename>&etc;/pam.conf</filename>)</term>
+         <listitem>
+            <para>Fichier de configuration <productname>PAM</productname> pour
+              &fcron;. Voir &pam;(8) pour plus de détails.
+            </para>
+         </listitem>
+       </varlistentry>
+      </variablelist>
+    </refsect1>
+
+    &manpage-foot;
+
+    <refsect1>
+      <title>Traduction</title>
+      <para>Ce document est une traduction réalisée par Alain Portal
+        &lt;aportal AT univ-montp2 DOT fr&gt;. le xx novembre 2005
+      </para>
+      <para>L'équipe de traduction a fait le maximum pour réaliser une adaptation
+        française de qualité. La version anglaise la plus à jour de ce document
+        est toujours consultable via la commande&nbsp;: «&nbsp;<emphasis>LANG=en
+        man 1 fcrontab</emphasis>&nbsp;».
+        N'hésitez pas à signaler à l'auteur ou au traducteur, selon le cas,
+        toute erreur dans cette page de manuel.
+      </para>
+    </refsect1>
+
+  </refentry>
+
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-parent-document:("fcron-doc.sgml" "book" "chapter" "sect1" "")
+End:
+-->
diff --git a/doc/fr/fcrontab.5.sgml b/doc/fr/fcrontab.5.sgml
new file mode 100644 (file)
index 0000000..53e77dc
--- /dev/null
@@ -0,0 +1,1092 @@
+<!--
+Fcron documentation
+Copyright 2000-2004 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.
+-->
+
+<!-- $Id: fcrontab.5.sgml,v 1.1 2006-02-05 19:26:31 thib Exp $ -->
+
+<refentry id="fcrontab.5">
+  <refmeta>
+    <refentrytitle>fcrontab</refentrytitle>
+    <manvolnum>5</manvolnum>
+    <refmiscinfo>Fcron &version; <![%devrelease; [
+(<emphasis>development</emphasis> release)]]></refmiscinfo>
+<refmiscinfo>&date;</refmiscinfo>
+  </refmeta>
+  <refnamediv>
+    <refname>fcrontab</refname>
+    <refpurpose>Tables de configuration de fcron</refpurpose>
+  </refnamediv>
+
+  <refsect1>
+    <title>Description</title>
+    <para>Un fichier &fcrontabf; est un fichier qui contient toutes les tables
+      utilisées par le démon &fcron;(8). Cela permet à un utilisateur de dire
+      au démon&nbsp;: «&nbsp;Exécute cette tâche à tel moment&nbsp;». Chaque
+      utilisateur a sa propre table &fcrontabf;, et les commandes contenues
+      dans une table seront exécutées sous l'identifiant du propriétaire de la
+      table. Seul le super-utilisateur peut lancer une tâche avec les droits
+      d'un autre utilisateur en utilisant l'option &optrunas; (voir plus loin).
+    </para>
+    <para>Les lignes blanches, les lignes débutant par le symbole dièse
+      «&nbsp;#&nbsp;» (qui sont considérées comme étant des commentaires),
+      les espaces ou les tabulations placées en début de ligne sont ignorées.
+      Chaque ligne d'un fichier &fcrontabf; peut être soit &nbsp;:
+    </para>
+    <itemizedlist>
+      <listitem>
+       <para>une configuration d'environnement,</para>
+      </listitem>
+      <listitem>
+        <para>une configuration d'option,</para>
+      </listitem>
+      <listitem>
+       <para>des entrées basées sur la durée totale de fonctionnement du
+         système depuis la dernière exécution de la tâche,</para>
+      </listitem>
+      <listitem>
+        <para>des entrées basées sur un temps absolu (comme les entrées
+          normales de crontab), ou</para>
+      </listitem>
+      <listitem>
+        <para>des entrées lancées périodiquement.</para>
+      </listitem>
+    </itemizedlist>
+    <para>Toute ligne logique (une entrée ou une affectation) peut être scindée
+      en plusieurs lignes effectives (des lignes finissant par un caractère
+      fin de ligne) en plaçant une barre oblique inverse «&nbsp;\&nbsp;» avant
+      le caractère fin de ligne «&nbsp;\n&nbsp;».
+    </para>
+
+    <refsect2>
+      <title>La configuration de l'environnement</title>
+      <para>La configuration de l'environnement est de la forme</para>
+      <blockquote>
+       <para>nom = valeur</para>
+      </blockquote>
+      <para> où les espaces autour du signe d'égalité «&nbsp;=&nbsp;» sont
+        ignorées et optionnelles. Les espaces en fin de ligne sont également
+        ignorées, mais vous pouvez placer la valeur entre guillemets (simple
+        ou double, mais appareillés) pour préserver les caractères blancs dans
+        la valeur.
+      </para>
+      <para>Lorsque &fcron; exécute une commande, il positionne toujours les
+        variables d'environnement
+        <envar>USER</envar>, <envar>HOME</envar>, et <envar>SHELL</envar>
+        comme elles sont définies dans <filename>/etc/passwd</filename> pour
+        le propriétaire de la table &fcrontabf; dont la commande est issue.
+        Les variables d'environnement <envar>HOME</envar> et
+        <envar>SHELL</envar> peuvent être écrasées par la configuration
+        contenue dans le fichier &fcrontabf;, mais <envar>USER</envar> ne
+        peut pas l'être. Toute autre affectation d'environnement définie dans
+        le &fcrontabf; de l'utilisateur est effectuée et la commande exécutée.
+      </para>
+      <para>De plus, la variable spéciale <varname>MAILTO</varname> vous permet
+        d'indiquer à &fcron; à qui envoyer par courriel la sortie de la
+        commande. Veuillez noter que <varname>MAILTO</varname> est en fait
+        équivalente à la déclaration globale de l'option &optmailto; (voir
+        plus loin). Elle n'est utilisée que pour assurer une
+        rétrocompatibilité, aussi, vous devriez plutôt utiliser directement
+        l'option &optmailto;.
+      </para>
+    </refsect2>
+
+    <refsect2 id="uptent">
+      <title>EntrÉes basÉes sur le temps ÉcoulÉ depuis le démarrage du systÉme
+      </title>
+      <para>Les entrées des commandes qui doivent être exécutées une fois
+        toutes les m minutes de l'exécution de &fcron; (qui sont normalement
+        les mêmes m minutes de l'exécution du système) sont de la forme
+      </para>
+      <programlisting>@options fréquence commande</programlisting>
+      <para>où fréquence est une valeur de temps de la forme
+        valeur*multiplicateur+valeur*multiplicateur+...+valeur-en-minutes
+        comme "12h02" ou "3w2d5h1". La première signifie "12 heures et 2
+        minutes d'exécution de fcron" tant dis que la seconde signifie
+        "3 semaines, 2 jours, 5 heures et 1 minute d'exécution de fcron". Les
+        multiplicateurs valides sont&nbsp;:
+      </para>
+      <table>
+        <title>Multiplicateurs de temps valides</title>
+       <tgroup cols="2">
+         <thead>
+           <row>
+              <entry>signification&nbsp;: </entry>
+              <entry>multiplicateurs&nbsp;:      </entry>
+           </row>
+         </thead>
+         <tbody>
+           <row>
+              <entry>mois (4 semaines)&nbsp;: </entry>
+             <entry>m      </entry>
+           </row>
+           <row>
+              <entry>semaines (7 jours)&nbsp;: </entry>
+             <entry>w      </entry>
+           </row>
+           <row>
+              <entry>jours (24 heures)&nbsp;: </entry>
+             <entry>d      </entry>
+           </row>
+           <row>
+              <entry>heures (60 minutes)&nbsp;: </entry>
+             <entry>h  </entry>
+           </row>
+           <row>
+              <entry>secondes&nbsp;: </entry>
+             <entry>s  </entry>
+           </row>
+         </tbody>
+       </tgroup>
+      </table>
+
+      <para>À la place de <replaceable>options</replaceable>, l'utilisateur
+        peut mettre une valeur de temps qui sera interprétée comme
+        <token>@first(<replaceable>temps</replaceable>)</token>. Si l'option
+        &optfirst; n'est pas positionnée, la valeur de
+        «&nbsp;<varname>fréquence</varname>&nbsp;» est utilisée.
+      </para>
+      <para>Ce type d'entrée ne garantie pas une date et heure d'exécution (vu
+        que la tâche est retardée à chaque démarrage du système par le temps
+        écoulé depuis l'arrêt du système), mais peut être pratique pour des
+        tâches dépendant du nombre de choses faites par les utilisateurs (par
+        exemple, il vaudrait mieux vérifier le système de fichiers après un
+        certain nombre d'utilisation par les utilisateurs plutôt que tous les
+        x jours, vu que le système peut être lancé de 1 jour à x jours pendant
+        cet intervalle de x jours).
+      </para>
+      <para>Le temps restant avant la prochaine exécution est sauvegardé
+        toutes les &save; secondes (afin de limiter les dommages provoqués
+        par un plantage) et lorsque &fcron; quitte après avoir reçu un signal
+        <constant>SIGTERM</constant>, c.-à-d. lorsque l'on arrête le système.
+        Ainsi, ce type d'entrée est particulièrement utile pour des systèmes
+        qui ne tournent pas de manière régulière. La syntaxe étant très simple,
+        il est également pratique pour des tâches qui n'ont pas besoin d'être
+        exécutées à une date et une heure spécifique.
+      </para>
+      <para>&voiraussi; les options &optfirst;, &optmail;, &optnolog;,
+        &optserial;, &optlavg;, &optnice;, &optrunas; (voir plus loin).
+      </para>
+      <para><example>
+       <title>Quelques exemples de lignes basÉes sur le temps écoulÉ depuis
+le dÉmarrage du systÈme</title>
+       <programlisting>
+# Récupérer vos courriels toutes les 30 minutes
+@ 30 getmails -all 
+
+# Effectuer quelques tests de sécurité toutes les 48 heures de fonctionnement
+# du système, envoyer un courriel au super-utilisateur même s'il n'a pas de sortie
+@mailto(root),forcemail 2d /etc/security/msec/cron-sh/security.sh
+</programlisting>
+       </example></para>
+    </refsect2>
+
+    <refsect2 id="fcrontab.5.tadent">
+      <title>EntrÉes basÉes sur une date et une heure</title>
+      <para>Le deuxième type d'entrée d'un fichier &fcrontabf; commence par un
+        caractère «&nbsp;&&nbsp;» optionnel qui peut être immédiatement suivi
+        par un nombre optionnel définissant la fréquence d'exécution (ceci est
+        équivalent à l'option &optrunfreq;) ou par une déclaration
+        d'options&nbsp;; il possède cinq champs de date et d'heure, ainsi
+        qu'une commande shell&nbsp;:
+      </para>
+      <programlisting>
+&amp;options min hrs jour-du-mois mois jour-de-la-semaine commande
+</programlisting>
+      <para>Veuillez noter que la commande shell peut être précédée par un nom
+        d'utilisateur, ce qui est équivalent à <token>runas
+        (<replaceable>user</replaceable>)</token>&nbsp;: vu que cela n'existe
+      que pour une retrocompatibilité, vous devriez plutôt utiliser l'option
+      &optrunas; (voir plus loin). La fréquence est interprétée de la façon
+      suivante&nbsp;: «&nbsp;lancer cette commande après x correspondances des
+      champs date et heure&nbsp;». Les champs date et heure sont&nbsp;:
+    </para>
+      <table>
+       <title>Champs date et heure</title>
+       <tgroup cols="2">
+         <thead>
+           <row>
+              <entry>champ&nbsp;: </entry>
+              <entry>valeurs permises&nbsp;:      </entry>
+           </row>
+         </thead>
+         <tbody>
+           <row>
+              <entry>minute&nbsp;: </entry>
+             <entry>0-59      </entry>
+           </row>
+           <row>
+              <entry>heure&nbsp;: </entry>
+             <entry>0-23      </entry>
+           </row>
+            <row>
+              <entry>jour du mois&nbsp;: </entry>
+             <entry>1-31      </entry>
+            </row>
+            <row>
+              <entry>mois&nbsp;: </entry>
+            <entry>1-12 (ou leurs noms, voir plus loin)      </entry>
+            </row>
+            <row>
+              <entry>jour de la semaine&nbsp;: </entry>
+             <entry>0-7 (0 et 7 signifient tous deux le dimanche, ou leurs noms)</entry>
+            </row>
+         </tbody>
+       </tgroup>
+      </table>
+      <para>Un champ est toujours renseigné soit par une astérique
+        «&nbsp;*&nbsp;», qui signifie un intervalle comme
+        «&nbsp;<token>premier-dernier</token>, soit un nombre seul, soit une
+        liste.
+      </para>
+      <para>Les listes sont des nombres ou des intervalles séparés par des
+        virgules «&nbsp;,&nbsp;»). Par exemple&nbsp;: «&nbsp;2,5,15,23&nbsp;».
+      </para>
+      <para>Les intervalles de nombres sont de la forme
+        «&nbsp;<token><replaceable>début</replaceable>-<replaceable>fin</replaceable></token>&nbsp;»,
+        où «&nbsp;<replaceable>début</replaceable>&nbsp;» et
+        «&nbsp;<replaceable>fin</replaceable>&nbsp;» sont inclus. Par exemple,
+        «&nbsp;3-5&nbsp;» signifie les valeurs 3, 4 et 5. Vous pouvez également
+        ajouter un «&nbsp;/<replaceable>nombre</replaceable>&nbsp;» optionnel
+        à l'intervalle, où le <replaceable>nombre</replaceable> signifie le
+        pas dans l'intervalle. Par exemple, «&nbsp;0-23/2&nbsp;» peut être
+        utilisé dans le champ heure pour spécifier l'exécution d'une commande
+        toutes les heures paires. Enfin, un ou plusieurs
+        «&nbsp;~<replaceable>nombre</replaceable>&nbsp;» peuvent être ajoutés
+        afin de désactiver certaines valeurs dans l'intervalle. Par exemple,
+        «&nbsp;5-8~6~7&nbsp;» est équivalent à «&nbsp;5,8&nbsp;». La forme
+        finale d'un champ est&nbsp;:
+      </para>
+      <blockquote>
+       <para>a[-b[/c][~d][~e][...]][,f[-g[/h][~i][~j][...]]][,...]</para>
+      </blockquote>
+      <para>où les lettres sont des nombres entiers.</para>
+      <para>Vous pouvez également utiliser unE astérisque «&nbsp;*&nbsp;» dans
+        un champ. Il agira comme «&nbsp;<token>premier-dernier</token>&nbsp;».
+        Par exemple, un «&nbsp;*&nbsp;» dans le champ minute signifie toutes
+        les minutes de la minute 0 à la minute 59.
+      </para>
+      <para>Des intervalles peuvent être inclus dans une liste comme un simple
+        nombre. Par exemple&nbsp;: «&nbsp;2,5-10/2~6,15,20-25,30&nbsp;».
+      </para>
+      <para>Les noms (Ndt&nbsp;: en anglais) peuvent être utilisés pour les
+        champs «&nbsp;mois&nbsp;» et «&nbsp;jour de la semaine&nbsp;». Pour ce
+        faire, utilisez les trois premières lettres du jour ou du mois
+        concerné (la casse n'a pas d'importance). Veuillez noter que les noms
+        sont utilisés exactement comme les nombres&nbsp;: vous pouvez les
+        utiliser dans une liste ou un intervalle.
+      </para>
+      <para>Si un jour de mois et un jour de semaine sont donnés, la commande
+        sera exécutée seulement si <emphasis>les deux</emphasis> correspondent
+        au jour et à l'heure actuels à moins que l'option &optdayor; n'ait été
+        positionnée. Par exemple, avec la ligne
+        <programlisting>5 10 31 * 7 echo ''</programlisting> echo sera exécutée
+        seulement les jours qui sont un dimanche ET le 31ème jour du mois,
+        à 10:05.
+      </para>
+      <para>&voiraussi; options &optdayor;, &optbootrun;, &optrunfreq;,
+        &optmail;, &optnolog;, &optserial;, &optlavg;, &optnice;, &optrunas;
+        (voir plus loin).
+      </para>
+      <para><example>
+       <title>Quelques exemples d'entrÉes basÉes sur une date et une heure
+        </title>
+       <programlisting>
+# lancer macommande tous les jours à 12:05, 12:35, 13:05, 13:35,
+# 14:05 *et* 14:35
+&amp; 05,35 12-14 * * * macommande -u moi -o fichier
+
+# récupérer les courriels toutes les heures aux minutes 20, 21, 22, et 24.
+20-24~23 * * * * getmail 
+
+# sauvegarder mon travail de la journée toutes les nuits à 03:45 avec une
+# faible priorité, sauf le dimanche, envoyer la sortie par courriel à jim et
+# lancer cette tâche au démarrage si la machine était éteinte à 03:45
+&amp;nice(10),mailto(jim),bootrun 45 03 * * *~0 "save --mon travail"
+</programlisting>
+      </example></para>
+    </refsect2>
+
+    <refsect2 id="fcrontab.5.periodent">
+      <title>EntrÉes lancÉes pÉriodiquement</title>
+      <para>Le troisième type d'entrée &fcrontabf; commence par le caractère
+        «&nbsp;%&nbsp;», suivi par un mot-clef pris parmi une des trois
+        différentes listes, puis par des options.
+      </para>
+      <refsect3>
+       <title>Mots-clefs *ly</title>
+        <para>Ces mots-clefs sont&nbsp;:</para>
+       <para><simplelist type="inline">
+         <member><parameter>hourly </parameter></member>
+         <member><parameter>daily </parameter></member>
+         <member><parameter>monthly </parameter></member>
+         <member><parameter>weekly </parameter></member>
+       </simplelist></para>
+       <para>Ces mots-clefs indiquent à &fcron; de lancer la commande une fois
+          entre le début et la fin de l'intervalle de temps correspondant.
+          Un intervalle de temps est, par exemple, le temps compris entre lundi
+          16:20 et mercredi 01:43. Par exemple, le mot-clef
+          <parameter>weekly</parameter> indique à &fcron; de lancer une
+          commande une fois par semaine entre le lundi et le dimanche.
+        </para>
+       <para>Avec ces deux sortes de mots-clefs, l'utilisateur doit renseigner
+          les champs heure nécessaires (comme ils sont définis dans
+          «&nbsp;<link linkend="fcrontab.5.tadent">Entrées basées sur une date
+          et une heure</link>&nbsp;» (voir plus haut)) pour préciser quand la
+          commande devrait être lancée dans chaque intervalle de temps&nbsp;:
+        </para>
+       <para>
+         <table>
+           <title>Champs de temps nÉcessaires À chaque mot-clef</title>
+           <tgroup cols="2">
+             <thead>
+                <row>
+                  <entry>Mots-clefs&nbsp;: </entry>
+                  <entry>doit être suivi par les champs&nbsp;: </entry>
+               </row>
+             </thead>
+             <tbody>
+               <row>
+                 <entry><parameter> hourly</parameter>,
+                    <parameter>midhourly</parameter>&nbsp;: </entry>
+                 <entry> minutes.</entry>
+               </row>
+               <row>
+                 <entry><parameter> daily</parameter>,
+<parameter>middaily</parameter>, <parameter>nightly</parameter>,
+<parameter>weekly</parameter>, <parameter>midweekly</parameter>&nbsp;: </entry>
+                 <entry> minutes et heures.</entry>
+               </row>
+               <row>
+                 <entry><parameter> monthly</parameter>,
+<parameter>midmonthly</parameter> : </entry>
+                 <entry> minutes, heures et jours.</entry>
+               </row>
+             </tbody>
+           </tgroup>
+         </table>
+        </para>
+      </refsect3>
+
+      <refsect3>
+       <title>Mots-clefs mid*ly</title>
+        <para>Ils sont similaires aux mots-clefs «&nbsp;*ly&nbsp;»&nbsp;:</para>
+       <para>
+          <simplelist type="inline">
+           <member><parameter>midhourly </parameter></member>
+           <member><parameter>middaily </parameter></member>
+           <member><parameter>nightly </parameter></member>
+           <member><parameter>midmonthly </parameter></member>
+           <member><parameter>midweekly </parameter></member>
+         </simplelist>
+        </para>
+        <para>Ils fonctionnent exactement comme les mots-clefs
+          «&nbsp;*ly&nbsp;», excepté que les intervalles de temps sont définis
+          du milieu au milieu de l'intervalle «&nbsp;*ly&nbsp;»
+          correspondant&nbsp;: <parameter>midweekly</parameter> lancera une
+          commande une fois entre le jeudi et le mercredi. Veuillez noter que
+          <parameter>nightly</parameter> est équivalent à
+          <parameter>middaily</parameter>.
+        </para>
+        <para>Par exemple&nbsp;:
+         <informalexample>
+           <programlisting>
+%nightly,mail(no) * 21-23,3-5 echo "une entrée nigthly"
+</programlisting>
+         </informalexample>
+        </para>
+       <para>lancera la commande une fois par nuit soit entre 21:00 et 23:59,
+          soit entre 3:00 et 5:59 (elle sera exécutée aussitôt que
+          possible&nbsp;; Pour modifier ce comportement, utilisez l'option
+          &optrandom;) et ne pas envoyer de courriel (étant donné que l'option
+          &optmail; a été définie à «&nbsp;no&nbsp;»).
+        </para>
+       <para>&voiraussi; options &optlavg;, &optnoticenotrun;, &optstrict;,
+          &optmail;, &optnolog;, &optserial;, &optnice;, &optrunas;,
+          &optrandom; (voir plus loin).
+        </para>
+      </refsect3>
+
+      <refsect3>
+       <title>Mots-clefs *s</title>
+       <para>Ce sont&nbsp:</para>
+       <para><simplelist type="inline">
+         <member><parameter>mins </parameter></member>
+         <member><parameter>hours </parameter></member>
+         <member><parameter>days </parameter></member>
+         <member><parameter>mons </parameter></member>
+         <member><parameter>dow </parameter></member>
+       </simplelist></para>
+       <para>Ces mots-clefs agissent différemment, comme suit&nbsp;:
+        </para>
+       <para>lancer cette commande unE fois durant CHAQUE intervalle de temps
+          spécifié, ignorant les champs suivants le mot-clef dans la définition
+          de l'intervalle de temps (un <parameter>hours</parameter> empêche le
+          champ mins d'être considéré comme un intervalle de temps, mais il
+          sera utilisé pour déterminer quand la ligne devra être lancée au
+          cours de l'intervalle&nbsp;: voir la note plus loin)
+          (<parameter>dow</parameter> signifie «&nbsp;day of week&nbsp;»).
+        </para>
+       <para>Un tel mot-clef est suivi par 5 champs de date et d'heure (les
+          mêmes champs utilisés pour une <link linkend="fcrontab.5.tadent">ligne
+          basée sur un temps absolu</link> (voir plus haut). De plus, avec
+          cette sorte de mots-clefs, il doit y avoir sur les lignes des dates
+          et heures qui ne correspondent pas (c.-à-d. que ce qui suit n'est
+          pas permis&nbsp;:
+          <programlisting>%hours * 0-23 * * * echo "Ligne INCORRECTE !"</programlisting>
+          mais ceci l'est&nbsp;:
+          <programlisting>%hours * 0-22 * * * echo "Ok."</programlisting>
+        </para>
+       <note>
+         <para>un nombre seul dans un champ est considéré comme un intervalle
+            de temps&nbsp;:
+            <programlisting>%mins 15 2-4 * * * echo</programlisting> lancera
+            echo tous les jours à 2:15, 3:15 ET 4:15.
+          </para>
+         <para>Mais tous les champs suivants les mots-clefs sont ignorés dans
+            la définition d'un intervalle de temps&nbsp;:
+            <programlisting>%hours 15 2-4 * * * echo</programlisting> lancera
+            echo seulement UNE FOIS soit à 2:15, soit à 3:15 OU BIEN à 4:15.
+          </para>
+       </note>
+       <para>&voiraussi; option &optrandom; (voir plus loin).</para>
+      </refsect3>
+    </refsect2>
+
+    <refsect2>
+      <title>Options</title>
+      <para>Les options peuvent être positionnées soit pour chaque ligne située
+        après la déclaration, soit pour une ligne de manière individuelle. Dans
+        le premier cas, la configuration est faite sur une ligne complète après
+        un point d'exclamation «&nbsp;!&nbsp;», dans le second cas, elle est
+        faite après l'un des symboles suivants «&nbsp;&&nbsp;», «&nbsp;%&nbsp;»
+        ou «&nbsp;@&nbsp;», suivant le type de planification. Veuillez noter
+        qu'une déclaration d'option dans une planification écrase la
+        déclaration globale de la même option.
+      </para>
+      <para>Les options sont séparées par des virgules «&nbsp;,&nbsp;» et leurs
+        arguments, s'il y en a, sont placés entre paranthèses «&nbsp;(&nbsp;»
+        et «&nbsp;)&nbsp;». Les espaces ne sont pas permises. Une déclaration
+        d'option est de la forme
+      </para>
+      <blockquote>
+       <para><replaceable>option</replaceable>[(<replaceable>arg1</replaceable>[,<replaceable>arg2</replaceable>][...])][,<replaceable>option</replaceable>[(<replaceable>arg1</replaceable>[...])]][...]</para>
+      </blockquote>
+      <para>où <replaceable>option</replaceable> est soit le nom complet de
+        l'option, soit son abbréviation. Les options sont (avec leur valeur
+        par défaut entre paranthèses)&nbsp;:
+      </para>
+      <variablelist>
+       <title>Options valides dans un fichier &fcrontabf;</title>
+
+       <varlistentry id="fcrontab.5.bootrun">
+         <term>bootrun</term>
+         <term>b</term>
+         <listitem>
+           <para><emphasis><type>booléen</type></emphasis>(<constant>false</constant>)</para>
+            <para>Lancer une ligne «&nbsp;&&nbsp;» au démarrage de &fcron; si
+              celle-ci avait dû être lancée pendant l'arrêt du système.
+            </para>
+         </listitem>
+       </varlistentry>
+
+       <varlistentry id="fcrontab.5.dayand">
+         <term>dayand</term>
+         <listitem>
+           <para><emphasis><type>booléen</type></emphasis>(<constant>true</constant>)</para>
+           <para>Effectuer un ET logique entre le jour de la semaine et le
+              jour du mois.
+            </para>
+           <para>&voiraussi; option &optdayor;.</para>
+         </listitem>
+       </varlistentry>
+
+       <varlistentry id="fcrontab.5.dayor">
+         <term>dayor</term>
+         <listitem>
+           <para><emphasis><type>booléen</type></emphasis>(<constant>false</constant>)</para>
+            <para>Effectuer un OU logique entre le jour de la semaine et le
+              jour du mois.
+            </para>
+            <para>&voiraussi; option &optdayand;.</para>
+         </listitem>
+       </varlistentry>
+
+       <varlistentry id="fcrontab.5.exesev">
+         <term>exesev</term>
+         <listitem>
+           <para><emphasis><type>booléen</type></emphasis>(<constant>false</constant>)</para>
+           <para>Une tâche peut-elle être exécutée plusieurs fois
+              simultanément&nbsp;?
+            </para>
+            <para>&voiraussi; options &optserialonce;, &optlavgonce;.</para>
+         </listitem>
+       </varlistentry>
+
+       <varlistentry id="fcrontab.5.first">
+         <term>first</term>
+         <term>f</term>
+         <listitem>
+           <para><emphasis><type>time-value</type></emphasis></para>
+           <para>Temps avant la première exécution d'une tâche basée sur le
+              temps de fonctionnement du système (lignes «&nbsp;@&nbsp;»).
+              Utile dans les cas suivants&nbsp;: vous avez plusieurs tâches à
+              exécuter, disons, toutes les heures. En positionnant différentes
+              valeurs «&nbsp;first&nbsp;» pour chaque tâche, vous évitez
+              que celles-ci soient lancées simultanément chaque fois.
+             Vous pouvez également la mettre à 0, ce qui est pratique
+             lorsqu'elle est utilisée avec l'option &optvolatile;.
+            </para>
+         </listitem>
+       </varlistentry>
+
+       <varlistentry id="fcrontab.5.forcemail">
+         <term>forcemail</term>
+         <listitem>
+           <para><emphasis><type>booléen</type></emphasis>(<constant>false</constant>)</para>
+           <para>Envoyer la sortie par courriel même si celle-ci est vide.</para>
+           <para>&voiraussi; options &optmail;, &optmailto;, &optnolog;.</para>
+         </listitem>
+       </varlistentry>
+
+       <varlistentry id="fcrontab.5.lavg">
+         <term>lavg</term>
+         <listitem>
+           <para><emphasis><type>réel</type></emphasis>(<constant>0</constant>) 
+<emphasis><type>réel</type></emphasis>(<constant>0</constant>)
+<emphasis><type>réel</type></emphasis>(<constant>0</constant>)</para>
+           <para>Définir les valeurs de la charge moyenne du système sur 1,
+              5 et 15 minutes (dans cet ordre) en dessous desquelles la tâche
+              pourra être lancée. Ces valeurs ne peuvent avoir qu'une seule
+              décimale (c.-à-d. «&nbsp;2.3&nbsp;»). S'il y en a plus, la valeur
+             sera arrondie. Mettre une valeur à 0 pour ignorer la charge
+             moyenne correspondante. Si vous mettez toutes les valeurs à 0,
+             la tâche sera lançée sans tenir compte de la charge système.
+            </para>
+           <para>&voiraussi; options &optlavg1;, &optlavg5;, &optlavg15;,
+              &optuntil;, &optlavgonce;, &optlavgor;, &optlavgand;,
+              &optstrict;, &optnoticenotrun;.
+            </para>
+         </listitem>
+       </varlistentry>
+       <varlistentry id="fcrontab.5.lavgX">
+         <term>lavg1</term>
+         <term>lavg5</term>
+         <term>lavg15</term>
+         <listitem>
+           <para><emphasis><type>réel</type></emphasis>(<constant>0</constant>)</para>
+           <para>Définir le seuil des valeurs de charge moyenne du système
+              sur 1, 5 ou 15 minutes. Définir l'une d'elles à 0 pour ignorer
+              la charge moyenne correspondante.
+            </para>
+           <para>&voiraussi; options &optlavg;.</para>
+         </listitem>
+       </varlistentry>
+
+       <varlistentry id="fcrontab.5.lavgand">
+         <term>lavgand</term>
+         <listitem>
+           <para><emphasis><type>booléen</type></emphasis>(<constant>true</constant>)</para>
+           <para>Effectuer un ET logique entre les valeurs de charge moyenne
+              du système à 1, 5 et 15 minutes.
+            </para>
+           <para>&voiraussi; options &optlavg;, &optlavgor;.</para>
+         </listitem>
+       </varlistentry>
+
+       <varlistentry id="fcrontab.5.lavgonce">
+         <term>lavgonce</term>
+         <listitem>
+           <para><emphasis><type>booléen</type></emphasis>(<constant>&lavgoncedef;</constant>)</para>
+           <para>Une tâche peut-elle être mise plusieurs fois simultanément
+              dans la file d'attente charge moyenne du système (Ndt&nbsp;:
+              lavg queue)&nbsp;?
+            </para>
+           <para>&voiraussi; options &optlavg;.</para>
+         </listitem>
+       </varlistentry>
+
+       <varlistentry id="fcrontab.5.lavgor">
+         <term>lavgor</term>
+         <listitem>
+           <para><emphasis><type>booléen</type></emphasis>(<constant>false</constant>)</para>
+            <para>Effectuer un OU logique entre les valeurs de charge moyenne
+              du système à 1, 5 et 15 minutes.
+            </para>
+           <para>&voiraussi; options &optlavg;, &optlavgand;.</para>
+         </listitem>
+       </varlistentry>
+
+       <varlistentry id="fcrontab.5.mail">
+         <term>mail</term>
+         <term>m</term>
+         <listitem>
+           <para><emphasis><type>booléen</type></emphasis>(<constant>true</constant>)</para>
+           <para>Envoyer la sortie (s'il y en a) par courriel, ou non.
+            </para>
+           <para>&voiraussi; options &optmailto;, &optforcemail;, &optnolog;.
+            </para>
+         </listitem>
+       </varlistentry>
+
+       <varlistentry id="fcrontab.5.mailto">
+         <term>mailto</term>
+         <listitem>
+           <para><emphasis><type>email-address</type></emphasis>(<constant>nom
+                du propriétaire du fichier</constant>)</para>
+           <para>Envoyer la sortie (si nécessaire) par courriel à
+              «&nbsp;<replaceable>email-address</replaceable>&nbsp;». Cela
+              peut être soit un nom d'utilisateur, soit une adresse courriel
+              complète. Une &optmailto; déclarée mais vide (chaîne "") est
+              équivalente à «&nbsp;<token>mail(false)</token>&nbsp;».
+            </para>
+           <para>&voiraussi; options &optmail;, &optforcemail;, &optnolog;.
+            </para>
+         </listitem>
+       </varlistentry>
+
+       <varlistentry id="fcrontab.5.nice">
+         <term>nice</term>
+         <term>n</term>
+         <listitem>
+           <para><emphasis><type>nice-value</type></emphasis></para>
+           <para>Modifier la priorité de la tâche. Une
+              <emphasis><type>nice-value</type></emphasis> est un entier
+              compris entre -20 (plus forte priorité) et 19 (plus faible
+              priorité). Seul le super-utilisateur est autorisé à utiliser
+              une valeur négative pour cette option.
+            </para>
+         </listitem>
+       </varlistentry>
+
+       <varlistentry id="fcrontab.5.nolog">
+         <term>nolog</term>
+         <listitem>
+           <para><emphasis><type>booléen</type></emphasis>(<constant>false</constant>)</para>
+           <para>Si elle est positionnée à «&nbsp;true&nbsp;», journaliser
+              seulement les erreurs des tâches correspondantes. Peut être
+              utile pour des tâches lancées très fréquemment, et/ou pour
+              réduire les accès disque sur un ordinateur portable.
+            </para>
+           <para>&voiraussi; options &optmail;, &optmailto;, &optforcemail;.
+            </para>
+         </listitem>
+       </varlistentry>
+
+       <varlistentry id="fcrontab.5.noticenotrun">
+         <term>noticenotrun</term>
+         <listitem>
+           <para><emphasis><type>booléen</type></emphasis>(<constant>false</constant>)</para>
+           <para>&fcron; devrait-il prévenir l'utilisateur par courriel de la
+              non exécution d'une tâche «&nbsp;%&nbsp;» ou d'une tâche
+              «&nbsp;&&nbsp;»&nbsp;? (à cause de l'arrêt du système dans les
+             deux cas ou d'une charge moyenne trop élevée dans le second cas).
+            </para>
+           <para>&voiraussi; options &optlavg;, &optstrict;.</para>
+         </listitem>
+       </varlistentry>
+
+       <varlistentry id="fcrontab.5.random">
+         <term>random</term>
+         <listitem>
+           <para><emphasis><type>booléen</type></emphasis>(<constant>false</constant>)</para>
+            <para>Dans une <link linkend="fcrontab.5.periodent">ligne lancée
+              périodiquement</link>, cette option répond à la question&nbsp;:
+              «&nbsp;Cette tâche devrait-elle être lancée aussitôt que possible
+              dans son intervalle de temps d'exécution (plus sûr), ou bien
+              &fcron; doit-il définir une date et heure aléatoire d'exécution
+              dans ce même intervalle de temps&nbsp;?&nbsp;». Veuillez noter
+              que si cette option est positionnée, la tâche peut ne pas être
+              lancée si &fcron; n'est pas en cours d'exécution durant
+              <emphasis>tout</emphasis> l'intervalle d'exécution. En outre,
+              sachez qu'il peut être relativement facile pour une personne
+              compétente de deviner l'heure de la prochaine exécution d'une
+              tâche utilisant l'option random&nbsp;: il est donc préférable
+              de ne pas baser la sécurité de quelque chose de sensible sur
+              l'aléa de cette option. Cependant, cela ne devrait pas poser de
+              problème pour la plupart de ses utilisations.
+            </para>
+         </listitem>
+       </varlistentry>
+
+       <varlistentry id="fcrontab.5.reset">
+         <term>reset</term>
+         <listitem>
+           <para><emphasis><type>booléen</type></emphasis></para>
+           <para>Positionner toutes les options à leur valeur par défaut.
+            </para>
+         </listitem>
+       </varlistentry>
+
+       <varlistentry id="fcrontab.5.runas">
+         <term>runas</term>
+         <listitem>
+           <para><emphasis><type>utilisateur</type></emphasis></para>
+           <para>Lancer avec les permissions et l'environnement de
+              «&nbsp;<replaceable>utilisateur</replaceable>&nbsp;» (seul le
+              super-utilisateur est autorisé à utiliser cette option).
+            </para>
+         </listitem>
+       </varlistentry>
+
+       <varlistentry id="fcrontab.5.runfreq">
+         <term>runfreq</term>
+         <term>r</term>
+         <listitem>
+           <para><emphasis><type>entier</type></emphasis></para>
+            <para>Lancer toutes les «&nbsp;<replaceable>runfreq</replaceable>&nbsp;»
+              correspondances de date et d'heure. (Cette option est ignorée
+              dans le cas d'<link linkend="uptent">entrées basées sur le temps
+              écoulé depuis le démarrage du système</link>).
+            </para>
+         </listitem>
+       </varlistentry>
+
+       <varlistentry id="fcrontab.5.serial">
+         <term>serial</term>
+         <term>s</term>
+         <listitem>
+           <para><emphasis><type>booléen</type></emphasis>(<constant>false</constant>)</para>
+            <para>&Fcron; fait tourner au plus &serialmaxrunning; tâche(s)
+              séquentielle(s) en même temps (c.-à-d. pour lesquelles l'option
+              serial est définie), et autant de tâches qui sont à la fois
+              séquentielles et dont l'exécution dépend aussi de la charge
+              système (autrement dit pour lesquelles les options serial et
+              lavg sont définies). Cette valeur peut être modifiée grâce à
+              l'option <option>-m</option> de &fcron;. Cette option trouve
+              toute son utilité dans le cas de tâches lourdes afin
+              d'éviter une surcharge du système.
+            </para>
+           <para>&voiraussi; options &optserialonce;, &optlavg;.</para>
+         </listitem>
+       </varlistentry>
+
+       <varlistentry id="fcrontab.5.serialonce">
+         <term>serialonce</term>
+         <listitem>
+           <para><emphasis><type>booléen</type></emphasis>(<constant>&serialoncedef;</constant>)</para>
+           <para>Une tâche peut-elle être mise plusieurs fois simultanément
+              dans la file d'attente séquentielle&nbsp;? (Ndt&nbsp;: serial
+              queue)
+            </para>
+           <para>&voiraussi; options &optexesev;, &optlavgonce;.</para>
+         </listitem>
+       </varlistentry>
+
+       <varlistentry id="fcrontab.5.stdout">
+         <term>stdout</term>
+         <listitem>
+           <para><emphasis><type>booléen</type></emphasis>(<constant>false</constant>)</para>
+           <para>Si &fcron; s'exécute en arrière plan, permettre la sortie
+              des tâches sur stderr/stdout plutôt que par courriel ou que
+              l'ignorer.
+            </para>
+           <para>&voiraussi; option <option>--once</option> de <link
+              linkend="fcron.8">&fcron;(8)</link>.
+            </para>
+         </listitem>
+       </varlistentry>
+
+       <varlistentry id="fcrontab.5.strict">
+         <term>strict</term>
+         <listitem>
+           <para><emphasis><type>booléen</type></emphasis>(<constant>true</constant>)</para>
+            <para>Lorsqu'une tâche «&nbsp;%&nbsp;» de la file d'attente charge
+              moyenne du système (Ndt&nbsp;: lavg queue) est à la fin de
+              l'intervalle de temps d'exécution, doit-elle être retirée de la
+              file d'attente (strict(true), ainsi la tâche ne sera pas
+              exécutée), ou bien doit-elle y rester jusqu'à ce que la charge
+              moyenne du système permette son exécution (strict(false))&nbsp;?
+            </para>
+           <para>&voiraussi; options &optlavg;, &optnoticenotrun;.</para>
+         </listitem>
+       </varlistentry>
+
+       <varlistentry id="fcrontab.5.timezone">
+         <term>timezone</term>
+         <listitem>
+           <para><emphasis><type>timezone-name</type></emphasis>(<constant>fuseau
+              horaire du système</constant>)
+            </para>
+           <para>Lancer la tâche dans le fuseau horaire fourni. timezone-name
+              est une chaîne qui doit être valide du point de vue de la
+              variable d'environnement TZ&nbsp;: consultez la documentation de
+              votre système pour plus de détails. Par exemple,
+              «&nbsp;Europe/Paris&nbsp;» est valide sur un système Linux.
+              Cette option gère correctement le changement d'heure.
+            </para>
+           <para>Veuillez noter que si vous fournissez un argument
+              timezone-name erroné, celui-ci sera  SILENCIEUSEMENT ignoré,
+              et la tâche sera exécutée dans le fuseau horaire du système.
+            </para>
+            <para>ATTENTION&nbsp;: N'utilisez PAS simultanément les options
+              timezone et tzdiff&nbsp;! Cela n'a pas de raison d'être, et
+              timezone est plus maligne que tzdiff.</para>
+           <para>&voiraussi; option &opttzdiff;.</para>
+         </listitem>
+       </varlistentry>
+
+       <varlistentry id="fcrontab.5.tzdiff">
+         <term>tzdiff</term>
+         <listitem>
+           <para><emphasis><type>entier</type></emphasis>(<constant>0</constant>)</para>
+            <para>ATTENTION&nbsp;: cette option est obsolète&nbsp;: utilisez
+              plutôt l'option timezone&nbsp;!
+            </para>
+           <para>Différence de fuseau horaire (en heures, valeur comprise
+              entre -24 et 24) entre l'heure du système et l'heure locale
+              réelle. Cette option permet à l'utilisateur de définir ses lignes
+              «&nbsp;&&nbsp;» et «&nbsp;%&nbsp;» en temps local. Veuillez
+              noter que cette valeur est définie pour l'ensemble du fichier
+              &fcrontab;, et que seule la dernière déclaration est prise en
+              compte. tzdiff est quelque peu stupide&nbsp;: elle ne gère pas
+              le changement d'heure alors que l'option timezone le fait,
+              aussi, vous devriez utiliser cette dernière.
+            </para>
+            <para>&voiraussi; option &opttimezone;.</para>
+         </listitem>
+       </varlistentry>
+
+       <varlistentry id="fcrontab.5.until">
+         <term>until</term>
+         <listitem>
+           <para><emphasis><type>time-value</type></emphasis>(<constant>0</constant>)</para>
+           <para>Définir le délai d'attente maximal pour les valeurs de
+             charge système. Si le délai est dépassé, la tâche sera lancée
+              indépendemment de la charge système. Définir until à 0 pour
+              désactiver le délai d'attente.
+            </para>
+            <para>&voiraussi; option &optlavg;.</para>
+         </listitem>
+       </varlistentry>
+
+       <varlistentry id="fcrontab.5.volatile">
+         <term>volatile</term>
+         <listitem>
+           <para><emphasis><type>booléen</type></emphasis>(<constant>false</constant>)</para>
+            <para>Quand cette option est activée, la tâche est basée sur un
+              temps «&nbsp;volatile&nbsp;», qu'on pourrait aussi qualifier de
+              «&nbsp;non persistant&nbsp;». Plus précisement, &fcron; ne
+              «&nbsp;retient&nbsp;» pas le temps écoulé depuis la dernière
+              exécution des tâches «&nbsp;volatiles&nbsp;» entre deux
+              démarrages de &fcron;, et agit comme si les lignes avaient été
+              fraichement ajoutées à chaque démarrage de &fcron;. Ainsi,
+              l'option &optfirst; s'appliquera par exemple pour les lignes
+              «&nbsp;volatiles&nbsp;» à chaque démarrage de fcron. Cette option
+              est en particulier utile lorsque &fcron; est lancé à partir d'un
+              script qui tourne, par exemple, seulement pendant une connection
+              à Internet non permanente&nbsp;: l'exécution des tâches
+              «&nbsp;volatiles&nbsp;» est alors basée sur le temps depuis le
+              début de la connection et le lancement de &fcron; plutôt que sur
+              le temps absolu. Enfin, veuillez noter que cette option s'associe
+              bien à l'option &optfirst;.
+            </para>
+           <para>&voiraussi; options &optfirst;, &optstdout;, <link
+              linkend="uptent">Entrées basées sur le temps écoulé depuis le
+              démarrage du système</link>, l'option <option>--once</option> de
+              &fcron; dans <link linkend="fcron.8">&fcron;(8)</link>.
+            </para>
+         </listitem>
+       </varlistentry>
+      </variablelist>
+
+      <para>Un argument de type <type>booléen</type> peut ne pas être indiqué,
+        auquel cas les parenthèses ne seront pas utilisées et il sera
+        interprété comme étant <constant>true</constant>&nbsp;; les chaînes
+        «&nbsp;true&nbsp;», «&nbsp;yes&nbsp;» ou «&nbsp;1&nbsp;» signifient
+        <constant>true</constant>&nbsp;; et les chaînes «&nbsp;false&nbsp;»,
+        «&nbsp;no&nbsp;» ou «&nbsp;0&nbsp;» signifient
+        <constant>false</constant>. Voir plus haut les explications sur les
+        valeurs de temps (section <link linkend="uptent">«&nbsp;Entrées basées
+        sur le temps écoulé depuis le démarrage du système&nbsp;»</link>).
+      </para>
+      <para>Veuillez noter que <varname>dayand</varname> et
+        <varname>dayor</varname> sont en fait la même option&nbsp;: une valeur
+        «&nbsp;false&nbsp;» pour <varname>dayand</varname> est équivalente à
+        une valeur «&nbsp;true&nbsp;» pour <varname>dayor</varname> et
+        réciproquement,  une valeur «&nbsp;false&nbsp;» pour
+        <varname>dayor</varname> est équivalente à une valeur
+        «&nbsp;true&nbsp;» pour <varname>dayand</varname>. C'est également
+        le cas pour les options <varname>lavgand</varname> et
+        <varname>lavgor</varname>.
+      </para>
+      <para>Veuillez noter un cas particulier à gérer&nbsp;: une tâche aurait
+        due être placée dans la file d'attente séquentielle, *mais* la
+        précédente entrée de cette tâche n'est pas encore achevée à cause
+        d'une forte charge système ou d'un quelconque événement extérieur.
+        L'option <varname>serialonce</varname> répond à cette question&nbsp;:
+        «&nbsp;La nouvelle entrée de cette tâche doit-elle être
+        ignorée&nbsp;?&nbsp;». De cette facon, on peut distinguer d'une part
+        les tâches sans contrainte forte sur l'heure d'exécution qui doivent
+        être exécutées un nombre de fois bien défini (serial(yes),
+        serialonce(false)), et d'autre part les tâches toujours sans contrainte
+        forte sur l'heure d'exécution mais dont le nombre d'exécutions n'est
+        pas important ou qu'il est inutile de lancer deux fois d'affilée
+        (serial(true), serialonce(true)), qu'on ne rentrera donc pas une
+        deuxième fois dans la file séquentielle de façon à éviter de charger
+        le système inutilement. Par exemple, «&nbsp;Payer ses employés&nbsp;»
+        est une tâche qui doit être exécutée exactement une fois par mois
+        (serialonce(false)), alors que «&nbsp;faire le ménage&nbsp;» doit être
+        exécutée de préférence une fois par semaine, mais il est inutile de le
+        faire deux fois d'affilée si par hasard on avait pris du retard
+        (serialonce(true)).
+      </para>
+      <para>Les mêmes considérations s'appliquent pour la file d'attente charge
+        système et peuvent être exprimées par l'option
+        <varname>lavgonce</varname>.
+      </para>
+      <para>De plus, si les files d'attente séquentielle et charge système
+        contiennent respectivement plus de &serialqueuemax; et &lavgqueuemax;
+        tâches, toute nouvelle tâche sera rejetée (et donc non exécutée) pour
+        éviter une saturation de ressources système. Dans ce cas, un message
+        d'erreur sera journalisé à travers syslog.
+      </para>
+      <para>Enfin, s'il reste des tâches dans les files d'attente séquentielle
+        et charge système au moment de l'arrêt de &fcron;, celles-ci seront
+        déposées une fois dans leur file correspondante au redémarrage
+        (l'ordre peut ne pas être conservé).</para>
+      <para>
+        <example>
+          <title>Exemple de dÉclaration d'option&nbsp;:</title>
+          <programlisting>!reset,serial(true),dayor,bootrun(0),mailto(root),lavg(.5,2,1.5)</programlisting>
+        </example>
+      </para>
+    </refsect2>
+
+  </refsect1>
+
+  <refsect1>
+    <title>Exemples</title>
+    <para><example>
+      <title>Exemple d'un fichier fcrontab utilisateur</title>
+      <programlisting>
+# utiliser /bin/bash pour lancer les commandes, quoique puisse indiquer /etc/passwd
+SHELL=/bin/bash
+
+# envoyer la sortie par courriel à l'utilisateur thib,
+# quelque soit le propriétaire de ce fcrontab.
+!mailto(thib) 
+
+# définir une variable équivalente à " Salut thib et paul ! "
+# les caractères «&nbsp;nouvelle ligne&nbsp;» sont échappés avec
+# une barre oblique inverse «&nbsp;\&nbsp;» et les guillemets servent
+# à conserver les espaces de début et de fin de chaîne
+TEXT= " Salut\
+ thib et\
+ paul ! "
+
+# on veut utiliser la file d'attente séquentielle mais pas l'option bootrun
+!serial(true),b(0)
+
+# lancer la première fois après 5 minutes de fonctionnement du système,
+# puis toutes les heures par la suite
+@first(5) 1h   echo "Lancer toutes les heures" 
+
+# lancer tous les jours
+@ 1d echo "fcron quotidien"
+
+# lancer une fois dans la matinée et une fois dans l'après-midi si le système
+# est en fonctionnement à n'importe quel moment pendant ces intervalles de temps
+%hours * 8-12,14-18 * * * echo "Hé patron, je bosse aujourd'hui !" 
+
+# lancer une fois par semaine à l'heure du déjeuner
+%weekly * 12-13 echo "J'ai laissé allumé mon système au moins une fois\
+ à l'heure du déjeuner cette semaine."
+
+# lancer tous les samedi et dimanche à 9:05
+5 9 * * sat,sun echo "Bonjour Thibault !" 
+
+# lancer tous les jours pairs du mois de mars à 18:00, sauf le 16
+0 18 2-30/2~16 Mar * echo "Il est temps de se rentrer à la maison !" 
+
+# la ligne précédente est équivalente à
+& 0 18 2-30/2~16 Mar * echo "Il est temps de se rentrer à la maison !"
+
+# mettre toutes les options à leur valeur par défaut et définir runfreq
+# pour les lignes qui vont suivre
+!reset,runfreq(7)
+
+# lancer une fois toutes les 7 correspondances (grâce à la déclaration précédente),
+# ainsi, si le système est en fonctionnement tous les jours à 10 heures,
+# la commande sera lancée une fois par semaine
+& 0 10 * * * echo "Si vous avez vu ce message pour la dernière fois il y a 7 jours,\
+ c'est que cette machine a fonctionné tous les jours à 10 heures durant la dernière semaine.\
+ Si vous avez eu ce message il y a 8 jours, c'est que cette machine n'a pas fonctionné\
+ un jour à 10:00 heures depuis le dernier message, etc."
+
+# attendre toutes les heures que la charge système moyenne sur 5 minutes
+# soit inférieure à 0.9
+@lavg5(0.9) 1h echo "La charge moyenne système est faible"
+
+# attendre au maximum 5 heures chaque jour une baisse de la charge système
+@lavgand,lavg(1,2.0,3.0),until(5h) 1d echo "La charge système vient de diminuer"
+
+# attendre le meilleur moment pour lancer une tâche lourde
+@lavgor,lavg(0.8,1.2,1.5),nice(10) 1w echo "C'est une très lourde tâche" 
+
+# lancer une fois toutes les nuits soit entre 21:00 et 23:00,
+# soit entre 3:00 et 6:00 
+%nightly,lavg(1.5,2,2) * 21-23,3-6 echo "Il est temps de récupérer\
+ la dernière version de Mozilla !"
+</programlisting>
+    </example></para>
+  </refsect1>
+
+  <refsect1>
+    <title>Fichiers</title>
+    <variablelist>
+      <varlistentry>
+       <term><filename>&etc;/&fcron.conf.location;</filename></term>
+       <listitem>
+          <para>Fichier de configuration de &fcron;, &fcrontab et &fcrondyn;&nbsp;:
+            contient les chemins (répertoire spool, fichier pid) et les
+            programmes par défaut à utiliser (éditeur, shell, etc.). Voir
+            <link linkend="fcron.conf.5">&fcron.conf(5)</link> pour plus de
+            détails.
+          </para>
+       </listitem>
+      </varlistentry>
+      <varlistentry>
+       <term><filename>&etc;/&fcron.allow;</filename></term>
+       <listitem>
+          <para>Utilisateurs autorisés à utiliser &fcrontab; et &fcrondyn;
+            (un seul nom par ligne, le nom spécial «&nbsp;all&nbsp;»
+            signifiant tout le monde).
+          </para>
+       </listitem>
+      </varlistentry>
+      <varlistentry>
+       <term><filename>&etc;/&fcron.deny;</filename></term>
+       <listitem>
+          <para>Utilisateurs qui ne sont pas autorisés à utiliser &fcrontab;
+            et &fcrondyn; (même format que le fichier précédent).
+          </para>
+       </listitem>
+      </varlistentry>
+      <varlistentry>
+       <term><filename>&etc;/pam.d/fcron</filename> (or
+<filename>&etc;/pam.conf</filename>)</term>
+       <listitem>
+          <para>Fichier de configuration <productname>PAM</productname> pour
+            &fcron;. Voir &pam;(8) pour plus de détails.
+          </para>
+       </listitem>
+      </varlistentry>
+    </variablelist>
+  </refsect1>
+
+  &manpage-foot;
+
+</refentry>
+
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-parent-document:("fcron-doc.sgml" "book" "chapter" "sect1" "")
+End:
+-->
diff --git a/doc/fr/fdl.sgml b/doc/fr/fdl.sgml
new file mode 100644 (file)
index 0000000..fcd697b
--- /dev/null
@@ -0,0 +1,409 @@
+<appendix id="fdl">
+       <title>GNU Free Documentation License</title>
+<!-- - GNU Project - Free Software Foundation (FSF) -->
+<!-- LINK REV="made" HREF="mailto:webmasters@gnu.org" -->
+
+
+  <!-- sect1>
+    <title>GNU Free Documentation License</title -->
+
+       <para>Version 1.1, March 2000</para>
+
+       <blockquote>
+           <para>Copyright (C) 2000  Free Software Foundation, Inc. 59 Temple
+Place, Suite 330, Boston, MA  02111-1307  USA Everyone is permitted to copy and
+distribute verbatim copies of this license document, but changing it is not
+allowed.</para>
+       </blockquote>
+
+       <sect1 label="0" id="fdl-preamble">
+           <title>PREAMBLE</title>
+
+           <para>The purpose of this License is to make a manual, textbook, or
+other written document "free" in the sense of freedom: to assure everyone the
+effective freedom to copy and redistribute it, with or without modifying it,
+either commercially or noncommercially.  Secondarily, this License preserves for
+the author and publisher a way to get credit for their work, while not being
+considered responsible for modifications made by others.</para>
+
+           <para>This License is a kind of "copyleft", which means that
+derivative works of the document must themselves be free in the same sense.  It
+complements the GNU General Public License, which is a copyleft license designed
+for free software.</para>
+
+           <para>We have designed this License in order to use it for manuals
+for free software, because free software needs free documentation: a free
+program should come with manuals providing the same freedoms that the software
+does.  But this License is not limited to software manuals; it can be used for
+any textual work, regardless of subject matter or whether it is published as a
+printed book.  We recommend this License principally for works whose purpose is
+instruction or reference.</para>
+       </sect1>
+
+       <sect1 label="1" id="fdl-applicability">
+           <title>APPLICABILITY AND DEFINITIONS</title>
+
+           <para>This License applies to any manual or other work that contains
+a notice placed by the copyright holder saying it can be distributed under the
+terms of this License.  The "Document", below, refers to any such manual or
+work.  Any member of the public is a licensee, and is addressed as "you".</para>
+
+           <para>A "Modified Version" of the Document means any work containing
+the Document or a portion of it, either copied verbatim, or with modifications
+and/or translated into another language.</para>
+
+           <para>A "Secondary Section" is a named appendix or a front-matter
+section of the Document that deals exclusively with the relationship of the
+publishers or authors of the Document to the Document's overall subject (or to
+related matters) and contains nothing that could fall directly within that
+overall subject. (For example, if the Document is in part a textbook of
+mathematics, a Secondary Section may not explain any mathematics.) The
+relationship could be a matter of historical connection with the subject or with
+related matters, or of legal, commercial, philosophical, ethical or political
+position regarding them.</para>
+
+           <para>The "Invariant Sections" are certain Secondary Sections whose
+titles are designated, as being those of Invariant Sections, in the notice that
+says that the Document is released under this License.</para>
+
+           <para>The "Cover Texts" are certain short passages of text that are
+listed, as Front-Cover Texts or Back-Cover Texts, in the notice that says that
+the Document is released under this License.</para>
+
+           <para>A "Transparent" copy of the Document means a machine-readable
+copy, represented in a format whose specification is available to the general
+public, whose contents can be viewed and edited directly and straightforwardly
+with generic text editors or (for images composed of pixels) generic paint
+programs or (for drawings) some widely available drawing editor, and that is
+suitable for input to text formatters or for automatic translation to a variety
+of formats suitable for input to text formatters.  A copy made in an otherwise
+Transparent file format whose markup has been designed to thwart or discourage
+subsequent modification by readers is not Transparent.  A copy that is not
+"Transparent" is called "Opaque".</para>
+
+           <para>Examples of suitable formats for Transparent copies include
+plain ASCII without markup, Texinfo input format, LaTeX input format, SGML or
+XML using a publicly available DTD, and standard-conforming simple HTML designed
+for human modification. Opaque formats include PostScript, PDF, proprietary
+formats that can be read and edited only by proprietary word processors, SGML or
+XML for which the DTD and/or processing tools are not generally available, and
+the machine-generated HTML produced by some word processors for output purposes
+only.</para>
+
+           <para>The "Title Page" means, for a printed book, the title page
+itself, plus such following pages as are needed to hold, legibly, the material
+this License requires to appear in the title page. For works in formats which do
+not have any title page as such, "Title Page" means the text near the most
+prominent appearance of the work's title, preceding the beginning of the body of
+the text.</para>
+       </sect1>
+
+       <sect1 label="2" id="fdl-verbatim">
+           <title>VERBATIM COPYING</title>
+
+           <para>You may copy and distribute the Document in any medium, either
+commercially or noncommercially, provided that this License, the copyright
+notices, and the license notice saying this License applies to the Document are
+reproduced in all copies, and that you add no other conditions whatsoever to
+those of this License.  You may not use technical measures to obstruct or
+control the reading or further copying of the copies you make or distribute.
+However, you may accept compensation in exchange for copies.  If you distribute
+a large enough number of copies you must also follow the conditions in section
+3.</para>
+
+           <para>You may also lend copies, under the same conditions stated
+above, and you may publicly display copies.</para>
+       </sect1>
+
+       <sect1 label="3" id="fdl-copying">
+           <title>COPYING IN QUANTITY</title>
+
+           <para>If you publish printed copies of the Document numbering more
+than 100, and the Document's license notice requires Cover Texts, you must
+enclose the copies in covers that carry, clearly and legibly, all these Cover
+Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on the back
+cover.  Both covers must also clearly and legibly identify you as the publisher
+of these copies.  The front cover must present the full title with all words of
+the title equally prominent and visible.  You may add other material on the
+covers in addition.  Copying with changes limited to the covers, as long as they
+preserve the title of the Document and satisfy these conditions, can be treated
+as verbatim copying in other respects.</para>
+
+           <para>If the required texts for either cover are too voluminous to
+fit legibly, you should put the first ones listed (as many as fit reasonably) on
+the actual cover, and continue the rest onto adjacent pages.</para>
+
+           <para>If you publish or distribute Opaque copies of the Document
+numbering more than 100, you must either include a machine-readable Transparent
+copy along with each Opaque copy, or state in or with each Opaque copy a
+publicly-accessible computer-network location containing a complete Transparent
+copy of the Document, free of added material, which the general network-using
+public has access to download anonymously at no charge using public-standard
+network protocols.  If you use the latter option, you must take reasonably
+prudent steps, when you begin distribution of Opaque copies in quantity, to
+ensure that this Transparent copy will remain thus accessible at the stated
+location until at least one year after the last time you distribute an Opaque
+copy (directly or through your agents or retailers) of that edition to the
+public.</para>
+
+           <para>It is requested, but not required, that you contact the
+authors of the Document well before redistributing any large number of copies,
+to give them a chance to provide you with an updated version of the
+Document.</para>
+       </sect1>
+
+       <sect1 label="4" id="fdl-modifications">
+           <title>MODIFICATIONS</title>
+
+           <para>You may copy and distribute a Modified Version of the Document
+under the conditions of sections 2 and 3 above, provided that you release the
+Modified Version under precisely this License, with the Modified Version filling
+the role of the Document, thus licensing distribution and modification of the
+Modified Version to whoever possesses a copy of it.  In addition, you must do
+these things in the Modified Version:</para>
+
+           <orderedlist numeration="upperalpha">
+               <listitem><para>Use in the Title Page (and on the covers, if
+any) a title distinct from that of the Document, and from those of previous
+versions (which should, if there were any, be listed in the History section of
+the Document).  You may use the same title as a previous version if the original
+publisher of that version gives permission.</para>
+               </listitem>
+
+               <listitem><para>List on the Title Page, as authors, one or more
+persons or entities responsible for authorship of the modifications in the
+Modified Version, together with at least five of the principal authors of the
+Document (all of its principal authors, if it has less than five).</para>
+               </listitem>
+
+               <listitem><para>State on the Title page the name of the
+publisher of the Modified Version, as the publisher.</para>
+               </listitem>
+
+               <listitem><para>Preserve all the copyright notices of the
+Document.</para>
+               </listitem>
+
+               <listitem><para>Add an appropriate copyright notice for your
+modifications adjacent to the other copyright notices.</para>
+               </listitem>
+
+               <listitem><para>Include, immediately after the copyright
+notices, a license notice giving the public permission to use the Modified
+Version under the terms of this License, in the form shown in the Addendum
+below.</para>
+               </listitem>
+
+               <listitem><para>Preserve in that license notice the full lists
+of Invariant Sections and required Cover Texts given in the Document's license
+notice.</para>
+               </listitem>
+
+               <listitem><para>Include an unaltered copy of this
+License.</para>
+               </listitem>
+
+               <listitem><para>Preserve the section entitled "History", and its
+title, and add to it an item stating at least the title, year, new authors, and
+publisher of the Modified Version as given on the Title Page.  If there is no
+section entitled "History" in the Document, create one stating the title, year,
+authors, and publisher of the Document as given on its Title Page, then add an
+item describing the Modified Version as stated in the previous sentence.</para>
+               </listitem>
+
+               <listitem><para>Preserve the network location, if any, given in
+the Document for public access to a Transparent copy of the Document, and
+likewise the network locations given in the Document for previous versions it
+was based on.  These may be placed in the "History" section.  You may omit a
+network location for a work that was published at least four years before the
+Document itself, or if the original publisher of the version it refers to gives
+permission.</para>
+               </listitem>
+
+               <listitem><para>In any section entitled "Acknowledgements" or
+"Dedications", preserve the section's title, and preserve in the section all the
+substance and tone of each of the contributor acknowledgements and/or
+dedications given therein.</para>
+               </listitem>
+
+               <listitem><para>Preserve all the Invariant Sections of the
+Document, unaltered in their text and in their titles.  Section numbers or the
+equivalent are not considered part of the section titles.</para>
+               </listitem>
+
+               <listitem><para>Delete any section entitled "Endorsements".
+Such a section may not be included in the Modified Version.</para>
+               </listitem>
+
+               <listitem><para>Do not retitle any existing section as
+"Endorsements" or to conflict in title with any Invariant Section.</para>
+               </listitem>
+           </orderedlist>
+    
+           <para>If the Modified Version includes new front-matter sections or
+appendices that qualify as Secondary Sections and contain no material copied
+from the Document, you may at your option designate some or all of these
+sections as invariant.  To do this, add their titles to the list of Invariant
+Sections in the Modified Version's license notice.  These titles must be
+distinct from any other section titles.</para>
+
+           <para>You may add a section entitled "Endorsements", provided it
+contains nothing but endorsements of your Modified Version by various
+parties--for example, statements of peer review or that the text has been
+approved by an organization as the authoritative definition of a
+standard.</para>
+
+           <para>You may add a passage of up to five words as a Front-Cover
+Text, and a passage of up to 25 words as a Back-Cover Text, to the end of the
+list of Cover Texts in the Modified Version.  Only one passage of Front-Cover
+Text and one of Back-Cover Text may be added by (or through arrangements made
+by) any one entity.  If the Document already includes a cover text for the same
+cover, previously added by you or by arrangement made by the same entity you are
+acting on behalf of, you may not add another; but you may replace the old one,
+on explicit permission from the previous publisher that added the old
+one.</para>
+
+           <para>The author(s) and publisher(s) of the Document do not by this
+License give permission to use their names for publicity for or to assert or
+imply endorsement of any Modified Version.</para>
+       </sect1>
+
+       <sect1 label="5" id="fdl-combining">
+           <title>COMBINING DOCUMENTS</title>
+
+           <para>You may combine the Document with other documents released
+under this License, under the terms defined in section 4 above for modified
+versions, provided that you include in the combination all of the Invariant
+Sections of all of the original documents, unmodified, and list them all as
+Invariant Sections of your combined work in its license notice.</para>
+
+           <para>The combined work need only contain one copy of this License,
+and multiple identical Invariant Sections may be replaced with a single copy.
+If there are multiple Invariant Sections with the same name but different
+contents, make the title of each such section unique by adding at the end of it,
+in parentheses, the name of the original author or publisher of that section if
+known, or else a unique number.  Make the same adjustment to the section titles
+in the list of Invariant Sections in the license notice of the combined
+work.</para>
+
+           <para>In the combination, you must combine any sections entitled
+"History" in the various original documents, forming one section entitled
+"History"; likewise combine any sections entitled "Acknowledgements", and any
+sections entitled "Dedications".  You must delete all sections entitled
+"Endorsements."</para>
+       </sect1>
+
+       <sect1 label="6" id="fdl-collections">
+           <title>COLLECTIONS OF DOCUMENTS</title>
+
+           <para>You may make a collection consisting of the Document and other
+documents released under this License, and replace the individual copies of this
+License in the various documents with a single copy that is included in the
+collection, provided that you follow the rules of this License for verbatim
+copying of each of the documents in all other respects.</para>
+
+           <para>You may extract a single document from such a collection, and
+distribute it individually under this License, provided you insert a copy of
+this License into the extracted document, and follow this License in all other
+respects regarding verbatim copying of that document.</para>
+       </sect1>
+
+       <sect1 label="7" id="fdl-aggregation">
+           <title>AGGREGATION WITH INDEPENDENT WORKS</title>
+    
+           <para>A compilation of the Document or its derivatives with other
+separate and independent documents or works, in or on a volume of a storage or
+distribution medium, does not as a whole count as a Modified Version of the
+Document, provided no compilation copyright is claimed for the compilation.
+Such a compilation is called an "aggregate", and this License does not apply to
+the other self-contained works thus compiled with the Document, on account of
+their being thus compiled, if they are not themselves derivative works of the
+Document.</para>
+
+           <para>If the Cover Text requirement of section 3 is applicable to
+these copies of the Document, then if the Document is less than one quarter of
+the entire aggregate, the Document's Cover Texts may be placed on covers that
+surround only the Document within the aggregate.  Otherwise they must appear on
+covers around the whole aggregate.</para>
+       </sect1>
+
+       <sect1 label="8" id="fdl-translation">
+           <title>TRANSLATION</title>
+
+           <para>Translation is considered a kind of modification, so you may
+distribute translations of the Document under the terms of section 4.  Replacing
+Invariant Sections with translations requires special permission from their
+copyright holders, but you may include translations of some or all Invariant
+Sections in addition to the original versions of these Invariant Sections.  You
+may include a translation of this License provided that you also include the
+original English version of this License.  In case of a disagreement between the
+translation and the original English version of this License, the original
+English version will prevail.</para>
+       </sect1>
+
+       <sect1 label="9" id="fdl-termination">
+           <title>TERMINATION</title>
+    
+           <para>You may not copy, modify, sublicense, or distribute the
+Document except as expressly provided for under this License.  Any other attempt
+to copy, modify, sublicense or distribute the Document is void, and will
+automatically terminate your rights under this License.  However, parties who
+have received copies, or rights, from you under this License will not have their
+licenses terminated so long as such parties remain in full compliance.</para>
+       </sect1>
+
+       <sect1 label="10" id="fdl-future">
+           <title>FUTURE REVISIONS OF THIS LICENSE</title>
+
+           <para>The Free Software Foundation may publish new, revised versions
+of the GNU Free Documentation License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to address
+new problems or concerns.  See <ulink
+url="http://www.gnu.org/copyleft/">http://www.gnu.org/copyleft/</ulink>.</para>
+
+           <para>Each version of the License is given a distinguishing version
+number.  If the Document specifies that a particular numbered version of this
+License "or any later version" applies to it, you have the option of following
+the terms and conditions either of that specified version or of any later
+version that has been published (not as a draft) by the Free Software
+Foundation. If the Document does not specify a version number of this License,
+you may choose any version ever published (not as a draft) by the Free Software
+Foundation.</para>
+       </sect1>
+
+       <sect1 label="" id="fdl-howto">
+           <title>How to use this License for your documents</title>
+
+           <para>To use this License in a document you have written, include a
+copy of the License in the document and put the following copyright and license
+notices just after the title page:</para>
+
+           <blockquote><para>
+      Copyright (c)  YEAR  YOUR NAME. 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; with the Invariant Sections being LIST THEIR TITLES, with the
+Front-Cover Texts being LIST, and with the Back-Cover Texts being LIST. A copy
+of the license is included in the section entitled "GNU Free Documentation
+License".
+</para></blockquote>
+
+           <para>If you have no Invariant Sections, write "with no Invariant
+Sections" instead of saying which ones are invariant.  If you have no
+Front-Cover Texts, write "no Front-Cover Texts" instead of "Front-Cover Texts
+being LIST"; likewise for Back-Cover Texts.</para>
+
+           <para>If your document contains nontrivial examples of program code,
+we recommend releasing these examples in parallel under your choice of free
+software license, such as the GNU General Public License, to permit their use in
+free software.</para>
+       </sect1>
+
+</appendix>
+
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-parent-document:("fcron-doc.sgml" "book" "appendix" "")
+End:
+-->
diff --git a/doc/fr/gpl.sgml b/doc/fr/gpl.sgml
new file mode 100644 (file)
index 0000000..8eaa223
--- /dev/null
@@ -0,0 +1,339 @@
+<appendix id="gpl">
+       <title>GNU GENERAL PUBLIC LICENSE</title>
+
+       <para>Version 2, June 1991</para>
+
+       <blockquote>
+           <para>Copyright (C) 1989, 1991 Free Software Foundation, Inc. 59
+Temple Place - Suite 330, Boston, MA  02111-1307, USA Everyone is permitted to
+copy and distribute verbatim copies of this license document, but changing it is
+not allowed.</para>
+       </blockquote>
+
+       <sect1 label="0" id="gpl-preamble">
+           <title>PREAMBLE</title>
+
+           <para>The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public License is
+intended to guarantee your freedom to share and change free software--to make
+sure the software is free for all its users. This General Public License applies
+to most of the Free Software Foundation's software and to any other program
+whose authors commit to using it. (Some other Free Software Foundation software
+is covered by the GNU Library General Public License instead.) You can apply it
+to your programs, too.</para>
+           <para>
+When we speak of free software, we are referring to freedom, not price. Our
+General Public Licenses are designed to make sure that you have the freedom to
+distribute copies of free software (and charge for this service if you wish),
+that you receive source code or can get it if you want it, that you can change
+the software or use pieces of it in new free programs; and that you know you can
+do these things.</para>
+           <para>
+To protect your rights, we need to make restrictions that forbid anyone to deny
+you these rights or to ask you to surrender the rights. These restrictions
+translate to certain responsibilities for you if you distribute copies of the
+software, or if you modify it.</para>
+           <para>
+For example, if you distribute copies of such a program, whether gratis or for a
+fee, you must give the recipients all the rights that you have. You must make
+sure that they, too, receive or can get the source code. And you must show them
+these terms so they know their rights.</para>
+           <para>
+We protect your rights with two steps: (1) copyright the software, and (2) offer
+you this license which gives you legal permission to copy, distribute and/or
+modify the software.</para>
+           <para>
+Also, for each author's protection and ours, we want to make certain that
+everyone understands that there is no warranty for this free software. If the
+software is modified by someone else and passed on, we want its recipients to
+know that what they have is not the original, so that any problems introduced by
+others will not reflect on the original authors' reputations.</para>
+           <para>
+Finally, any free program is threatened constantly by software patents. We wish
+to avoid the danger that redistributors of a free program will individually
+obtain patent licenses, in effect making the program proprietary. To prevent
+this, we have made it clear that any patent must be licensed for everyone's free
+use or not licensed at all.</para>
+           <para>
+The precise terms and conditions for copying, distribution and modification
+follow.</para>
+
+       </sect1>
+
+       <sect1 label="1" id="gpl-terms">
+           <title>TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND
+MODIFICATION</title>
+
+           <para>0.  This License applies to any program or other work which
+contains a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License. The "Program", below, refers to
+any such program or work, and a "work based on the Program" means either the
+Program or any derivative work under copyright law: that is to say, a work
+containing the Program or a portion of it, either verbatim or with modifications
+and/or translated into another language. (Hereinafter, translation is included
+without limitation in the term "modification".) Each licensee is addressed as
+"you".</para>
+           <para>
+Activities other than copying, distribution and modification are not covered by
+this License; they are outside its scope. The act of running the Program is not
+restricted, and the output from the Program is covered only if its contents
+constitute a work based on the Program (independent of having been made by
+running the Program). Whether that is true depends on what the Program
+does.</para>
+           <para>
+1. You may copy and distribute verbatim copies of the Program's source code as
+you receive it, in any medium, provided that you conspicuously and appropriately
+publish on each copy an appropriate copyright notice and disclaimer of warranty;
+keep intact all the notices that refer to this License and to the absence of any
+warranty; and give any other recipients of the Program a copy of this License
+along with the Program.</para>
+           <para>
+You may charge a fee for the physical act of transferring a copy, and you may at
+your option offer warranty protection in exchange for a fee.</para>
+           <para>
+2. You may modify your copy or copies of the Program or any portion of it, thus
+forming a work based on the Program, and copy and distribute such modifications
+or work under the terms of Section 1 above, provided that you also meet all of
+these conditions:</para>
+           <para>
+    * a) You must cause the modified files to carry prominent notices stating
+that you changed the files and the date of any change.</para>
+           <para>
+    * b) You must cause any work that you distribute or publish, that in whole
+or in part contains or is derived from the Program or any part thereof, to be
+licensed as a whole at no charge to all third parties under the terms of this
+License.</para>
+           <para>
+    * c) If the modified program normally reads commands interactively when run,
+you must cause it, when started running for such interactive use in the most
+ordinary way, to print or display an announcement including an appropriate
+copyright notice and a notice that there is no warranty (or else, saying that
+you provide a warranty) and that users may redistribute the program under these
+conditions, and telling the user how to view a copy of this License. (Exception:
+if the Program itself is interactive but does not normally print such an
+announcement, your work based on the Program is not required to print an
+announcement.)</para>
+           <para>
+These requirements apply to the modified work as a whole. If identifiable
+sections of that work are not derived from the Program, and can be reasonably
+considered independent and separate works in themselves, then this License, and
+its terms, do not apply to those sections when you distribute them as separate
+works. But when you distribute the same sections as part of a whole which is a
+work based on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the entire whole,
+and thus to each and every part regardless of who wrote it.</para>
+           <para>
+Thus, it is not the intent of this section to claim rights or contest your
+rights to work written entirely by you; rather, the intent is to exercise the
+right to control the distribution of derivative or collective works based on the
+Program.</para>
+           <para>
+In addition, mere aggregation of another work not based on the Program with the
+Program (or with a work based on the Program) on a volume of a storage or
+distribution medium does not bring the other work under the scope of this
+License.</para>
+           <para>
+3. You may copy and distribute the Program (or a work based on it, under Section
+2) in object code or executable form under the terms of Sections 1 and 2 above
+provided that you also do one of the following:</para>
+           <para>
+    * a) Accompany it with the complete corresponding machine-readable source
+code, which must be distributed under the terms of Sections 1 and 2 above on a
+medium customarily used for software interchange; or,</para>
+           <para>
+    * b) Accompany it with a written offer, valid for at least three years, to
+give any third party, for a charge no more than your cost of physically
+performing source distribution, a complete machine-readable copy of the
+corresponding source code, to be distributed under the terms of Sections 1 and 2
+above on a medium customarily used for software interchange; or,</para>
+           <para>
+    * c) Accompany it with the information you received as to the offer to
+distribute corresponding source code. (This alternative is allowed only for
+noncommercial distribution and only if you received the program in object code
+or executable form with such an offer, in accord with Subsection b
+above.)</para>
+           <para>
+The source code for a work means the preferred form of the work for making
+modifications to it. For an executable work, complete source code means all the
+source code for all modules it contains, plus any associated interface
+definition files, plus the scripts used to control compilation and installation
+of the executable. However, as a special exception, the source code distributed
+need not include anything that is normally distributed (in either source or
+binary form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component itself
+accompanies the executable.</para>
+           <para>
+If distribution of executable or object code is made by offering access to copy
+from a designated place, then offering equivalent access to copy the source code
+from the same place counts as distribution of the source code, even though third
+parties are not compelled to copy the source along with the object code.</para>
+           <para>
+4. You may not copy, modify, sublicense, or distribute the Program except as
+expressly provided under this License. Any attempt otherwise to copy, modify,
+sublicense or distribute the Program is void, and will automatically terminate
+your rights under this License. However, parties who have received copies, or
+rights, from you under this License will not have their licenses terminated so
+long as such parties remain in full compliance.</para>
+           <para>
+5. You are not required to accept this License, since you have not signed it.
+However, nothing else grants you permission to modify or distribute the Program
+or its derivative works. These actions are prohibited by law if you do not
+accept this License. Therefore, by modifying or distributing the Program (or any
+work based on the Program), you indicate your acceptance of this License to do
+so, and all its terms and conditions for copying, distributing or modifying the
+Program or works based on it.</para>
+           <para>
+6. Each time you redistribute the Program (or any work based on the Program),
+the recipient automatically receives a license from the original licensor to
+copy, distribute or modify the Program subject to these terms and conditions.
+You may not impose any further restrictions on the recipients' exercise of the
+rights granted herein. You are not responsible for enforcing compliance by third
+parties to this License.</para>
+           <para>
+7. If, as a consequence of a court judgment or allegation of patent infringement
+or for any other reason (not limited to patent issues), conditions are imposed
+on you (whether by court order, agreement or otherwise) that contradict the
+conditions of this License, they do not excuse you from the conditions of this
+License. If you cannot distribute so as to satisfy simultaneously your
+obligations under this License and any other pertinent obligations, then as a
+consequence you may not distribute the Program at all. For example, if a patent
+license would not permit royalty-free redistribution of the Program by all those
+who receive copies directly or indirectly through you, then the only way you
+could satisfy both it and this License would be to refrain entirely from
+distribution of the Program.</para>
+           <para>
+If any portion of this section is held invalid or unenforceable under any
+particular circumstance, the balance of the section is intended to apply and the
+section as a whole is intended to apply in other circumstances.</para>
+           <para>
+It is not the purpose of this section to induce you to infringe any patents or
+other property right claims or to contest validity of any such claims; this
+section has the sole purpose of protecting the integrity of the free software
+distribution system, which is implemented by public license practices. Many
+people have made generous contributions to the wide range of software
+distributed through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing to
+distribute software through any other system and a licensee cannot impose that
+choice.</para>
+           <para>
+This section is intended to make thoroughly clear what is believed to be a
+consequence of the rest of this License.</para>
+           <para>
+8. If the distribution and/or use of the Program is restricted in certain
+countries either by patents or by copyrighted interfaces, the original copyright
+holder who places the Program under this License may add an explicit
+geographical distribution limitation excluding those countries, so that
+distribution is permitted only in or among countries not thus excluded. In such
+case, this License incorporates the limitation as if written in the body of this
+License.</para>
+           <para>
+9. The Free Software Foundation may publish revised and/or new versions of the
+General Public License from time to time. Such new versions will be similar in
+spirit to the present version, but may differ in detail to address new problems
+or concerns.</para>
+           <para>
+Each version is given a distinguishing version number. If the Program specifies
+a version number of this License which applies to it and "any later version",
+you have the option of following the terms and conditions either of that version
+or of any later version published by the Free Software Foundation. If the
+Program does not specify a version number of this License, you may choose any
+version ever published by the Free Software Foundation.</para>
+           <para>
+10. If you wish to incorporate parts of the Program into other free programs
+whose distribution conditions are different, write to the author to ask for
+permission. For software which is copyrighted by the Free Software Foundation,
+write to the Free Software Foundation; we sometimes make exceptions for this.
+Our decision will be guided by the two goals of preserving the free status of
+all derivatives of our free software and of promoting the sharing and reuse of
+software generally.</para>
+           <para>
+NO WARRANTY</para>
+           <para>
+11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE
+PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED
+IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS
+IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT
+NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
+PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
+PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
+ALL NECESSARY SERVICING, REPAIR OR CORRECTION.</para>
+           <para>
+12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL
+ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE
+PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL,
+SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY
+TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
+RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF
+THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER
+PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.</para>
+           <para>END OF TERMS AND CONDITIONS</para>
+       </sect1>
+
+       <sect1 label="" id="gpl-howto">
+           <title>How to use this License for your documents</title>
+
+           <para> If you develop a new program, and you want it to be of the
+greatest possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these
+terms.</para>
+           <para>To do so, attach the following notices to the program. It is
+safest to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least the
+"copyright" line and a pointer to where the full notice is found.</para>
+
+           <blockquote><para>
+<replaceable>one line to give the program's name and an idea of what it
+does.</replaceable> Copyright (C) <replaceable>yyyy</replaceable> name of author
+This program is free software; you can redistribute it and/or modify it under
+the terms of the GNU General Public License as published by the Free Software
+Foundation; either version 2 of the License, or (at your option) any later
+version. This program is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more
+details. You should have received a copy of the GNU General Public License along
+with this program; if not, write to the Free Software Foundation, Inc., 59
+Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+</para></blockquote>
+
+           <para>Also add information on how to contact you by electronic and
+paper mail.</para>
+
+           <para>If the program is interactive, make it output a short notice
+like this when it starts in an interactive mode:</para>
+           <screen>Gnomovision version 69, Copyright (C) year name of author
+Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.  This
+is free software, and you are welcome to redistribute it under certain
+conditions; type `show c' for details.
+</screen>
+           <para>The hypothetical commands `<command>show w</command>' and
+`<command>show c</command>' should show the appropriate parts of the General
+Public License. Of course, the commands you use may be called something other
+than `<command>show w</command>' and `<command>show c</command>'; they could
+even be mouse-clicks or menu items--whatever suits your program.</para>
+           <para>You should also get your employer (if you work as a
+programmer) or your school, if any, to sign a "copyright disclaimer" for the
+program, if necessary. Here is a sample; alter the names:</para>
+           <blockquote>
+               <para>Yoyodyne, Inc., hereby disclaims all copyright interest in
+the program `Gnomovision' (which makes passes at compilers) written by James
+Hacker.</para>
+               <para><replaceable>signature of Ty Coon</replaceable>, 1 April
+1989 Ty Coon, President of Vice</para>
+           </blockquote>
+
+           <para>This General Public License does not permit incorporating your
+program into proprietary programs. If your program is a subroutine library, you
+may consider it more useful to permit linking proprietary applications with the
+library. If this is what you want to do, use the GNU Library General Public
+License instead of this License.</para>
+
+       </sect1>
+
+</appendix>
+
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-parent-document:("fcron-doc.sgml" "book" "appendix" "")
+End:
+-->
diff --git a/doc/fr/install.sgml b/doc/fr/install.sgml
new file mode 100644 (file)
index 0000000..030f851
--- /dev/null
@@ -0,0 +1,150 @@
+<!-- 
+Fcron documentation
+Copyright 2000-2006 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.
+-->
+
+<!-- $Id: install.sgml,v 1.1 2006-02-05 19:25:54 thib Exp $ -->
+
+<sect1 id="install">
+    <title>How to install fcron</title>
+    <itemizedlist>
+       <listitem>
+           <para>uncompress the archive:</para>
+           <screen><prompt>bash$ </prompt><command>
+tar -xzf fcron-X.Y.Z.src.tar.gz</command></screen>
+       </listitem>
+       <listitem>
+           <para>cd to the archive directory</para>
+           <screen><prompt>bash$ </prompt><command>cd fcron-X.Y.Z</command></screen>
+       </listitem>
+       <listitem>
+           <para>run the <command>configure</command> script:</para>
+           <screen><prompt>bash$
+</prompt><command>./configure</command></screen>
+           <para>
+               <note>
+                   <itemizedlist>
+                       <listitem>
+                           <para>
+                               The command <command>make install</command> asks
+you by default some questions you have to answer. To avoid that (which can be
+useful for automatic installers), you can use the
+<command>./configure</command>'s option <option>--with-answer-all</option>
+and/or <option>--with-boot-install</option> (see "<command>./configure</command>
+<option>--help</option>" for more details).
+                           </para>
+                       </listitem>
+                       <listitem>
+                           <para>
+                               You may also want to change the place where
+&fcron; will be installed: you can use the <command>configure </command>'s
+option <option>--prefix</option> to do that. For instance:
+<command>./configure</command> <option>--prefix=/usr/local</option> (default is
+prefix=/usr)
+                           </para>
+                       </listitem>
+                       <listitem>
+                           <para>
+                               To disable the use of
+<productname>PAM</productname>, <productname>SE Linux</productname> or &fcrondyn;, use <command>configure</command>'s
+option <option>--with-pam=no</option>, <option>--with-selinux=no</option> 
+and/or <option>--with-fcrondyn=no</option>.</para>
+                       </listitem>
+                       <listitem>
+                           <para>To debug &fcron;, you should use
+<command>configure </command>'s option <option>--with-debug</option>.
+                           </para>
+                       </listitem>
+                       <listitem>
+                           <para>
+                               You can get info on the others
+<command>configure </command>'s options by running
+"<command>./configure</command> <option>--help</option>".
+                           </para>
+                       </listitem>
+                   </itemizedlist>
+               </note>
+               <warning>
+                   <itemizedlist>
+                       <listitem>
+                           <para>
+                               The <command>configure</command> script may not
+define a correct directory for the man pages and the documentation on some
+systems. You may check the values defined by <command>configure</command> and if
+necessary force a value by the options <option>--mandir</option> and
+<option>-with-docdir </option> (see the help by running
+"<command>./configure</command> <option>--help</option>").
+                           </para>
+                       </listitem>
+                       <listitem>
+                           <para>
+                               If you get older &fcron;'s man-pages with
+<command>man</command> command after having upgraded, it's probably because
+&fcron; has changed its default man directory: you should remove manually the
+outdated man-pages.
+                           </para>
+                       </listitem>
+                       <listitem>
+                           <para>
+                               The <filename>Makefile</filename> has been
+designed for <application>GNU make</application>. Some other version of
+<command>make</command> may fail to use it.
+                           </para>
+                       </listitem>
+                   </itemizedlist>
+               </warning>
+           </para>
+       </listitem>
+
+       <listitem>
+           <para><emphasis>(optional)</emphasis> check the file
+<filename>config.h</filename>, and change it if necessary (the configurable part
+is on the top of the file and clearly delimited).</para>
+       </listitem>
+
+       <listitem>
+           <para>compile:</para>
+           <screen><prompt>bash$ </prompt><command>make</command></screen>
+       </listitem>
+
+       <listitem>
+           <para>then install binaries as root:</para>
+           <screen><prompt>bash$ </prompt><command>su root</command></screen>
+           <screen><prompt>bash# </prompt><command>make install</command></screen>
+       </listitem>
+    </itemizedlist>
+    <para>You can now run <command>fcron</command> and
+<command>fcrontab</command>.</para>
+    <note>
+       <itemizedlist>
+           <listitem>
+               <para>
+                       This is a <productname>POSIX</productname> conforming
+software. You must have a <productname>POSIX</productname> compiler
+(<application>gcc</application> for example) in order to compile it.
+                   </para>
+           </listitem>
+           <listitem>
+               <para>
+                       This software has been written for
+<productname>GNU/Linux</productname> systems. If you want to port it on an other
+<productname>Unix</productname> platform (thank you if you do it), try to modify
+- if possible - only the <application>configure</application> script. Please
+send me any modifications at &email; in order to include it in future releases.
+                   </para>
+           </listitem>
+       </itemizedlist>
+    </note>
+</sect1>
+
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-parent-document:("fcron-doc.sgml" "book" "chapter" "sect1" "")
+End:
+-->
diff --git a/doc/fr/manpage-foot.sgml b/doc/fr/manpage-foot.sgml
new file mode 100644 (file)
index 0000000..193b959
--- /dev/null
@@ -0,0 +1,43 @@
+<!-- 
+Fcron documentation
+Copyright 2000-2004 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.
+-->
+
+<!-- $Id: manpage-foot.sgml,v 1.1 2006-02-05 19:26:07 thib Exp $ -->
+
+  <refsect1>
+    <title>Voir aussi</title>
+    <simplelist>
+      <member><link linkend="fcrontab.1">&fcrontab;(1),</link></member>
+      <member><link linkend="fcrondyn.1">&fcrondyn;(1),</link></member>
+      <member><link linkend="fcrontab.5">&fcrontab;(5),</link></member>
+      <member><link linkend="fcron.conf.5">&fcron.conf;(5),</link></member>
+      <member><link linkend="fcron.8">&fcron;(8).</link></member>
+      <member>Si vous êtes en train d'apprendre à utiliser fcron, je vous
+suggère plutôt de lire la version HTML de la documentation (si ce n'est pas
+déjà ce que vous faites en ce moment&nbsp;! :) )&nbsp;: le contenu est le même, mais
+il est plus aisé de naviguer grâce aux hyperliens.</member>
+    </simplelist>
+  </refsect1>
+
+  <refsect1>
+    <title>Auteur</title>
+    <para>Thibault Godouet &email;</para>
+  </refsect1>
+
+  <refsect1>
+         <title>Traduction</title>
+         <para>Alain Portal &lt;aportal AT univ-montp2 DOT fr&gt;, 2006.</para>
+  </refsect1>
+
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-parent-document:("fcron-doc.sgml" "book" "chapter" "sect1" "refentry" "")
+End:
+-->
\ No newline at end of file
diff --git a/doc/fr/readme.sgml b/doc/fr/readme.sgml
new file mode 100644 (file)
index 0000000..d3e07ed
--- /dev/null
@@ -0,0 +1,153 @@
+<!-- 
+Fcron documentation
+Copyright 2000-2006 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.
+-->
+
+<!-- $Id: readme.sgml,v 1.1 2006-02-05 19:26:35 thib Exp $ -->
+
+<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 not running neither 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 hour and to make it run a
+command according to its time of execution, which is normally the same as system
+up time. 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:
+-->
diff --git a/doc/fr/relnotes.sgml b/doc/fr/relnotes.sgml
new file mode 100644 (file)
index 0000000..5260e58
--- /dev/null
@@ -0,0 +1,31 @@
+<!-- 
+Fcron documentation
+Copyright 2000-2006 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.
+-->
+
+<!-- $Id: relnotes.sgml,v 1.1 2006-02-05 19:25:50 thib Exp $ -->
+
+<sect1 id="relnotes">
+    <title>Release notes: &fcron; &version;</title>
+    <itemizedlist>
+        <listitem>
+           <para>PAM support has not been tested thoroughly. Help from a PAM
+              expert would be appreciated (to audit the PAM code in fcron, and
+              test it). You can disable PAM use in configure, using
+              "--with-pam=no".</para>
+        </listitem>
+    </itemizedlist>
+</sect1>
+
+
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-parent-document:("fcron-doc.sgml" "book" "chapter" "sect1" "")
+End:
+-->
diff --git a/doc/fr/thanks.sgml b/doc/fr/thanks.sgml
new file mode 100644 (file)
index 0000000..39f38b1
--- /dev/null
@@ -0,0 +1,94 @@
+<!-- 
+Fcron documentation
+Copyright 2000-2006 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.
+-->
+
+<!-- $Id: thanks.sgml,v 1.1 2006-02-05 19:25:27 thib Exp $ -->
+
+<sect1 id="thanks">
+    <title>Thanks</title>
+    <variablelist>
+       <varlistentry>
+           <term>Uwe Ohse <email>uwe@ohse.de</email></term>
+           <listitem>
+               <para>Corrected a bug concerning the signals, has reported
+security issues.</para>
+           </listitem>
+       </varlistentry>
+       <varlistentry>
+           <term>Max Heijndijk <email>cchq@wanadoo.nl</email></term>
+           <listitem>
+               <para>Has made the rpm packages.</para>
+           </listitem>
+       </varlistentry>
+       <varlistentry>
+           <term>Gabor Z. Papp <email>gzp@papp.hu</email></term>
+           <listitem>
+               <para>Helped to correct some bugs in installation process and
+reported various bugs.</para>
+           </listitem>
+       </varlistentry>
+       <varlistentry>
+           <term>Clemens Fischer <email>rabat@web.de</email></term>
+           <listitem>
+               <para>Proofread docs, reported bugs, and made some
+propositions.</para>
+           </listitem>
+       </varlistentry>
+       <varlistentry>
+           <term>Henrique de Moraes Holschuh
+<email>hmh@debian.org</email></term>
+           <listitem>
+               <para>Has worked on fcron's integration in Linux Debian system,
+reported bugs and corrected some of them, made some propositions.</para>
+           </listitem>
+       </varlistentry>
+       <varlistentry>
+           <term>Thomas Whateley <email>thomas@whateley.net</email></term>
+           <listitem>
+               <para>Has done a big part of Solaris port, implemented the
+fcron.conf file, and Vixie crontab format support.</para>
+           </listitem>
+       </varlistentry>
+       <varlistentry>
+           <term>Guy Geens <email>ggeens@iname.com</email></term>
+           <listitem>
+               <para>Fixed a nasty bug in goto_non_matching() which caused an
+endless loop (midmonthly jobs executed after the 15th of the month).</para>
+           </listitem>
+       </varlistentry>
+       <varlistentry>
+           <term>Patrick Ohly <email>Patrick.Ohly@gmx.de</email></term>
+           <listitem>
+               <para>Added fcron's option -y, -o and -l, and fcrontab's stdout
+and volatile, in order to run fcron from time to time in foreground, for
+instance in a ppp-up script.</para>
+           </listitem>
+       </varlistentry>
+       <varlistentry>
+           <term>Russell Coker <email>russell@coker.com.au</email></term>
+           <listitem>
+               <para>Helped me to secure fcron, make code clearer,
+and he wrote the patch for SE Linux support.</para>
+           </listitem>
+       </varlistentry>
+       <varlistentry>
+           <term>Alain Portal</term>
+           <listitem>
+               <para>Initial French translation of the manual pages.</para>
+           </listitem>
+       </varlistentry>
+    </variablelist>
+</sect1>
+
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-parent-document:("fcron-doc.sgml" "book" "chapter" "sect1" "")
+End:
+-->
diff --git a/doc/fr/todo.sgml b/doc/fr/todo.sgml
new file mode 100644 (file)
index 0000000..8dbddac
--- /dev/null
@@ -0,0 +1,129 @@
+<!-- 
+Fcron documentation
+Copyright 2000-2006 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.
+-->
+
+<!-- $Id: todo.sgml,v 1.1 2006-02-05 19:25:58 thib Exp $ -->
+
+   <sect1 id="todo">
+      <title>Todo</title>
+      <para>Here are some things that should be done ... Note that some of these
+        entries are just some ideas, which <emphasis>may</emphasis> be done in
+        the long run.</para> 
+      <para>If you see something you'd really like to see implemented here, feel
+        free to send me a mail: it may make me move it to the top of my to-do list ;) .
+      </para>
+      <para>If you plan to help me, please send a mail at &email; to prevent two
+        people from doing the same thing. You can send me some propositions as
+        well, or ask me to move something to the top of the heap ;) .</para>
+      <sect2>
+        <title>High priority</title>
+        <itemizedlist>
+           <listitem>
+              <para>test the fix for empty mails on non linux systems (solaris seems ok, feedback on BSD?) (starting from fcron 2.9.7 -- no complain so far, so fixed?)</para>
+           </listitem>
+           <listitem>
+              <para>bug fix: what happens if the grand-child cannot be forked or cannot run the job in job.c? + better loop to read/write the pid of grand-child from/by the child (fcron freezes if the filesystem on which it operates has no space left? (cannot reproduce it on my linux system)</para>
+           </listitem>
+           <listitem>
+              <para>set TZ env. var. for jobs for which option tz is used.</para>
+           </listitem>
+        </itemizedlist>
+      </sect2>
+      <sect2>
+        <title>Low priority</title>
+        <itemizedlist>
+           <listitem>
+              <para>code cleaning: create a .c/.h file for data structures
+                 (file/line lists, serial queue, lavg list, exe list),
+                 and work with them only through functions/macros.
+              + secure equivalent to str[n]{cat|copy|...}</para>
+              <para>Note: may introduce bugs, so it will be done in fcron 3.1.x, and needs to be tested thoroughly..</para>
+           </listitem>
+           <listitem>
+              <para>Mem footprint reduction: use an/some union(s) in CL struct.</para>
+           </listitem>
+           <listitem>
+              <para>For environment settings, make a var substitution.</para>
+           </listitem>
+           <listitem>
+              <para>add a return code for jobs which would mean that they
+                 should not be run again (in case of an error, etc...).</para>
+           </listitem>
+           <listitem>
+              <para>Use directory notifications (FAM), and support a fcrontab 
+              and a cron.d as Vixie cron does (directly included in fcron itself, not thanks to a script as now).</para>
+           </listitem>
+           <listitem>
+              <para>PAM support (included in fcron, but needs more tests by
+                 people using PAM - not implemented in fcrondyn: is it needed
+                 in fcrondyn anyway?)</para>
+           </listitem>
+           <listitem>
+              <para>support for per user serial queue (especially for root)</para>
+           </listitem>
+           <listitem>
+              <para>use readline (if available) for fcrondyn.</para>
+           </listitem>
+           <listitem>
+              <para>add a mailsubject option, for custom mail subjects (for instance, in case of a job containing something secret -- password, etc -- in the command line).</para>
+           </listitem>
+        </itemizedlist>
+      </sect2>
+      <sect2>
+        <title>Ideas</title>
+        <itemizedlist>
+           <listitem>
+              <para>add a system of modules: at startup, fcron loads some
+                 modules (.so files). Then, when fcron should run the job, it
+                 calls a function of the module, and let it manage the job
+                 (threads?). (do linux dlopen(), etc exist on other systems?
+                 - yes: thanks Harring ;) dlopen exists on all POSIX system -
+                 even windoze - abait it does not use the same insterface of
+                 function calls. But it can be easily implemented to port to
+                 another system.).</para>
+           </listitem>
+           <listitem>
+              <para>(related to the system of modules? create a kind of
+                 dependencies?)  Add a way to run a job only if a command
+                 returns true. It would permit, for instance, to run some jobs
+                 on a laptop only if it is on AC power.</para>
+              <para>and depending on the return value of the command, cancel
+                 the execution, or wait x seconds before trying again, etc. 
+              In this case, needs change the way the jobs are queued?</para>
+           </listitem>
+           <listitem>
+              <para>add an option/module to prevent fcron from running a job if the
+                 system is running on battery (anacron does it?)</para>
+           </listitem>
+           <listitem>
+              <para>Add a way to stop a job (SIGSTOP) if the lavg gets to high,
+                 and restart it (SIGCONT) when the lavg has decreased.</para>
+           </listitem>
+           <listitem>
+              <para>Add a timeout for task completion: if a task takes more
+                 than a specified timeout, then start another script with the
+                 initial task PID as argument.  That would allow a kill with
+                 different signals (-HUP, -TERM -STOP, .... or any other action
+                 like sending a mail to sysadmin to alert him/her that a task
+                 is taking too much time and that he has to have a look at it.)
+                 (add an option to specify the cmd, and combine w/ option until)
+              </para>
+           </listitem>
+        </itemizedlist>
+      </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:
+-->
+   
\ No newline at end of file