| 
															
																@@ -2,24 +2,22 @@ 
															 | 
														
													
												
													
														
															| 
																2
															 | 
															
																 # The script is designed to create or restore an image of a virtual machine kvm (c) 2018 
															 | 
															
																2
															 | 
															
																 # The script is designed to create or restore an image of a virtual machine kvm (c) 2018 
															 | 
														
													
												
													
														
															| 
																3
															 | 
															
																 # author Koshuba V.O. 
															 | 
															
																3
															 | 
															
																 # author Koshuba V.O. 
															 | 
														
													
												
													
														
															| 
																4
															 | 
															
																 # license: MIT 
															 | 
															
																4
															 | 
															
																 # license: MIT 
															 | 
														
													
												
													
														
															| 
																5
															 | 
															
																-# version: 4.0.0 
															 | 
															
																
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																5
															 | 
															
																+# version: 4.0.5 
															 | 
														
													
												
													
														
															| 
																6
															 | 
															
																 ## 
															 | 
															
																6
															 | 
															
																 ## 
															 | 
														
													
												
													
														
															| 
																7
															 | 
															
																  
															 | 
															
																7
															 | 
															
																  
															 | 
														
													
												
													
														
															| 
																8
															 | 
															
																 #<manual_parameters> 
															 | 
															
																8
															 | 
															
																 #<manual_parameters> 
															 | 
														
													
												
													
														
															| 
																9
															 | 
															
																-path_kvm=( "/kvm/win7x64"  
															 | 
															
																
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
																10
															 | 
															
																-           "/kvm/win2kx64" );					# path kvm machines 
															 | 
															
																
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
																11
															 | 
															
																-path_bak=( "/arhive/backup/kvm/win7x64"  
															 | 
															
																
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
																12
															 | 
															
																-           "/arhive/backup/kvm/win2kx64" );			# path backup kvm machines 
															 | 
															
																
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
																13
															 | 
															
																-img_dev=( "disk_c.img"  
															 | 
															
																
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
																14
															 | 
															
																-          "disk_c.img" );					# storage kvm 
															 | 
															
																
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
																15
															 | 
															
																-img_part=( '"sda1" "sda2"'  
															 | 
															
																
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
																16
															 | 
															
																-           '"sda1"' );						# sections in media kvm 
															 | 
															
																
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
																17
															 | 
															
																-img_offset=( '"1048576" "105906176"'  
															 | 
															
																
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
																18
															 | 
															
																-           '"32256"' );						# offset for switch section media kvm 
															 | 
															
																
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																9
															 | 
															
																+path_kvm=( "/kvm/win2012" "/kvm/win2008" );			# path kvm machines 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																10
															 | 
															
																+path_bak=( "/backup/kvm/win2012" "/backup/kvm/win2008" );	# path backup kvm machines 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																11
															 | 
															
																+img_dev=( "sda.img" "sda.img" );				# storage kvm 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																12
															 | 
															
																+img_part=( '"sda1" "sda2" "sda3" "sda4"' '"sda1"' );		# sections in media kvm 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																13
															 | 
															
																+img_type=( '"dd" "dd" "dd" "ntfsclone"' '"ntfsclone"' );	# type backup partition:dd[fat,EFI System,Windows recovery environment,Microsoft reserved],ntfsclone[ntfs,Microsoft basic data] 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																14
															 | 
															
																+img_size=( '"300" "99" "128"' '""' );				# size partition for dd (Mb) 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																15
															 | 
															
																+img_offset=( '"1048576" "315621376" "419430400" "553648128"' 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																16
															 | 
															
																+             '"1048576"' );					# offset for switch section media kvm 
															 | 
														
													
												
													
														
															| 
																19
															 | 
															
																 #</manual_parameters> 
															 | 
															
																17
															 | 
															
																 #</manual_parameters> 
															 | 
														
													
												
													
														
															| 
																20
															 | 
															
																  
															 | 
															
																18
															 | 
															
																  
															 | 
														
													
												
													
														
															| 
																21
															 | 
															
																 #<script_value> 
															 | 
															
																19
															 | 
															
																 #<script_value> 
															 | 
														
													
												
													
														
															| 
																22
															 | 
															
																-version="4.0.0"; 
															 | 
															
																
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																20
															 | 
															
																+version="4.0.5"; 
															 | 
														
													
												
													
														
															| 
																23
															 | 
															
																 owner="(c) script by Koshuba V.O. 2018"; 
															 | 
															
																21
															 | 
															
																 owner="(c) script by Koshuba V.O. 2018"; 
															 | 
														
													
												
													
														
															| 
																24
															 | 
															
																 msg_dat=( '"Script to save or restore the image KVM" "Скрипт сохранения или восстановления образа KVM"' 
															 | 
															
																22
															 | 
															
																 msg_dat=( '"Script to save or restore the image KVM" "Скрипт сохранения или восстановления образа KVM"' 
															 | 
														
													
												
													
														
															| 
																25
															 | 
															
																           '"MAIN MENU" "ГЛАВНОЕ МЕНЮ"' 
															 | 
															
																23
															 | 
															
																           '"MAIN MENU" "ГЛАВНОЕ МЕНЮ"' 
															 | 
														
													
												
											
												
													
														
															 | 
															
																@@ -38,7 +36,8 @@ msg_dat=( '"Script to save or restore the image KVM" "Скрипт сохран 
															 | 
														
													
												
													
														
															| 
																38
															 | 
															
																           '"Found the file kvmsnapshot.lock - work is stopped!" "Найден файл kvmsnapshot.lok - работа остановлена!"' 
															 | 
															
																36
															 | 
															
																           '"Found the file kvmsnapshot.lock - work is stopped!" "Найден файл kvmsnapshot.lok - работа остановлена!"' 
															 | 
														
													
												
													
														
															| 
																39
															 | 
															
																           '"Starting kvm-snapshot script." "Запуск скрипта kvm-snapshot."' 
															 | 
															
																37
															 | 
															
																           '"Starting kvm-snapshot script." "Запуск скрипта kvm-snapshot."' 
															 | 
														
													
												
													
														
															| 
																40
															 | 
															
																           '"Ending work kvm-snapshot script." "Окончание работы скрипта kvm-snapshot."' 
															 | 
															
																38
															 | 
															
																           '"Ending work kvm-snapshot script." "Окончание работы скрипта kvm-snapshot."' 
															 | 
														
													
												
													
														
															| 
																41
															 | 
															
																-          '"Not found save images!" "Не найдены сохраненные образы!"' ); 
															 | 
															
																
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																39
															 | 
															
																+          '"Not found save images!" "Не найдены сохраненные образы!"' 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																40
															 | 
															
																+          '"The installed type was not found from the parameters for image processing - dd,ntfsclone,mrsrv!" "Не найден установленный тип из параметров для обработки образа - dd,ntfsclone,mrsrv!"' ); 
															 | 
														
													
												
													
														
															| 
																42
															 | 
															
																 	  # msg[17] 
															 | 
															
																41
															 | 
															
																 	  # msg[17] 
															 | 
														
													
												
													
														
															| 
																43
															 | 
															
																 msg=();											# set current messages 
															 | 
															
																42
															 | 
															
																 msg=();											# set current messages 
															 | 
														
													
												
													
														
															| 
																44
															 | 
															
																 esc_title="";										# title escape menu 
															 | 
															
																43
															 | 
															
																 esc_title="";										# title escape menu 
															 | 
														
													
												
											
												
													
														
															 | 
															
																@@ -220,7 +219,7 @@ esac 
															 | 
														
													
												
													
														
															| 
																220
															 | 
															
																 #<functions> 
															 | 
															
																219
															 | 
															
																 #<functions> 
															 | 
														
													
												
													
														
															| 
																221
															 | 
															
																 #<Fn test lock file> 
															 | 
															
																220
															 | 
															
																 #<Fn test lock file> 
															 | 
														
													
												
													
														
															| 
																222
															 | 
															
																 testproc(){ 
															 | 
															
																221
															 | 
															
																 testproc(){ 
															 | 
														
													
												
													
														
															| 
																223
															 | 
															
																-if [ ! -f $scriptlog ]; 
															 | 
															
																
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																222
															 | 
															
																+if [ -f $scriptlog ]; 
															 | 
														
													
												
													
														
															| 
																224
															 | 
															
																  then 
															 | 
															
																223
															 | 
															
																  then 
															 | 
														
													
												
													
														
															| 
																225
															 | 
															
																     echo > $scriptlog; 
															 | 
															
																224
															 | 
															
																     echo > $scriptlog; 
															 | 
														
													
												
													
														
															| 
																226
															 | 
															
																 fi 
															 | 
															
																225
															 | 
															
																 fi 
															 | 
														
													
												
											
												
													
														
															 | 
															
																@@ -362,6 +361,8 @@ function saveKvm() { 
															 | 
														
													
												
													
														
															| 
																362
															 | 
															
																 local save_kvm="${path_kvm[$set_kvm]}"; 
															 | 
															
																361
															 | 
															
																 local save_kvm="${path_kvm[$set_kvm]}"; 
															 | 
														
													
												
													
														
															| 
																363
															 | 
															
																 local save_bak="${path_bak[$set_kvm]}/$rdate"; 
															 | 
															
																362
															 | 
															
																 local save_bak="${path_bak[$set_kvm]}/$rdate"; 
															 | 
														
													
												
													
														
															| 
																364
															 | 
															
																 local save_img="${img_dev[$set_kvm]}"; 
															 | 
															
																363
															 | 
															
																 local save_img="${img_dev[$set_kvm]}"; 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																364
															 | 
															
																+eval local save_type="(" $(echo -e ${img_type[$set_kvm]}) ")"; 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																365
															 | 
															
																+eval local save_size="(" $(echo -e ${img_size[$set_kvm]}) ")"; 
															 | 
														
													
												
													
														
															| 
																365
															 | 
															
																 eval local save_dev="(" $(echo -e ${img_part[$set_kvm]}) ")"; 
															 | 
															
																366
															 | 
															
																 eval local save_dev="(" $(echo -e ${img_part[$set_kvm]}) ")"; 
															 | 
														
													
												
													
														
															| 
																366
															 | 
															
																 eval local save_offset="(" "$(echo -e ${img_offset[$set_kvm]})" ")"; 
															 | 
															
																367
															 | 
															
																 eval local save_offset="(" "$(echo -e ${img_offset[$set_kvm]})" ")"; 
															 | 
														
													
												
													
														
															| 
																367
															 | 
															
																 local set_loop_main="$(losetup -f|grep -v loop-control|sed 's/\/\dev\///g')"; 
															 | 
															
																368
															 | 
															
																 local set_loop_main="$(losetup -f|grep -v loop-control|sed 's/\/\dev\///g')"; 
															 | 
														
													
												
											
												
													
														
															 | 
															
																@@ -372,14 +373,34 @@ if [[ ! -d $save_bak ]]; 
															 | 
														
													
												
													
														
															| 
																372
															 | 
															
																     mkdir -p $save_bak; 
															 | 
															
																373
															 | 
															
																     mkdir -p $save_bak; 
															 | 
														
													
												
													
														
															| 
																373
															 | 
															
																 fi 
															 | 
															
																374
															 | 
															
																 fi 
															 | 
														
													
												
													
														
															| 
																374
															 | 
															
																  
															 | 
															
																375
															 | 
															
																  
															 | 
														
													
												
													
														
															| 
																375
															 | 
															
																-sfdisk -d /dev/$set_loop_main >$save_bak/info.txt; 
															 | 
															
																
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																376
															 | 
															
																+sfdisk -d /dev/$set_loop_main >$save_bak/info_sfdisk.txt; 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																377
															 | 
															
																+sfdisk -l /dev/$set_loop_main >$save_bak/info_disk.txt; 
															 | 
														
													
												
													
														
															| 
																376
															 | 
															
																 dd if=/dev/$set_loop_main of=$save_bak/winboot.img bs=512 count=1; 
															 | 
															
																378
															 | 
															
																 dd if=/dev/$set_loop_main of=$save_bak/winboot.img bs=512 count=1; 
															 | 
														
													
												
													
														
															| 
																377
															 | 
															
																  
															 | 
															
																379
															 | 
															
																  
															 | 
														
													
												
													
														
															| 
																378
															 | 
															
																 for ((iskvm=0; iskvm != ${#save_dev[@]}; iskvm++)) 
															 | 
															
																380
															 | 
															
																 for ((iskvm=0; iskvm != ${#save_dev[@]}; iskvm++)) 
															 | 
														
													
												
													
														
															| 
																379
															 | 
															
																  do 
															 | 
															
																381
															 | 
															
																  do 
															 | 
														
													
												
													
														
															| 
																380
															 | 
															
																     local set_loop_dev="$(losetup -f|grep -v loop-control|sed 's/\/\dev\///g')"; 
															 | 
															
																382
															 | 
															
																     local set_loop_dev="$(losetup -f|grep -v loop-control|sed 's/\/\dev\///g')"; 
															 | 
														
													
												
													
														
															| 
																381
															 | 
															
																     losetup -o ${save_offset[$iskvm]} /dev/$set_loop_dev /dev/$set_loop_main; 
															 | 
															
																383
															 | 
															
																     losetup -o ${save_offset[$iskvm]} /dev/$set_loop_dev /dev/$set_loop_main; 
															 | 
														
													
												
													
														
															| 
																382
															 | 
															
																-    ntfsclone --save-image -o - /dev/$set_loop_dev| pigz -p2 -c9>$save_bak/${save_dev[$iskvm]}.img.gz; 
															 | 
															
																
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																384
															 | 
															
																+    if [ "${save_type[$iskvm]}" == "ntfsclone" ]; 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																385
															 | 
															
																+	    then 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																386
															 | 
															
																+	    ntfsclone --save-image -o - /dev/$set_loop_dev| pigz -p2 -c9>$save_bak/${save_dev[$iskvm]}.img.gz; 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																387
															 | 
															
																+	fi 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																388
															 | 
															
																+	if [ "${save_type[$iskvm]}" == "dd" ]; 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																389
															 | 
															
																+	    then 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																390
															 | 
															
																+		if [ "${save_size[$iskvm]}" != "" ]; 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																391
															 | 
															
																+		    then 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																392
															 | 
															
																+		    dd if=/dev/$set_loop_dev of=$save_bak/${save_dev[$iskvm]}_dd.img.gz status=progress bs=${save_size[$iskvm]}M count=1; 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																393
															 | 
															
																+		    else 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																394
															 | 
															
																+		    echo "Warning! not found size partition ${save_dev[$iskvm]} for dd!"; 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																395
															 | 
															
																+		fi 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																396
															 | 
															
																+	     
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																397
															 | 
															
																+	fi 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																398
															 | 
															
																+	if [ "${save_type[$iskvm]}" != "ntfsclone" ] && [ "${save_type[$iskvm]}" != "dd" ] && [ "${save_type[$iskvm]}" != "mrsrv" ]; 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																399
															 | 
															
																+	    then 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																400
															 | 
															
																+		echo "[$save_bak/${save_dev[$irkvm]}_dd.img.gz]\n ${msg[18]} - >> /var/log/syslog"; 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																401
															 | 
															
																+		echo "$(date) - kvm-snapshot: [$save_bak/${save_dev[$irkvm]}_dd.img.gz] \n ${msg[18]}" >> /var/log/syslog; 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																402
															 | 
															
																+	fi 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																403
															 | 
															
																+     
															 | 
														
													
												
													
														
															| 
																383
															 | 
															
																     losetup -d /dev/$set_loop_dev; 
															 | 
															
																404
															 | 
															
																     losetup -d /dev/$set_loop_dev; 
															 | 
														
													
												
													
														
															| 
																384
															 | 
															
																 done 
															 | 
															
																405
															 | 
															
																 done 
															 | 
														
													
												
													
														
															| 
																385
															 | 
															
																 losetup -d /dev/$set_loop_main; 
															 | 
															
																406
															 | 
															
																 losetup -d /dev/$set_loop_main; 
															 | 
														
													
												
											
												
													
														
															 | 
															
																@@ -389,6 +410,8 @@ function restoreKvm() { 
															 | 
														
													
												
													
														
															| 
																389
															 | 
															
																 local rest_kvm="${path_kvm[$set_kvm]}"; 
															 | 
															
																410
															 | 
															
																 local rest_kvm="${path_kvm[$set_kvm]}"; 
															 | 
														
													
												
													
														
															| 
																390
															 | 
															
																 local rest_bak="${path_bak[$set_kvm]}/$set_img"; 
															 | 
															
																411
															 | 
															
																 local rest_bak="${path_bak[$set_kvm]}/$set_img"; 
															 | 
														
													
												
													
														
															| 
																391
															 | 
															
																 local rest_img="${img_dev[$set_kvm]}"; 
															 | 
															
																412
															 | 
															
																 local rest_img="${img_dev[$set_kvm]}"; 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																413
															 | 
															
																+eval local rest_type="(" $(echo -e ${img_type[$set_kvm]}) ")"; 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																414
															 | 
															
																+eval local rest_size="(" $(echo -e ${img_size[$set_kvm]}) ")"; 
															 | 
														
													
												
													
														
															| 
																392
															 | 
															
																 eval local rest_dev="(" $(echo -e ${img_part[$set_kvm]}) ")"; 
															 | 
															
																415
															 | 
															
																 eval local rest_dev="(" $(echo -e ${img_part[$set_kvm]}) ")"; 
															 | 
														
													
												
													
														
															| 
																393
															 | 
															
																 eval local rest_offset="(" "$(echo -e ${img_offset[$set_kvm]})" ")"; 
															 | 
															
																416
															 | 
															
																 eval local rest_offset="(" "$(echo -e ${img_offset[$set_kvm]})" ")"; 
															 | 
														
													
												
													
														
															| 
																394
															 | 
															
																 local set_loop_rmain="$(losetup -f|grep -v loop-control|sed 's/\/\dev\///g')"; 
															 | 
															
																417
															 | 
															
																 local set_loop_rmain="$(losetup -f|grep -v loop-control|sed 's/\/\dev\///g')"; 
															 | 
														
													
												
											
												
													
														
															 | 
															
																@@ -399,7 +422,24 @@ for ((irkvm=0; irkvm != ${#rest_dev[@]}; irkvm++)) 
															 | 
														
													
												
													
														
															| 
																399
															 | 
															
																  do 
															 | 
															
																422
															 | 
															
																  do 
															 | 
														
													
												
													
														
															| 
																400
															 | 
															
																     local set_loop_rdev="$(losetup -f|grep -v loop-control|sed 's/\/\dev\///g')"; 
															 | 
															
																423
															 | 
															
																     local set_loop_rdev="$(losetup -f|grep -v loop-control|sed 's/\/\dev\///g')"; 
															 | 
														
													
												
													
														
															| 
																401
															 | 
															
																     losetup -o ${rest_offset[$irkvm]} /dev/$set_loop_rdev /dev/$set_loop_rmain; 
															 | 
															
																424
															 | 
															
																     losetup -o ${rest_offset[$irkvm]} /dev/$set_loop_rdev /dev/$set_loop_rmain; 
															 | 
														
													
												
													
														
															| 
																402
															 | 
															
																-    gunzip -c $rest_bak/${rest_dev[$irkvm]}.img.gz|ntfsclone --restore-image -O /dev/$set_loop_rdev -; 
															 | 
															
																
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																425
															 | 
															
																+	if [ ${rest_type[$irkvm]} == "ntfsclone" ]; 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																426
															 | 
															
																+	    then 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																427
															 | 
															
																+	    gunzip -c $rest_bak/${rest_dev[$irkvm]}_ntfs.img.gz|ntfsclone --restore-image -O /dev/$set_loop_rdev -; 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																428
															 | 
															
																+	fi 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																429
															 | 
															
																+	if [ "${rest_type[$irkvm]}" == "dd" ]; 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																430
															 | 
															
																+	    then 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																431
															 | 
															
																+		if [ "${rest_size[$irkvm]}" != "" ]; 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																432
															 | 
															
																+		    then 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																433
															 | 
															
																+		    dd if=$rest_bak/${rest_dev[$irkvm]}_dd.img.gz of=/dev/$set_loop_rdev status=progress bs=${rest_size[$irkvm]}M count=1; 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																434
															 | 
															
																+		    else 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																435
															 | 
															
																+		    echo "Warning! not found size partition ${rest_dev[$irkvm]} for dd!"; 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																436
															 | 
															
																+		fi 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																437
															 | 
															
																+	fi 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																438
															 | 
															
																+	if [ "${rest_type[$irkvm]}" != "ntfsclone" ] && [ "${rest_type[$irkvm]}" != "dd" ]; 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																439
															 | 
															
																+	    then 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																440
															 | 
															
																+		echo "[$rest_bak/${rest_dev[$irkvm]}_dd.img.gz]\n ${msg[18]} - >> /var/log/syslog"; 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																441
															 | 
															
																+		echo "$(date) - kvm-snapshot: [$rest_bak/${rest_dev[$irkvm]}_dd.img.gz] \n ${msg[18]}" >> /var/log/syslog; 
															 | 
														
													
												
													
														
															| 
																
															 | 
															
																 
															 | 
															
																442
															 | 
															
																+	fi 
															 | 
														
													
												
													
														
															| 
																403
															 | 
															
																     losetup -d /dev/$set_loop_rdev; 
															 | 
															
																443
															 | 
															
																     losetup -d /dev/$set_loop_rdev; 
															 | 
														
													
												
													
														
															| 
																404
															 | 
															
																 done 
															 | 
															
																444
															 | 
															
																 done 
															 | 
														
													
												
													
														
															| 
																405
															 | 
															
																 losetup -d /dev/$set_loop_rmain; 
															 | 
															
																445
															 | 
															
																 losetup -d /dev/$set_loop_rmain; 
															 |