Files
bpfire/src/scripts/backupiso
Jonatan Schlag b1b6e9f396 Fix the backup iso script once again.
In commit 391560854f was an error in the
case statement. On i?586 the check fails. Removing the "" fixes the
error.

Signed-off-by: Jonatan Schlag <jonatan.schlag@ipfire.org>
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2017-01-04 11:21:28 +00:00

83 lines
1.7 KiB
Bash

#!/bin/sh
arch=$(uname -m)
case $arch in
i?86)
arch="i586"
echo "Your arch is $arch"
;;
x86_64)
arch="x86_64"
echo "Your arch is $arch"
;;
*)
echo "Arch is not supported"
exit 1
;;
esac
COREVER=$(cat /opt/pakfire/db/core/mine)
# FIXME: edit this lines before release
URL="http://download.ipfire.org/releases/ipfire-2.x/2.19-core$COREVER/"
ISO="ipfire-2.19.$arch-full-core$COREVER.iso"
if [ -z $1 ]; then
echo usage: $0 backup-file
exit
fi
TS=$1
mkdir -p /var/tmp/backupiso
cd /var/tmp/backupiso
if [ ! -f ${ISO} ]
then
echo "Fetching ${URL}${ISO}"
wget --quiet -c ${URL}${ISO}
fi
echo "Fetching ${URL}${ISO}.md5"
wget --quiet -O ${ISO}.md5 ${URL}${ISO}.md5
echo "Checking md5 of ${ISO}"
md5sum --status -c ${ISO}.md5
if [ $? -eq 0 ] || [ $? -eq 24 ]
then
echo "md5 is OK"
else
echo "md5 mismatch"
echo "Fetching again ${URL}${ISO}"
wget --quiet -O ${ISO} ${URL}${ISO}
echo "Checking again md5 of ${ISO}"
md5sum --status -c ${ISO}.md5
if [ $? -eq 0 ] || [ $? -eq 24 ]
then
echo "md5 is OK"
else
echo "md5 mismatch"
echo "aborting backup because md5 mismatch"
exit 1
fi
fi
rm ${ISO}.md5
echo "Remastering iso"
mkdir -p backupiso.tmp.${TS}
mount -o loop ${ISO} backupiso.tmp.${TS}
cp -pr backupiso.tmp.${TS} backupiso.${TS}
umount backupiso.tmp.${TS}
rm -r backupiso.tmp.${TS}
# Copy backup file to disk
cp "/var/ipfire/backup/${TS}.ipf" "backupiso.${TS}/backup.ipf"
echo "Running mkisofs"
mkisofs -J -r -V "ipfire backup ${TS}" \
-b boot/isolinux/isolinux.bin -no-emul-boot -boot-load-size 4 -boot-info-table \
-c boot/isolinux/boot.catalog backupiso.${TS} > $(basename ${ISO} .iso)-${TS}.iso
isohybrid $(basename ${ISO} .iso)-${TS}.iso
echo "Cleaning up"
rm -rf backupiso.${TS}