Manually run an Anacron Job

11,557

You can 'force run' an anacron job by ignoring its timestamps;

anacron -f

Other options like -n can also be used if you wish.

From man anacron:

 -f     Force execution of the jobs, ignoring the timestamps.

 -s     Serialize  execution  of jobs.  Anacron will not start a new job
              before the previous one finished.

 -n     Run  jobs  now.   Ignore  the  delay   specifications   in   the
              /etc/anacrontab file.  This options implies -s.

You can view the logs in /var/log/syslog.

The timestamp for each job is stored in /var/spool/anacron.

Share:
11,557

Related videos on Youtube

Siddharth Manthan
Author by

Siddharth Manthan

Updated on September 18, 2022

Comments

  • Siddharth Manthan
    Siddharth Manthan almost 2 years

    I have performed a minimal installation of UBUNTU. I trying to configure my system to take automatic backups using rsnapshot. I have successfully configured my rsnapshot.conf file and by running rsnapshot weekly command in terminal I am getting the desired results.

    Here is my rsnapshot.conf file :

    #################################################
    # rsnapshot.conf - rsnapshot configuration file #
    #################################################
    #                                               #
    # PLEASE BE AWARE OF THE FOLLOWING RULE:        #
    #                                               #
    # This file requires tabs between elements      #
    #                                               #
    #################################################
    
    #######################
    # CONFIG FILE VERSION #
    #######################
    
    config_version  1.2
    
    ###########################
    # SNAPSHOT ROOT DIRECTORY #
    ###########################
    
    # All snapshots will be stored under this root directory.
    #
    snapshot_root   /media/siddharth/Backup/Backup
    
    # If no_create_root is enabled, rsnapshot will not automatically create the
    # snapshot_root directory. This is particularly useful if you are backing
    # up to removable media, such as a FireWire or USB drive.
    #
    # no_create_root    1
    
    #################################
    # EXTERNAL PROGRAM DEPENDENCIES #
    #################################
    
    # LINUX USERS:   Be sure to uncomment "cmd_cp". This gives you extra features.
    # EVERYONE ELSE: Leave "cmd_cp" commented out for compatibility.
    #
    # See the README file or the man page for more details.
    #
    cmd_cp  /bin/cp
    
    # uncomment this to use the rm program instead of the built-in perl routine.
    #
    cmd_rm  /bin/rm
    
    # rsync must be enabled for anything to work. This is the only command that
    # must be enabled.
    #
    cmd_rsync   /usr/bin/rsync
    
    # Uncomment this to enable remote ssh backups over rsync.
    #
    #cmd_ssh    /usr/bin/ssh
    
    # Comment this out to disable syslog support.
    #
    cmd_logger  /usr/bin/logger
    
    # Uncomment this to specify the path to "du" for disk usage checks.
    # If you have an older version of "du", you may also want to check the
    # "du_args" parameter below.
    #
    cmd_du  /usr/bin/du
    
    # Uncomment this to specify the path to rsnapshot-diff.
    #
    cmd_rsnapshot_diff  /usr/bin/rsnapshot-diff
    
    # Specify the path to a script (and any optional arguments) to run right
    # before rsnapshot syncs files
    #
    #cmd_preexec    /path/to/preexec/script
    
    # Specify the path to a script (and any optional arguments) to run right
    # after rsnapshot syncs files
    #
    #cmd_postexec   /path/to/postexec/script
    
    # Paths to lvcreate, lvremove, mount and umount commands, for use with
    # Linux LVMs.
    #
    #linux_lvm_cmd_lvcreate /sbin/lvcreate
    #linux_lvm_cmd_lvremove /sbin/lvremove
    #linux_lvm_cmd_mount    /bin/mount
    #linux_lvm_cmd_umount   /bin/umount
    
    #########################################
    #     BACKUP LEVELS / INTERVALS         #
    # Must be unique and in ascending order #
    # e.g. alpha, beta, gamma, etc.         #
    #########################################
    retain  weekly  1           #
    #retain alpha   6
    #retain beta    7
    #retain gamma   4
    #retain delta   3
    
    ############################################
    #              GLOBAL OPTIONS              #
    # All are optional, with sensible defaults #
    ############################################
    
    # Verbose level, 1 through 5.
    # 1     Quiet           Print fatal errors only
    # 2     Default         Print errors and warnings only
    # 3     Verbose         Show equivalent shconfig_version    1.2ell commands being executed
    # 4     Extra Verbose   Show extra verbose information
    # 5     Debug mode      Everything
    #
    verbose 2
    
    # Same as "verbose" above, but controls the amount of data sent to the
    # logfile, if one is being used. The default is 3.
    #
    loglevel    3
    
    # If you enable this, data will be written to the file you specify. The
    # amount of data written is controlled by the "loglevel" parameter.
    #
    logfile /media/siddharth/Backup/Backup/Logs/Snapshot.log
    
    # If enabled, rsnapshot will write a lockfile to prevent two instances
    # from running simultaneously (and messing up the snapshot_root).
    # If you enable this, make sure the lockfile directory is not world
    # writable. Otherwise anyone can prevent the program from running.
    #
    lockfile    /var/run/rsnapshot.pid
    
    # By default, rsnapshot check lockfile, check if PID is running
    # and if not, consider lockfile as stale, then start
    # Enabling this stop rsnapshot if PID in lockfile is not running
    #
    #stop_on_stale_lockfile     0
    
    # Default rsync args. All rsync commands have at least these options set.
    #
    #rsync_short_args   -a
    #rsync_long_args    --delete        -relative   --numeric-ids   --delete-excluded
    
    # ssh has no args passed by default, but you can specify some here.
    #
    #ssh_args   -p 22
    
    # Default arguments for the "du" program (for disk space reporting).
    # The GNU version of "du" is preferred. See the man page for more details.
    # If your version of "du" doesn't support the -h flag, try -k flag instead.
    #
    #du_args    -csh
    
    # If this is enabled, rsync won't span filesystem partitions within a
    # backup point. This essentially passes the -x option to rsync.
    # The default is 0 (off).
    #
    #one_fs     0
    
    # The include and exclude parameters, if enabled, simply get passed directly
    # to rsync. If you have multiple include/exclude    # /etc/anacrontab: configuration file for anacron
    
    # See anacron(8) and anacrontab(5) for details.
    
    SHELL=/bin/sh
    PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
    HOME=/root
    LOGNAME=root
    
    # These replace cron's entries
    1   5   cron.daily  run-parts --report /etc/cron.daily
    7   10  cron.weekly run-parts --report /etc/cron.weekly
    @monthly    15  cron.monthly    run-parts --report /etc/cron.monthly
    7   5   backup.weekly   rsnapshot weekly >> /media/siddharth/Backup/Backup/Logs/Anacron/log patterns, put each one on a
    # separate line. Please look up the --include and --exclude options in the
    # rsync man page for more details on how to specify file name patterns. 
    # 
    #include    ???
    #exclude    ???
    #exclude    ???
    
    # The include_file and exclude_file parameters, if enabled, simply get
    # passed directly to rsync. Please look up the --include-from and
    # --exclude-from options in the rsync man page for more details.
    #
    # include_file  ???
    # exclude_file  ???
    
    # If your version of rsync supports --link-dest, consider enabling this.
    # This is the best way to support special files (FIFOs, etc) cross-platform.
    # The default is 0 (off).
    #
    link_dest   1
    
    # When sync_first is enabled, it changes the default behaviour of rsnapshot.
    # Normally, when rsnapshot is called with its lowest interval
    # (i.e.: "rsnapshot alpha"), it will sync files AND rotate the lowest
    # intervals. With sync_first enabled, "rsnapshot sync" handles the file sync,
    # and all interval calls simply rotate files. See the man page for more
    # details. The default is 0 (off).
    #
    # sync_first    1
    
    # If enabled, rsnapshot will move the oldest directory for each interval
    # to [interval_name].delete, then it will remove the lockfile and delete
    # that directory just before it exits. The default is 0 (off).
    #
    #use_lazy_deletes   0
    
    # Number of rsync re-tries. If you experience any network problems or
    # network card issues that tend to cause ssh to fail with errors like
    # "Corrupted MAC on input", for example, set this to a non-zero value
    # to have the rsync operation re-tried.
    #
    #rsync_numtries 0
    
    # LVM parameters. Used to backup with creating lvm snapshot before backup
    # and removing it after. This should ensure consistency of data in some special
    # cases
    #
    # LVM snapshot(s) size (lvcreate --size option).
    #
    #linux_lvm_snapshotsize 100M
    
    # Name to be used when creating the LVM logical volume snapshot(s).
    #
    #linux_lvm_snapshotname rsnapshot
    
    # Path to the LVM Volume Groups.
    #
    #linux_lvm_vgpath   /dev
    
    # Mount point to use to temporarily mount the snapshot(s).
    #
    #linux_lvm_mountpath    /path/to/mount/lvm/snapshot/during/backup
    
    ###############################
    ### BACKUP POINTS / SCRIPTS ###
    ###############################
    
    # LOCALHOST
    backup  /home/  User/
    backup  /etc/   Root/
    backup  /usr/local/ Root/
    backup  /var/cache/apt/ Root/
    backup  /etc/default/plexmediaserver    Root/
    backup  /etc/init/plexmediaserver.conf  Root/
    backup  /var/spool/anacron  Root/
    #backup /var/log/rsnapshot      localhost/
    #backup /etc/passwd localhost/
    #backup /home/foo/My Documents/     localhost/
    #backup /foo/bar/   localhost/  one_fs=1, rsync_short_args=-urltvpog
    #backup_script  /usr/local/bin/backup_pgsql.sh  localhost/postgres/
    # You must set linux_lvm_* parameters below before using lvm snapshots
    #backup lvm://vg0/xen-home/ lvm-vg0/xen-home/
    
    # EXAMPLE.COM
    #backup_exec    /bin/date "+ backup of example.com started at %c"
    #backup [email protected]:/home/ example.com/    +rsync_long_args=--bwlimit=16,exclude=core
    #backup [email protected]:/etc/  example.com/    exclude=mtab,exclude=core
    #backup_exec    ssh [email protected] "mysqldump -A > /var/db/dump/mysql.sql"
    #backup [email protected]:/var/db/dump/  example.com/
    #backup_exec    /bin/date "+ backup of example.com ended at %c"
    
    # CVS.SOURCEFORGE.NET
    #backup_script  /usr/local/bin/backup_rsnapshot_cvsroot.sh  rsnapshot.cvs.sourceforge.net/
    
    # RSYNC.SAMBA.ORG
    #backup rsync://rsync.samba.org/rsyncftp/   rsync.samba.org/rsyncftp/
    

    I created a weekly Anacron job in anacrontab file:

    # /etc/anacrontab: configuration file for anacron
    
    # See anacron(8) and anacrontab(5) for details.
    
    SHELL=/bin/sh
    PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
    HOME=/root
    LOGNAME=root
    
    # These replace cron's entries
    1   5   cron.daily  run-parts --report /etc/cron.daily
    7   10  cron.weekly run-parts --report /etc/cron.weekly
    @monthly    15  cron.monthly    run-parts --report /etc/cron.monthly
    7   5   backup.weekly   rsnapshot weekly >> /media/siddharth/Backup/Backup/Logs/Anacron/log
    

    How do I test whether Anacron will run this Job without any error.

    Most of the time I'll not be logged in. How do I test run Anacron ?

  • Siddharth Manthan
    Siddharth Manthan about 8 years
    Thanks ! It is perfect. I am able to run the backup job as expected. I hope this answer will help other people like me who migrate from windows to ubuntu.
  • Siddharth Manthan
    Siddharth Manthan about 8 years
    PS : Another question : for scheduling weekly jobs on a PC that will not be running 24x7 is cron or anacron to be used ?
  • Ron
    Ron about 8 years
    Definitely Anacron
  • badjr
    badjr almost 5 years
    You'll need to add sudo if you're not running as root.