From aefe472d7842ca1851b98d004514124e82198f95 Mon Sep 17 00:00:00 2001 From: Jack-Benny Persson Date: Tue, 17 Dec 2013 13:10:18 +0100 Subject: [PATCH] =?UTF-8?q?Started=20working=20on=20serverbackup.sh=20(?= =?UTF-8?q?=C3=96vning=206)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Labb5/serverbackup/README.md | 6 ++++++ Labb5/serverbackup/flowchart_ver1.png | Bin 0 -> 56596 bytes Labb5/serverbackup/specs.md | 10 ++++++++++ 3 files changed, 16 insertions(+) create mode 100644 Labb5/serverbackup/README.md create mode 100644 Labb5/serverbackup/flowchart_ver1.png create mode 100644 Labb5/serverbackup/specs.md diff --git a/Labb5/serverbackup/README.md b/Labb5/serverbackup/README.md new file mode 100644 index 0000000..81d8ad1 --- /dev/null +++ b/Labb5/serverbackup/README.md @@ -0,0 +1,6 @@ +# Serverbackup # +This is exercise 6 on lab 5 which is about writing a backup script for your server. +For this exercise I've chosen to make a backup script for Proxmox, ie take all the backup files +(vzdump-openvz-111-2013i\_11\_19-08\_20\_20.tar.lzo and so on) and copy them to a tape device and an external harddrive. + + diff --git a/Labb5/serverbackup/flowchart_ver1.png b/Labb5/serverbackup/flowchart_ver1.png new file mode 100644 index 0000000000000000000000000000000000000000..a809fdcfd8171a977e0df7f22ae3d97b323ce741 GIT binary patch literal 56596 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 E05?ZO(*OVf literal 0 HcmV?d00001 diff --git a/Labb5/serverbackup/specs.md b/Labb5/serverbackup/specs.md new file mode 100644 index 0000000..dfb5f94 --- /dev/null +++ b/Labb5/serverbackup/specs.md @@ -0,0 +1,10 @@ +# Specs for serverbackup # + +1. Look at the files in backup directory +2. Extract the dates from the filenames +3. Check whatever a tape drive is on and contains a tape +4. Check whatever the external harddrive is connected + * If not, try to mount it + * If mount fails, abort script and write error log +5. Copy the latest backup to tape drive and external harddrive +6. Write everything to a logfile (script will run headless)