vmware修改虚拟机名称
原虚拟机名称为:OLD_VMNAME
需要修改成:NEW_VMNAME
vmware创建虚拟机时,会以虚拟机名称存储对应的磁盘和配置文件。如果只在vcenter界面上修改虚拟机名称存储端名称是不会修改的(只会修改.vmx文件中的displayName),这样对以后的运维留下隐患。可通过以下方式将存储端修改成对应的名称。
一、虚拟机关机,并从清单移除
二、修改虚拟机目录名称
ssh 登录宿主机,进入虚拟机所在的存储目录
mv OLD_VMNAME/ NEW_VMNAME
cd NEW_VMNAME
三、修改文件夹下的所有虚拟机相关的文件名称
mv OLD_VMNAME.vmx NEW_VMNAME.vmx
mv OLD_VMNAME.vmdk NEW_VMNAME.vmdk
mv OLD_VMNAME-flat.vmdk NEW_VMNAME-flat.vmdk
...
四、修改虚拟机配置文件(xxx.vmx)
sed -i 's#OLD_VMNAME#NEW_VMNAME#g' NEW_VMNAME.vmx
五、修改磁盘配置文件
磁盘相关的文件是以.vmdk结尾,大致有以下几类
5.1 修改系统盘配置文件
sed -i 's#OLD_VMNAME#NEW_VMNAME#g' NEW_VMNAME.vmdk
#如果有快照则同样需要修改快照的配置(名称一般为VM_NAME-00000N.vmdk)
sed -i 's#OLD_VMNAME#NEW_VMNAME#g' NEW_VMNAME-000002.vmdk
sed -i 's#OLD_VMNAME#NEW_VMNAME#g' NEW_VMNAME-000003.vmdk
...
sed -i 's#OLD_VMNAME#NEW_VMNAME#g' NEW_VMNAME-00000N.vmdk
5.2 修改数据盘配置文件(如果无数据盘,此步骤可忽略)
sed -i 's#OLD_VMNAME_N#NEW_VMNAME_N#g' NEW_VMNAME_M.vmdk
#如果数据盘有快照则同样需要修改快照的配置(名称一般为VM_NAME_M-00000N.vmdk)
sed -i 's#OLD_VMNAME#NEW_VMNAME#g' NEW_VMNAME-000002.vmdk
sed -i 's#OLD_VMNAME#NEW_VMNAME#g' NEW_VMNAME-000003.vmdk
...
sed -i 's#OLD_VMNAME#NEW_VMNAME#g' NEW_VMNAME-00000N.vmdk
六、修改快照配置文件
VMNAME.vmsd为所有快照的概要信息,记录了快照的目录结构,如下:

