Skip to content

Instantly share code, notes, and snippets.

@WoZ
Created February 21, 2012 18:22
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save WoZ/1877959 to your computer and use it in GitHub Desktop.
Save WoZ/1877959 to your computer and use it in GitHub Desktop.
simple lvm backuper
#!/bin/bash
# Dmitry Menshikov <d.menshikov@creators.com.ua>
# http://menshikov.mp
PATH_TO_VG="/dev/mainvg"
BACKUP_PATH="/media/Reservation/.backups/zoidberg"
BACKUP_PATH=$BACKUP_PATH/`date +"%d_%m_%Y"`
if [[ $EUID -ne 0 ]]; then
echo "You must be a root user" 2>&1
exit 1
fi
if [ -d "$BACKUP_PATH" ]; then
echo "$BACKUP_PATH is not empty. Remove directory if you need to overwrite backups."
exit 1
else
mkdir -p $BACKUP_PATH
fi
lvcreate -L1G -s -n rootsnapshot $PATH_TO_VG/root
lvcreate -L4G -s -n homesnapshot $PATH_TO_VG/home
lvcreate -L4G -s -n swapsnapshot $PATH_TO_VG/swap
dd if=$PATH_TO_VG/rootsnapshot of=$BACKUP_PATH/root.dd
lvremove -f $PATH_TO_VG/rootsnapshot
dd if=$PATH_TO_VG/homesnapshot of=$BACKUP_PATH/home.dd
lvremove -f $PATH_TO_VG/homesnapshot
dd if=$PATH_TO_VG/swapsnapshot of=$BACKUP_PATH/swap.dd
lvremove -f $PATH_TO_VG/swapsnapshot
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment