#! /bin/sh
# 通过 vhdimount 实现 vhd 的挂载 ,挂载 vhd 中的第一个分区
# 需要安装的软件包 sudo apt-get install libvhdi-utils sleuthkit
# 需要 awk 计算 要装载分区的首位置 offset = start_byte =Units * Start
echo $1
echo mkdir......
VhdPath=`dirname /v_disk.`basename $1``
sudo mkdir $VhdPath/`basename $1` -p
sudo mkdir $VhdPath/01 -p
echo mount $1 to $VhdPath ...
sudo vhdimount $1 $VhdPath/`basename $1`
sudo mmls $VhdPath/`basename $1`/vhdi1 > vhdi1.txt
cat vhdi1.txt
# start_byte =Units * Start 要装载的分区首位置
echo .
start_byte=`awk '{if ($1=="Units") split($4,Units,"-"); if ($2=="000:000") start=$3} END {print Units[1]*start}' vhdi1.txt`
sudo rm -r vhdi1.txt
echo Mounting ... "(" Units*Start = $start_byte ")"
sudo mount -o ro,noload,offset=$start_byte $VhdPath/`basename $1`/vhdi1 $VhdPath/01
echo .
echo List $VhdPath/01
echo --------------------------------
sudo ls $VhdPath/01
echo --------------------------------
echo End ....