Home Messages Index
[Date Prev][Date Next][Thread Prev][Thread Next]
Author IndexDate IndexThread Index

Re: Kmail backup question

Marco B. wrote:

> I used some of the ideas in the script to adapt it to my needs, but I am
> inacapable of finishing the script.
> what I would like to do is to run this script so that each phase happens
> only when the previous is finished.
> can somebody help me?
> 
> 
> #!/bin/bash
> echo
> echo "Backup script is starting..."
> echo
> 
> #phase 1
> 
> echo "Backing up Kopete..."
> tar -C /home/user
> -czf /home/user/.backup/kopete.tar.gz .kde/share/apps/kopete
> .kde/share/config/kopeterc echo "....done"
> echo "Backing up KDE window settings..."
> tar -C /home/user
> -czf /home/user/.backup/kwin.tar.gz .kde/share/config/kwinrc
> echo "...done"
> echo "Backing up Knotes..."
> tar -C /home/user
> -czf /home/user/.backup/knotes.tar.gz .kde/share/apps/knotes
> echo "...done"
> echo "Backing up Kwallet..."
> tar -C /home/user
> -czf /home/user/.backup/kwallet.tar.gz .kde/share/apps/kwallet
> .kde/share/config/kwalletrc echo "...done"
> echo "Backing up Konqueror's cookies..."
> tar -C /home/user
> -czf /home/user/.backup/cookies.tar.gz .kde/share/apps/kcookiejar
> echo "...done"
> echo "Backing up Konqueror's bookmarks..."
> tar -C /home/user
> -czf /home/user/.backup/konq.tar.gz .kde/share/apps/konqueror
> echo "...done"
> echo "Backing up the address book..."
> tar -C /home/user
> -czf /home/user/.backup/kab.tar.gz .kde/share/apps/kabc
> .kde/share/config/kaddressbookrc echo "...done"
> echo "Backing up Kmail settings..."
> tar -C /home/user
> -czf /home/user/.backup/kmail.tar.gz .kde/share/apps/kmail
> .kde/share/config/kmailrc echo "...done"
> echo "Backing up Knode settings and messages..."
> tar -C /home/user
> -czf /home/user/.backup/knode.tar.gz .kde/share/apps/knode
> .kde/share/config/knoderc echo "...done"
> echo "Backing up your Skype settings..."
> tar -C /home/user -czf /home/user/.backup/skype.tar.gz .Skype
> echo "...done"
> echo "Backing up all the .kde/share directory..."
> tar -C /home/user -czf /home/user/.backup/kdeconf.share.tar.gz .kde/share
> echo "...done"
> echo "Backing up all the .kde/menus directory..."
> tar -C /home/user -czf /home/user/.backup/kdeconf.menus.tar.gz .kde/menus
> echo "...done"
> echo "Backing up your documents..."
> tar -C /home/user -czf /home/user/.backup/docs.tar.gz Documents
> echo "...done"
> echo "Backing up your mail messages..."
> tar -C /home/user -czf /home/user/.backup/mail.tar.gz Mail
> echo "...done"
> echo
> echo "Backup on hard disk is completed; writing now data to cd"
> 
> #phase 2
> 
> echo
> echo "Creating ISO image of your backup"
> mkisofs -R -ov /tmp/kde-user/bkp.iso /home/user/.backup
> echo
> echo "ISO image created"
> 
> #phase 3
> 
> echo
> echo "blanking cd"
> cdrecord -v dev=0,1,0 speed=2 blank=fast
> echo
> echo "cd blanked"
> 
> #phase 4
> 
> echo
> echo "Writing data to cd"
> cdrecord -v speed=2 dev=0,1,0 -multi -eject /tmp/kde-user/bkp.iso
> echo
> echo "Data written to cd"
> 
> #phase 5
> 
> rm /tmp/kde-user/bkp.iso
> echo "Temporary ISO image removed"
> 
> #phase 6
> 
> rm /home/user/.backup/kopete.tar.gz
> rm /home/user/.backup/kwin.tar.gz
> rm /home/user/.backup/knotes.tar.gz
> rm /home/user/.backup/kwallet.tar.gz
> rm /home/user/.backup/cookies.tar.gz
> rm /home/user/.backup/konq.tar.gz
> rm /home/user/.backup/kab.tar.gz
> rm /home/user/.backup/kmail.tar.gz
> rm /home/user/.backup/knode.tar.gz
> rm /home/user/.backup/skype.tar.gz
> rm /home/user/.backup/kdeconf.share.tar.gz
> rm /home/user/.backup/kdeconf.menus.tar.gz
> rm /home/user/.backup/docs.tar.gz
> rm /home/user/.backup/mail.tar.gz
> echo "Hard disk backup .tar.gz files removed"
> echo
> echo "Backup has been written to cd"

All you need now is a cron job that will move a robotic arm, pick up the CD,
put it inside the case and back in the drawer...

Well, to be a little more serious, you need to assign a timeslot for each
job and allow enough time for the previous ones to end.

Here is an example:

Let us say you have a file named '.cron' your your home directory. The file
includes:

======================
# crontab for somebody, or something

SHELL=/bin/sh
PATH=/usr/local/bin:/bin:/usr/bin

# create a back-up of important files
30 19 * * * tar czvf /home/YOU/Important_files/-`date +%Y-%m-%d`.tar.gz
/home/YOU/Important_files/

# copy to server after 5 minutes
35 19 * * * cp -r /home/YOU/Important_files/*.gz /home/server
======================

You then run 'crontab ~/.cron' and the job will be run every day at 7:30 PM.

Roy

-- 
Roy Schestowitz
http://schestowitz.com

[Date Prev][Date Next][Thread Prev][Thread Next]
Author IndexDate IndexThread Index