ESXI 4.0 – 4.1上的GhettoVCB快照失败

我今天遇到了一个问题。 几个小时前,我把我的esxi从4.0升级到4.1版。 我的目标是从vm的ghettoVCB.sh备份,即使有vm的快照。 (在4.0根本不工作)

为此,我下载了最新版本的ghettoVCB(github)并将其解压缩。

现在将重要文件(chmod 777)解压缩到文件夹:ghettoVCB-master中,并且将VM_BACKUP_VOLUMEVM_BACKUP_VOLUME到运行脚本之后备份的path。

当我运行这个脚本并且没有一个VM_BACKUP_VOLUME=/vmfs/volumes/datastore1/BACKUP快照时,这个VM_BACKUP_VOLUME=/vmfs/volumes/datastore1/BACKUP在这个文件夹中“备份”: VM_BACKUP_VOLUME=/vmfs/volumes/datastore1/BACKUP

这工作..迄今..

但正如我所说,当有一个虚拟现实的快照,我只是得到的消息:

 2013-06-13 15:21:54 -- info: ###### Final status: ERROR: No VMs backed up! ###### 

(如果至less有一个vm可以在没有快照的情况下备份)

和:

 2013-06-13 15:19:46 -- info: ###### Final status: ERROR: All VMs failed! ###### 

(如果所有的虚拟机都有快照)。

我在网上阅读configuration在ghettoVCB.conf和ghettoVCB.sh以下1而不是0:

 ALLOW_VMS_WITH_SNAPSHOTS_TO_BE_BACKEDUP=1 

但是这不会改变任何东西。

你读过这个function的文档吗? 它不会备份快照,但会整合并备份虚拟机,因此您可能不想使用它:

不过,我决定支持这个用例,因为最近引起了我的注意,一些支持具有现有快照的VM的商业备份解决scheme只是在备份之前合并所有的快照。 如果启用此function, 则会在运行备份之前合并VM上的所有现有快照

如果这真的是你想要的, VMWare社区有一个线程描述了一个类似于你的问题,并提出了一个代码改变脚本来解决这个问题:

 # elif ls "${VMX_DIR}" | grep -q "\-delta\.vmdk" > /dev/null 2>&1; then # if [ ${ALLOW_VMS_WITH_SNAPSHOTS_TO_BE_BACKEDUP} -eq 0 ]; then # logger "info" "Snapshot found for ${VM_NAME}, backup will not take place\n" # VM_FAILED=1 # fi elif [[ -f "${VMX_PATH}" ]] && [[ ! -z "${VMX_PATH}" ]]; then if ls "${VMX_DIR}" | grep -q "\-delta\.vmdk" > /dev/null 2>&1; then if [ ${ALLOW_VMS_WITH_SNAPSHOTS_TO_BE_BACKEDUP} -eq 1 ]; then logger "info" "Snapshot found for ${VM_NAME}, consolidating ALL snapshots now (this can take awhile) ...\n" $VMWARE_CMD vmsvc/snapshot.removeall ${VM_ID} > /dev/null 2>&1 else logger "info" "ERROR: Snapshot found for ${VM_NAME}, backup will not take place\n" exit 1 fi fi 

我从你的文章中了解到,你正在尝试用ghettoVCB来备份虚拟机,而无法识别任何虚拟机。 所以在这里你提供的configuration是好的只需要很less的修改:
**你如何运行贫民窟脚本**

解:

创build一个文件并插入虚拟机名称:

假设虚拟机的名字是
1. test1
2.testing2
然后,在贫民窟目录里面:

 vi backup 

TEST1
TEST2
现在运行保存并closures文件并运行下面的命令:

 ./ghettoVCB.sh -f backup -d dryrun 

这里-f是为了备份我们之前创build的备份文件中列出的特定虚拟机的名称。 -d dryrun将查找列出的虚拟机,它们是否存在以及是否可以备份。 输出会像

– 信息:######最终状态:好的,只有一个dryrun。 ######

现在你可以进行备份运行下面的命令:

 ./ghettoVCB.sh -f backup 

在这里,您的备份将启动并保存给定目标的快照。