| MondoRescue HOWTO: Utilisation and Configuration of Mondo and Mindi under Linux (Version 2.2.0-rRRR) | ||
|---|---|---|
![]() | Chapter 7. HOWTO run mondo interactively using cron | ![]() |
Use 'at' to run your usual mondoarchive command
Grab the script generated by 'at' and make a copy of it
Edit that script to use 'screen -m -d <your mondoarchive command>'
Run that script from your crontab
Use 'screen -r' to attach to the mondo screen to change CDs
Use '<CTRL>-a d' to detach the screen again
Use the 'at' command to submit your usual mondoarchive command. My mondoarchive command is:
| # mondoarchive -D -Ow 10 -S /home/mondo/ -T /home/mondo/ -g \ -E "\"/home/cdaly/GIS/W2K /home/mondo/\"" -9 |
To submit the mondoarchive command with 'at' do:
| # at now + 5 min mondoarchive -D -Ow 10 -S /home/mondo/ -T /home/mondo/ -g \ -E "\"/home/cdaly/GIS/W2K /home/mondo/\"" -9 <CTRL>-d |
This generates a script in /var/spool/at/ which sets up your environment and runs your command. Grab this script to become your cron job.
Make a copy of the script generated by the 'at' command to use as the basis for your cron job.
You'll need to edit this.
To use screen, you'll need to edit the cronscript and add the screen command. My mondo-cronscript looks like:
#!/bin/sh
# atrun uid=0 gid=0
# mail cdaly 0 umask 22
PWD=/root; export PWD
XAUTHORITY=/root/.xauthyOrD4f; export XAUTHORITY
HOSTNAME=bofh.irmet.ie; export HOSTNAME
PVM_RSH=/usr/bin/rsh; export PVM_RSH
QTDIR=/usr/lib/qt-2.3.1; export QTDIR
LESSOPEN=\|/usr/bin/lesspipe.sh\ %s; export LESSOPEN
XPVM_ROOT=/usr/share/pvm3/xpvm; export XPVM_ROOT
KDEDIR=/usr; export KDEDIR
USER=root; export USER
LS_COLORS=no=00:fi=00:di=01\;34:ln=01\;36:pi=40\;33:so=01\;35:bd=40\;33\;01:cd=40\;33\;01:or=01\;05\;37\;41:mi=01\;05\;37\;41:ex=01\;32:\*.cmd=01\;32:\*.exe=01\;32:\*.com=01\;32:\*.btm=01\;32:\*.bat=01\;32:\*.sh=01\;32:\*.csh=01\;32:\*.tar=01\;31:\*.tgz=01\;31:\*.arj=01\;31:\*.taz=01\;31:\*.lzh=01\;31:\*.zip=01\;31:\*.z=01\;31:\*.Z=01\;31:\*.gz=01\;31:\*.bz2=01\;31:\*.bz=01\;31:\*.tz=01\;31:\*.rpm=01\;31:\*.cpio=01\;31:\*.jpg=01\;35:\*.gif=01\;35:\*.bmp=01\;35:\*.xbm=01\;35:\*.xpm=01\;35:\*.png=01\;35:\*.tif=01\;35:; export LS_COLORS
MACHTYPE=i386-redhat-linux-gnu; export MACHTYPE
MAIL=/var/spool/mail/root; export MAIL
INPUTRC=/etc/inputrc; export INPUTRC
BASH_ENV=/root/.bashrc; export BASH_ENV
LANG=en_US; export LANG
LOGNAME=root; export LOGNAME
SHLVL=1; export SHLVL
II_SYSTEM=/usr/local/ingres; export II_SYSTEM
USERNAME=root; export USERNAME
HOSTTYPE=i386; export HOSTTYPE
OSTYPE=linux-gnu; export OSTYPE
HISTSIZE=1000; export HISTSIZE
LAMHELPFILE=/etc/lam/lam-helpfile; export LAMHELPFILE
PVM_ROOT=/usr/share/pvm3; export PVM_ROOT
HOME=/root; export HOME
SSH_ASKPASS=/usr/libexec/openssh/gnome-ssh-askpass;
export SSH_ASKPASS
PATH=/usr/local/ingres/ingres/bin:/usr/local/ingres/ingres/utility:/usr/kerberos/sbin:/usr/kerberos/bin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/usr/bin/X11:/usr/X11R6/bin:/root/bin; export PATH
cd /root || {
echo 'Execution directory inaccessible' >&2
exit 1
}
screen -m -d mondoarchive -D -Ow 10 -S /home/mondo/ \
-T /home/mondo/ -g -E "\"/home/cdaly/GIS/W2K /home/mondo/\"" -9
#done
|
The crucial line is this one:
| screen -m -d mondoarchive -D -Ow 10 -S /home/mondo/ -T /home/mondo/ -g -E "\"/home/cdaly/GIS/W2K /home/mondo/\"" -9 |
This uses 'screen -m -d' to "-m -d Start screen in "detached" mode. This creates a new session but doesn't attach to it. This is useful for system startup scripts. (From 'man screen')"
When screen starts, it will be in the background and "detached".
To get the whole thing running, do:
and add the following lines:
Your mondoarchive job will run at 23:59 monday-friday.
DON'T FORGET TO CHANGE TAPES!
Once your cron job is running regularly, you'll want to get to it to change tapes and check status etc.
attaches to the running screen where you can change CDs etc
detaches the running screen again.
The script generated by 'at' is unique to the user/machine combination. You MUST regenerate it on each machine where it will be used. Using the one above will NOT work for you. MAKE YOUR OWN!