#!/bin/bash

[ -z "$2"  ] && exit 2
disk=$1
mode=$2
[ -z "$disk" ] && exit 1
image_dir=$(hintget $(hintget image_${disk}_dir)_dir)/$disk
disk_dir=$(hintget image_${disk}_dir)
disk_dev=$(hintget ${disk_dir}_dev)
disk_dir=$(hintget ${disk_dir}_dir)
[ -b $disk_dir ] || mkdir -p $disk_dir
cat /proc/mounts | grep -q $disk_dir
if [ ! $? == 0 ]
then
	mount -o noatime  $disk_dev $disk_dir
fi
	
[ -b $image_dir ] || mkdir -p $image_dir
#echo $image_dir $disk $mode
if [ "$mode" == "sysup"  ]
then
	iface=$(hintget vdisk_ethlist | cut -d, -f1)
	[ -f /proc/vDisk ] && disk_status=$(grep -q "/dev/rwsep/1" /proc/vDisk | awk '{ print $5  }')
                
	if [ "$disk_status" == "on" ]
	then
		echo set /dev/resep/1 0 0 $iface > /proc/vDisk
		cowsync
	fi

	cowdev -l |grep -q 'rwsep/1' && cowdev -d /dev/rwsep/1
	cowdev -l |grep -q 'rwsep/0' && cowdev -d /dev/rwsep/0
	/bin/rm -f ${image_dir}/rollback*
	/bin/rm -f ${image_dir}/super_image
	/bin/rm -f ${image_dir}/profile.db
fi


if [ ! -f ${image_dir}/image  ]
then
	echo create image :${image_dir}/image
	losetup -a |grep loop0: &&  losetup -d /dev/loop0
	disk_size=$(hintget image_${disk}_size)
	disk_size=$[${disk_size}/1024]
	dd if=/dev/zero of=${image_dir}/image bs=1M count=1 seek=$[$disk_size-1]
	losetup  /dev/loop0 ${image_dir}/image 
#fdisk /dev/loop0 <<EOF
#w
#EOF
	dd if=/etc/winmbr.bin of=/dev/loop0 bs=1 count=446
	losetup -d /dev/loop0
	touch ${image_dir}/image_init
fi
