image

解决因加域客户端 Windows 登录身份引发的“无法打开登录所请求的数据库”故障

        一台 MDT(Microsoft Deployment Toolkit)服务器,因为 MDT 默认的部署点共享使用的是隐藏方式(DeployPoint$)。为了便于使用,在一个普通共享目录内创建了一个 Litetouch.vbs 的快捷方式,指向到 DeployPoint 共享对应的文件。该部署点还启用了数据库功能,连接方式为 DBNMPHTW(命名管道)。

image

        一台 Windows 7 客户端,使用隶属于本机 Administrators 组的域账号(Domain Users)登录,执行 MDT 的 Litetouch 进行应用程序的安装,虽然应用程序能完成安装,但是在最后的结果页面却提示了错误警告“无法打开登录所请求的数据库”,如下图所示:

image

        对该问题进行了线性分析!首先,用户以域账号权限访问文件共享,权限通过,访问正常;接下来,域账号因为在本机拥有管理员权限,所以可直接执行 Litetouch.vbs;然后,开始加载 CS.ini 并根据配置去连接要访问的数据库。检查数据库安全性配置,默认 Domain Users 对 MDT 数据是没有访问权限的,而使用命名管道连接时会使用当前登录到 Windows 的身份进行验证,所以才会出现前面所提到的故障。

        那么解决办法很简单,只需要为 MDT 数据库添加 Everyone 有读取权限即可。为此打开 SQL Server Management Studio 添加用户,用户类型选择 Windows 用户,用户名为 Everyone,登录名为 BUILTIN\Users,成员身份只选择 db_datareader。

image

image

        重新测试,故障消失!对于 TCP/IP 方式的数据库连接,我们可以在 CS.ini 下配置 DBID 和 DBPWD 属性用于定义数据库的访问权限。

MSFT_logo_rgb_C-Gray_D

logo_winserver2012

将驱动程序添加到脱机的自定义系统映像

MSFT_SolutionAccelerators

        企业部署客户端操作系统通常都会创建一个经过桌面标准化处理过的系统映像,而创建该系统映像的环境都会选择 Hyper-V 或 VirtualPC 虚拟机,如果将该映像添加到 MDT 进行批量部署,那么硬件的驱动程序在部署过程中能够根据 MDT 预先添加的驱动程序库加以集成和安装。但是在某些特定环境下,如:使用 imagex 工具手工安装一台 PC 时,就会出现驱动问题。

        gOxiA 今天就遇到了这个问题,使用 imagex 为一台 Dell 380 PC 手工安装自定义的系统映像,完成安装进入系统后发现 Windows 7 未能知别 Dell 380 的网卡,而此台 PC 上又没有驱动备份,那么只能从其他 PC 上拷贝驱动到 U盘后再进行安装,感觉实在是很麻烦!为了避免以后再遇到这样的问题发生,gOxiA 绝对将驱动程序添加到这个自定义的系统映像中。

        过去要为脱机的系统映像添加驱动可以使用 DISM(部署映像服务和管理)工具,操作步骤如下:

  1. 以管理员权限运行部署和映像工具命令提示符,可先键入下面命令行检索要修改的系统映像名称或索引号。
    dism /get-imageinfo /imagefile:d: \deploypoint\Operating Systems\W7ProX86Custom\W7ProX86Custom.wim
  2. 信息确认完毕后,便可装载脱机的系统映像,命令如下:
    dism /mount-image /imagefile:d: \deploypoint\Operating Systems\W7ProX86Custom\W7ProX86Custom.wim /index:1 /mountdir:d:\temp
  3. 将指定目录下的所有驱动程序添加到脱机映像,命令如下:
    dism /imaged:\temp /add-driver /driver:d:\sources\drivers\dell380\nic /recurse
  4. 确认更改并卸载映像,命令如下:
    dism /unmount-image /mountdir:d:\temp /commit

        更多信息可参考:http://technet.microsoft.com/zh-cn/library/hh825070.aspx

        看了上面四段命令行,不知道你是什么感觉!gOxiA 认为键入时语法使用挺麻烦的,特别是无法使用tab键自动补全命令或路径,使整个操作体验象个噩梦!

        OK,下面我们来尝试使用 Powershell 解决这个问题,看看会是什么样的感觉!

  1. 装载映像
    mount-windowsimage –imagepath ‘D:\deploypoint\operating system\w7prox86custom\w7prox86custom.wim’-index 1 –path d:\temp
  2. 集成驱动
    add-windowsdriver –path d:\temp –driver ‘d:\sources\drivers\dell380\nic\win7’ –recurse
  3. 卸载并更改映像
    dismount-windowsimage –path d:\temp –save

        整个执行过程可以参考下图:

add-windowsdriver

        使用 Powershell 提供的命令,语法简捷易懂,而且可以使用命令和路径自动补全,效率一下提高了很多!大家可以慢慢舍弃 cmd 了……

        参考信息:

MSFT_logo_rgb_C-Gray_D

Windowslogo HOWTO: 不重装系统就地升级到更高 Windows 版本

        自 Windows 7(NT6.1)开始,微软将 DISM.exe(Deployment Image Servicing and Management)直接集成在系统当中,该命令主要用于处理 Windows 映像,取代了 Windows Vista 中包括的pkgmgr、PEimg 和 Intlcfg。使用 DISM 支持执行多种管理操作,如:挂载、修改 Windows 映像、添加、删除和枚举程序包、驱动程序;启用或禁用 Windows 功能;将 Windows 映像升级到其他版本;配置国际设置,等等……具体信息可参考:http://technet.microsoft.com/zh-cn/library/dd744566(v=ws.10).aspx,不再详细复述!而本文的重点则是在不重装系统的情况下,使用 DISM 就地升级到更高的 Windows 版本。

        在 Windows 7 Home 或 Professional 上,我们可以在系统属性中看到版本升级选项,然后使用不同的序列号升级到对应的更高 Windows 版本,直到 Windows 8,这个特性使用户能够保全现有个性化设置、应用软件和个人数据的情况下直接升级到更高的 Windows 版本。除了 Client 以外,Server 也具备这个特性,从 Windows Server 2008R2 到 Windows Server 2012!举例:在企业应用场景下,前期因为成本因素安装了 Windows Server 2008 Standard,之后在上面部署了关键的业务应用,现在需要使用 Enterprise 或 Datacenter 的功能,总不能重新安装系统,虽然在 Windows Server 的系统属性中没有提供升级选项,但是我们仍旧可以使用 DISM 来轻松完成这项操作。参考微软官方文档:http://technet.microsoft.com/zh-cn/library/dd744380(v=ws.10).aspx,了解到利用 DISM 的“/get-targeteditions”参数可以获取到当前系统可升级到的目标版本,如下图所示:

image

        在确定了可升级到的目标版本后,便可以准备相应的密钥执行升级,命令参考如下:

dism /online /set-edition:serverdatacenter /productkey:XXXXX-XXXXX-XXXXX-XXXXX-XXXXX

分页: 22/49 第一页 上页 17 18 19 20 21 22 23 24 25 26 下页 最后页 [ 显示模式: 摘要 | 列表 ]