谈谈Windows迁移上云经常会遇到的问题 (一)-阿里云开发者社区

开发者社区> 阿里云支持与服务> 正文

谈谈Windows迁移上云经常会遇到的问题 (一)

简介: 最近在处理了几例Windows迁移上云的问题,问题还是比较有典型性的。分享一下具体的处理方法以及原理。 第一类问题是磁盘引起的,我们的云迁移工具支持迁移系统盘和数据盘。当我们机器上有至少两块磁盘的时候,在迁移之后,有时我们会发现系统在云上有很多奇怪的现象。

最近在处理了几例Windows迁移上云的问题,问题还是比较有典型性的。分享一下具体的处理方法以及原理。

第一类问题是磁盘引起的,我们的云迁移工具支持迁移系统盘和数据盘。当我们机器上有至少两块磁盘的时候,在迁移之后,有时我们会发现系统在云上有很多奇怪的现象。如果此时我们做一些排查工作,典型现象如下:

机器有时是能够启动的,但是登录之后发现很多程序不能使用。
IE浏览器是打不开的,点击之后没有反应。
所有和MMC相关的程序都打不开,比如事件查看器,服务管理器和计算机管理等等。
打开某些业务程序时会报告文件找不到。
运行sfcscan会报如下错误:
image

原因其实很简单,Windows在辨认磁盘时是有自己的顺序,但是在某些情况下可能会出现迁移之后的磁盘卷顺序和迁移之前不同。这种情况可能会导致系统盘没有被辨识为C盘,比如辨识为D盘。这本身并不会导致启动问题,原因是因为Windows系统本身是从环境变量里来寻找启动时所需要的驱动的。比如如下注册表:

image

我们可以发现Windows是用路径%SystemRoot%来找到相应的DLL或者SYS的。而当系统盘符变为D:盘之后SystemRoot也会相应地调整为D:Windows,因此大部分系统文件都是可以被找到的。

然而有些安装在其他目录组件就不是这样了,比如如下注册表:

image

IE相关的文件是安装在C:Program Files下面,而很多在注册表里的路径是直接指向C:Program Files,并没有环境变量。从而导致这些程序启动失败。

解决方法非常简单,简单地来说,我们需要将系统盘符改回C:盘。但是如果我们直接修改是无法做到这一点的,因为Windows系统会阻止这一行为。因此我们可以直接修改如下注册表:

image

只要将键值名字的C:和D:对换即可解决该问题。注意重启依然是必须的。

版权声明:本文中所有内容均属于阿里云开发者社区所有,任何媒体、网站或个人未经阿里云开发者社区协议授权不得转载、链接、转贴或以其他方式复制发布/发表。申请授权请邮件developerteam@list.alibaba-inc.com,已获得阿里云开发者社区协议授权的媒体、网站,在转载使用时必须注明"稿件来源:阿里云开发者社区,原文作者姓名",违者本社区将依法追究责任。 如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件至:developer2020@service.aliyun.com 进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:

分享阿里云支持与服务团队最佳实践、经典案例与故障排查。

官方博客
文档