VMNAME-SnapshotN.vmsn为每个快照详细信息(N代表第几个快照)。
6.1 修改vmsd配置文件
sed -i 's#OLD_VMNAME#NEW_VMNAME#g' NEW_VMNAME.vmsd
6.2 修改.vmsn配置文件
sed -i 's#OLD_VMNAME#NEW_VMNAME#g' NEW_VMNAME-Snapshot1.vmsn
sed -i 's#OLD_VMNAME#NEW_VMNAME#g' NEW_VMNAME-Snapshot3.vmsn
...
sed -i 's#OLD_VMNAME#NEW_VMNAME#g' NEW_VMNAME-SnapshotN.vmsn
注:对于有快照的虚拟机以上步骤在VSPHERE6.5的环境操后,在切换快照时任务里提示“无法访问文件 snapshot”,查看日志(/storage/log/vmware/vpxd/vpxd.log)报如下错误:
-----------------------------------------------------------------------------------------------------------------------------------------------------
VpxLRO] -- ERROR task-10169 -- vm-439 -- vim.VirtualMachine.revertToCurrentSnapshot: vim.fault.CannotAccessFile:
--> Result:
--> (vim.fault.CannotAccessFile) {
--> faultCause = (vmodl.MethodFault) null,
--> faultMessage = (vmodl.LocalizableMessage) [
--> (vmodl.LocalizableMessage) {
--> key = "msg.snapshot.vigor.revert.error",
--> arg = (vmodl.KeyAnyValue) [
--> (vmodl.KeyAnyValue) {
--> key = "1",
--> value = "msg.snapshot.error-DUMPER"
--> }
--> ],
--> message = "An error occurred while reverting to a snapshot: Unable to open the snapshot file."
--> }
--> ],
--> file = "snapshot"
--> msg = "Unable to access file snapshot"
-------------------------------------------------------------------------------------------------------------------------------------------------------
由于xxx-SnapshotX.vmsn文件中有部分是乱码,不清楚具体是什么内容,推测和乱码内容有关。
解决方法:
1. 创建新的快照;
2. 利用新快照文件(.vmsn)替换原有的快照文件(cp new.vmsn old.vmsn);(替换去需要记录scsi0:0.fileName信息)
3. 替换完成后,修改快照点的parent磁盘;
scsi0:0.fileName = "VMNAME-00000X.vmdk"
顺便说下快照恢复的过程:
1. 当恢复某个快照时,vmware首先会读取该快照配置文件(VMNAME-SnapshotN.vmsn)中scsi0:0.fileName(disk1)
2. vmware会修改虚拟机配置文件(VMNAME.vmx),生成新的磁盘disk2,磁盘名称为VMNAME-00000N.vmdk,并修改相应的配置(scsi0:0.fileName = "VMNAME-00000N.vmdk")
disk2的parent磁盘为disk1(通过disk2磁盘描述文件可以查看),新的数据会落在disk2上。
vmware修改虚拟机名称的更多相关文章
- vmware修改虚拟机网卡mac地址
选中"虚拟机" 右键 "设置",然后选中"网络适配器",然后点击"高级",设置"MAC地址"
- vmware克隆虚拟机后网卡名称及网络地址xiuf
使用vmware克隆虚拟机后,若原主机网卡名称为eth0,那么克隆后的主机使用ifconfig查看仅能看到一个名称为eth1的网卡 并且在/etc/sysconfig/network-scripts/ ...
- virtualbox下正确虚拟机修改设备名称
在学习大数据管理过程中,想要修改虚拟机的设备名称(因为名称太长),所以就直接在右上角的设置中找到详细设置,直接修改设备名称,结果启动Hadoop失败!!!! 后来参考网上问题解决弄好了,现在给出修改设 ...
- 修改虚拟机linux硬盘的大小
一.概述 Ubuntu用了一段时间,系统已从原来的4G增长到8G,导致虚拟磁盘不够用,需要修改虚拟硬盘的大小. 但是,修改虚拟机硬盘的大小不像修改内存那么简单,操作一个滑动条就轻松搞定.要知道虚拟硬盘 ...
- Redis学习之一VMWare Pro虚拟机安装和Linux系统的安装
一.引言 设计模式写完了,相当于重新学了一遍,每次学习都会有不同的感受,对设计模式的理解又加深了,理解的更加透彻了.还差一篇关于设计模式的总结的文章了,写完这篇总结性的文章,设计模式的文章就暂时要告一 ...
- Redis进阶实践之一VMWare Pro虚拟机安装和Linux系统的安装(转载)(1)
Redis进阶实践之一VMWare Pro虚拟机安装和Linux系统的安装 一.引言 设计模式写完了,相当于重新学了一遍,每次学习都会有不同的感受,对设计模式的理解又加深了,理解的更加透彻了.还差一篇 ...
- Redis进阶实践之一VMWare Pro虚拟机安装和Linux系统的安装
一.引言 设计模式写完了,相当于重新学了一遍,每次学习都会有不同的感受,对设计模式的理解又加深了,理解的更加透彻了.还差一篇关于设计模式的总结的文章了,写完这篇总结性的文章,设计模式的文章就暂时要告一 ...
- VMware创建虚拟机教程详解及问题解决
关于VMware Workstation Pro虚拟机创建教程,本教程主要详细描述使用软件VMware Workstation Pro建虚拟系统过程中步骤详解,以及个人安装时所出现部分问题的解决方案. ...
- VMware workstation 虚拟机安装帮助文档(以windows server 2003为例)
本次安装以Windows server 2003为例: 1.在桌面上双击VMware快捷方式打开,并点击文件>新建虚拟机 2.这里选择默认的“典型”,点击下一步 3.选择浏览,找到windows ...
随机推荐
- HTML DOM firstChild lastChild nextSibling previousSibling 属性_获取属性值的undefined问题
<html> <head> <title>HTML示例</title> <style type="text/css"> ...
- Java集合(3):使用Abstract类
每个java.util容器都有其自己的Abstract类,它们提供了该容器接口的部分实现.下面是一个定制自己的Map的例子(List set就省略了): 定制自己的Map实现AbstractMap-- ...
- C++中非数nan的定义与范例
/* * C++中非数的定义 NaN :阶码的每个二进制位全为1 并且 尾数不为0: 无穷:阶码的每个二进制位全为1 并且 尾数为0:符号位为0,是正无穷, 符号位为1是负无穷.所以NaN.正 ...
- deepin终端下载速度超慢解决方案
最近发现在deepin终端下载软件包时速度简直是慢到不可饶恕,最快速度不上20KB/s,哭了,这要下载个几百KB的还能忍,稍微下载个百内MB的包就得等1-2小时,这咋行! 在网上查了几篇博客后,终于找 ...
- 字符串——kmp
目录 一.前言 二.思路 三.代码 一.前言 kmp算法是用于从文本串text的字串中,寻找含有的模板串pattern的数量/位置的算法. 例如,在文本串abcabcccabc中,模板串abc的数量有 ...
- fedora使用
1.更改ip 添加ip和掩码 sudo ifconfig p4p1 172.31.8.7/24 up 添加网关 sudo route add default gw 172.31.8.1 2.远程登 ...
- SGI STL泛型heap算法分析
heap性质 heap本质是用一个数组表示的完全二叉树,并且父节点总是大于(或者小于)子节点的值.在STL中用于实现优先队列(priority_queque).堆排序是排序算法中是稳定效率最高的一种. ...
- 【转帖】k8s之Deployment与service
k8s之Deployment与service 2018年08月05日 18:11:00 xiyou_pen/pen 阅读数 5894 版权声明:本文为博主原创文章,遵循CC 4.0 by-sa版权 ...
- one:arguments对象伪数组
这是我的第一个博客 <script> //计算N个数字的和 //定义一个函数,如果不确定用户是否传入了参数,或者说不知道用户传入了几个参数,没办法计算, // 但是如果在函数中知道了参数的 ...
- css多种方式实现等宽布局
本文讲的等宽布局是在不手动设置元素宽度的情况下,使用纯css实现各个元素宽度都相当的效果. 1.使用table-cell实现(兼容ie8) <style> body,div{ margin ...