# user definable variables
BACKUPLOG="/var/log/gsxbackup.log"
TARGET="/vmbackup/"
# hard variables
vmcmd=/usr/bin/vmware-cmd
ON="getstate() = on"
OFF="getstate() = off"
for i in $($vmcmd -l); do
echo "Backing up server $i" >> $BACKUPLOG
echo $(date) >> $BACKUPLOG
state=$($vmcmd $i getstate)
# The next line removes the last / and everything after in
# variable $i, see under "Parameter Expansion" in man bash.
backupdir=${i%/*}
if [ "$state" = "$ON" ]; then
$vmcmd $i suspend hard >> $BACKUPLOG
# use copy -a (see man copy)
cp -a "$backupdir/" "$TARGET" >> $BACKUPLOG
$vmcmd $i start hard >> $BACKUPLOG
elif [ "$state" = "$OFF" ]; then
cp -a "$backupdir/" "$TARGET" >> $BACKUPLOG
else
echo "ERROR: something went wrong ..." >> $BACKUPLOG
fi
done
文章整理:西部数码--专业提供域名注册、虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!



