关注微软私有云、公有云,虚拟化,项目经验丰富。商业合作请通过邮件联系,邮件地址a9y#foxmail.com(请替换#为@)。
全部博文(94)
分类: Windows平台
2014-05-07 11:01:26
可能只有接触过和SCVMM2012/ R2的朋友才会发现,部署出来的虚拟机的国家、区域都是美国、英国,总之绝对不是中国。
当然刚开始你可能会觉得没啥问题,不就是区域不一样,改成中国就行了么?事实上在装国内的一些软件的时候,会出现乱码的……
究其原因,主要是区域不是中国,一般会采用UTF-8来编码,而不是国内用的GB2312(国标威武),那么国内的中文软件也都会以GB2312来编码,但是国际上不是这样啊。
不管使用到System Center 2012 R2的微软私有云会有这个问题,在微软桌面虚拟化VDI中,也会遇到这个问题,部署出来的虚拟机(比如Windows8)默认是英文,这在国内使用是有多坑爹是可想而知了。
事实上用这些软件的人还是海外大拿居多,他们在设计之初可能也没想过中国人用这些东西会怎么样,不过这并不是说这种问题不能解决,而是说默认情况下,解决不了。
说到修改操作系统默认区域和语言,就得说道Sysprep和系统封装了。我们用的WDS以及网吧电脑城常用的ghost都可能会用到Sysprep,它会抽象化一些标准信息,只有在Sysprep阶段才可以修改区域和语言,这样部署出来的操作系统才能是原生中文。通过(早期版本也会如此)部署的虚拟机在部署完成后,修改国家和区域之后,安装多数软件仍会乱码。
解决方法很简单,在"VM模板"中,我们调整这样一个属性,"应答文件"
应答文件是怎么产生的呢?是通过Windows System image manager 做出来的,在windows7以上的操作系统中,它是一个xml文件。
Windows System image manager又是从哪里来的呢?事实上安装SCVMM2012 R2的时候,自动就可以得到这个工具,它伴随SCVMM2012 R2的必备组件ADK一起出现。
关于应答文件的编写这里不过多废话,写这个文件比较费劲,关于如何写这个东西可能能写出几万字出来。
将下面的代码保存为.xml文件,上传至库服务器,然后在"VM模板"中调用,就可以解决操作系统默认语言和区域不是中文的问题了,同时这个脚本还会关闭所有防火墙。
|