2011年8月

当网域崩溃后或者我们买了新服务器,需要将新机器作为主域控制器那么我们需要转移角色,在原主域在线的情况下我们可以使用图形化界面 MMC 控制台来转移角色。在主域崩溃后我们用副域 控制器夺权就需要使用到 ntdsutil 工具来转移角色。下面我分别介绍两种转移 AD 中 5 大角色的方 式,5 大角色相信地球人都知道,HOHO.

PS:转移角色需要注意的是:额外域设置为 GC,这样才能将额外域升级为主域,设置 GC 方法如下: 打开 AD 站点和服务管理器-sites-Default-First-Site-Name-servers 下面有服务器名称,找到额外域服务器,双击打开服务器,下面有个 NTDS Settings 右键单击属性,在弹出的属性页面勾选“全

局编录”然后确定就 OKl 了,等待 5-10 分钟整个网域复写完成刚才的动作。

PS:部分步骤来源于网络,此文为综合以及描述注意点

第一种方法:使用图形化界面 MMC 来转移域控角色

一.转移架构主机角色

使用“Active Directory 架构主机”管理单元可以转移架构主机角色。您必须首先注册 Schmmgmt.dll

文件,然后才能使用此管理单元。 注册 Schmmgmt.dll

单击开始,然后单击运行。在打开框中,键入 regsvr32 schmmgmt.dll,然后单击确定。

收到操作成功的消息时,单击确定。

  1. 依次单击开始和运行,在打开框中键入 mmc,然后单击确定。
  2. 在文件菜单上,单击“添加/删除管理单元”。
  3. 单击添加。
  4. 依次单击 Active Directory 架构、添加、关闭和确定。
  5. 在控制台树中,右键单击 Active Directory 架构,然后单击更改域控制器。
  6. 单击指定名称,键入将成为新角色持有者的域控制器名称,然后单击确定。
  7. 在控制台树中,右键单击 Active Directory 架构,然后单击操作主机。
  8. 单击更改。
  9. 单击确定以确认您要转移该角色,然后单击关闭。

二.转移域命名主机角色

  1. 单击开始,指向管理工具,然后单击“Active Directory 域和信任关系”。
  2. 右键单击“Active Directory 域和信任关系”,然后单击“连接到域控制器”。

注意:如果您不在要将角色转移到其上的域控制器上,则必须执行此步骤。如果您已经连接到要转移其角色的域控制器,则不必执行此步骤。

  1. 执行下列操作之一: ? 在“输入其他域控制器名称”框中,键入将成为新的角色持有者的域控制器的名称,然后单击确定。
  • “或者,选择一个可用的域控制器”列表中,单击将成为新角色持有者的域控制器,然后单击确定。
  1. 在控制台树中,右键单击“Active Directory 域和信任关系”,然后单击操作主机。
  2. 单击更改。
  3. 单击确定以确认您要转移该角色,然后单击关闭。

三.转移 RID 主机角色、PDC 模拟器角色和结构主机角色

  1. 单击开始,指向管理工具,然后单击“Active Directory 用户和计算机”。
  2. 右键单击“Active Directory 用户和计算机”,然后单击“连接到域控制器”。

注意:如果您不在要将角色转移到其上的域控制器上,则必须执行此步骤。如果您已经连接到要转移其角色的域控制器,则不必执行此步骤。

  1. 执行下列操作之一: ? 在“输入其他域控制器名称”框中,键入将成为新的角色持有者的域控制器的名称,然后单击确定。

“或者,选择一个可用的域控制器”列表中,单击将成为新角色持有者的域控制器,然后单击确定。

  1. 在控制台树中,右键单击“Active Directory 用户和计算机”,指向所有任务,然后单击操作主机。
  2. 单击要转移角色(RID、PDC 或 结构)的相应选项卡,然后单击更改。
  3. 单击确定以确认您要转移该角色,然后单击关闭

第二种方法:使用 ntdsutil 工具转移域控角色和清除不存在的域控制器

1. 用 ntdsutil 来清除无效的 DC 信息

假如你的备份域为 abc.mstc.com 主域为 ctu.mstc.com,现在备份域坏了。那么你在装有 super tools 的主控域上执行如下命令:

C:\>ntdsutil
ntdsutil: metadata cleanup – 清理不使用的服务器的对象
metadata cleanup: select operation target – 选择的站点,服务器,域,角色和命名上下文
select operation target: connections – 连接到一个特定域控制器
server connections: connect to server ctu.mstc.com –绑定到 ctu.
用本登录的用户的凭证连接 ctu。
server connections: quit – 返回上一层目录
select operation target: list site – 在企业中列出站点(找到 1 个站点,标识为 0)
找到 1 站点
0 – CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=mstc,DC=com select operation target: select site 0 – 将标识为 0 的站点定为所选站点
站点 – CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=mstc,DC=com
没有当前域 没有当前服务器 当前的命名上下文
select operation target: list domains – 列出所有包含交叉引用的域 找到 1 域
0 – DC= mstc,DC=com
select operation target: select domain 0 – 将标识为 0 的域定为所选域
站点 – CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC= mstc,DC=com域 – DC= mstc,DC=com 没有当前服务器 当前的命名上下文
select operation target: list servers for domain in site – 列出所选域和站点中的服务 器(找到两个:0-abc.mstc.com;1-ctu. mstc.com)
找到 2 服务器
0 – CN=ADDEMO,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=mstc,DC=com
1 – CN=ADDDC,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=mstc,DC=com
select operation target: select server 0 – 将标识为 0 的服务器(abc)定为所选服务器——也就是要删除的 DC
站点 – CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=acme,DC=com
域 – DC= mstc,DC=com
服务器 -CN=ADDEMO,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=mstc,DC=com
DSA 对象 – CN=NTDS Settings,CN=ADDEMO,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configur
DNS 主机名称 – abc.mstc.com
计算机对象 – CN=ABC,OU=Domain Controllers,DC=mstc,DC=com
当前的命名上下文
select operation target: quit – 返回上一层目录
metadata cleanup: remove select server – 从所选服务器上删除 DS 对象在弹出的对话提示框上选择“是”,
“CN=abc,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=mstc,DC=com”删除了,从服务器“ctu”

现在,abc.mstc.com 这个 Dc 对象就在你的 AD 里消失了.

2.用 ntdsutil 来转移 fsmo 五种角色。

当您运行 Dcpromo.exe 程序并安装 AD 时,将向目录林中的第一个域控制器授予五个 FSMO 角 色。其中有两个 FSMO 角色是目录林范围的,另外三个是域范围的。如果创建了子域,两个目录林范

围的角色将不会更改。一个具有两个域的目录林将有八个 FSMO;其中两个是目录林范围的角色,每 个域各有三个特定于域的 FSMO 角色。这五个角色是 schema master-架构主机,Domain naming

master-域命名主机,Rid master-rid 主机,pdc master-pdc 防真器,Infrastructure Master-结构 主机。想要把这几种角色移动到另一台计算机上有 2 种方法,一种是转移,但必须 2 台计算机处于正 常运行状态。如果有其中某台处于离线状态只能用第二种方法,使用 ntdsutil 工具来强制获取这些角色。现在如果你的主控坏了这些角色也都在主控上,请在装有 support tools 工具新的域控或备份域控上执行如下命令:首先在 CMD 下运行

netdom query /d:域名 fsmo

查看一下当前哪些角色在哪台服务器上, 然后在 CMD 下运行

“ntdsutil”如果不知道命令怎么写,可以输入?得到帮助提示,
“roles”
“connections”
“connect to server 服务器名” 绑定一台当前在线的 DC 当连接成功后输入 q 退出回到上一层(roles)准备做角色迁移
“Seize schema master”
“Seize domain naming master”
“Seize RID master”
“Seize PDC”
“Seize infrastructure master”

以上五个命令,分别用作迁移上面所提到的 5 个角色到我们之前绑定的服务器上。 完成后再次回到 CMD 下执行”netdom query /d:域名 fsmo”,检查角色是否已被迁移

在“常规”选项卡上,找到全局编录复选框以查看其是否选中。如果正常就说明角色转换已成功。

3.对 AD 数据文件进行下线碎片整理操作. 由于微软已经提供了这整个操作过程的说明,所以在这里我只稍微重复一下,再加上一些额外的说明以避免大家犯一些不必要的灾难性错误, 因为这是一个很关键的操作,一旦出错将是灾难性的.

今天需要装个FreeBSD测试,用VMware ESXi安装好以后,装上后发现启动X以后键盘鼠标全没有反应了
于是放狗搜了一下,得知FreeBSD键盘鼠标没响应主要折腾俩个地方
一个就是 hald 的开启与禁用,开启的话加入以下两行到 /etc/rc.conf

dbus_enable="YES"
hald_enable="YES"

第一次启动的时候用以下命令

#/usr/local/etc/rc.d/hald start

注:以后就是开机自动启动了
再一个地方就是 /etc/X11/xorg.conf (如果没有这个文件可以用Xorg -configure 产生一个然后拷贝过去)
需要改动的地方就是加一行到 Section “ServerLayout” 中

Option "AllowEmptyInput" "off"

由于工作需要,要给开发人员提供Cygwin的离线安装包(ps1:现在Cygwin官方没有提供现成的离线安装包;ps2:我这的开发人员不能上网。。。)

开始本想直接下个现成的离线安装包,结果发现电驴上基本没速度,而且找了若干个版本都很低,于是打算自己做离线安装包,方法很简单,就是用官方提供的在线安装程序下载,最后把文件做成iso就可以了。

首先,到Cygwin的官网http://www.cygwin.com/,下载http://www.cygwin.com/setup.exe

双击运行程序,选择“Download Without Installing”;

点击下一步,选择本地存放路径,比如D:Cygwin-Install;

点击下一步,选择联网方式,如果你的网络环境需要代理的话,在这里设置;

点击下一步,选择下载地址源,这里我选择的是http://mirror.kernel.org

点击下一步,有个软件包目录的下载进度,稍等就可以看到所有的软件包清单了,因为要做离线安装包,所以直接在“All”的右侧左键点击,把默认的“Default”更改为“Install”,在“All”上选择Install的含义是下载所有二进制软件包,如果需要源码的话,根据自己需要点击吧,一般是不用的;

点击下一步,稍等片刻,会提示你要安装一个必要的依赖包,这步不需要选择什么,它只是提示信息;

最后点击下一步,就开始下载了,需要等很漫长的时间,看你的带宽而定;

等下载完毕后,点击确认关闭软件,就可以在D:Cygwin-Install看到收成了,另外说一下,生成的下载目录很长,比如我的http%3a%2f%2fmirrors.kernel.org%2fsourceware%2fcygwin%2f,在做ISO之前随便改个短点的名字就好啦,别忘了把setup.exe也放到iso根目录,这样一个山寨的Cygwin最新版本地安装包就做成啦~

授人鱼不如授人以渔啊!

2000系统里面有个图形化界面工具可以设置系统自动登录,可是这个工具在XP/2003中已经隐藏了,不过我们还是可以通过输入命令来打开这个工具的。

方法如下,在开始菜单-运行里面输入 control userpasswords2 或者 rundll32 netplwiz.dll,UsersRunDll 再敲回车即可打开用户帐户,勾选掉“要使用本机,用户必须输入用户名和密码”,点击确定后,输入你希望自动登录的用户名和密码即可。

当然,如果因为某种原因导致看不到“要使用本机,用户必须输入用户名和密码”这个选项的话,还是可以通过修改注册表的方法来实现的,打开注册表,找到[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionWinlogon ],在右侧找到“DefaultUserName”(如果没有则新建这个字符串值),双击输入需要的用户名;再找到“DefaultPassword” (如果没有则新建这个字符串值),双击输入相应的密码;最后找到“AutoAdminLogon”(如果没有则新建这个字符串值),双击将数值设置为1,再次重启电脑,就可以实现自动登录了。

有时候这么操作是为了一些软件可以开机自动运行,但是为了安全起见,在自动登录以后我们还需要立即锁定桌面,方法如下:新建一个快捷方式,输入引号中的内容“rundll32.exe user32.dll,LockWorkStation”把这个快捷方式放到开始菜单-程序-启动中就可以了,再次重启系统就会自动登录,并且会自动锁定桌面。

才搞定PXE启动PE3.0,现在想将多个wim的PE文件做为多启动使用,由于一时没有找到现成的BCD文件,于是打算自己做

在无忧论坛上逛了逛,有了不少启发,经过结合多篇文章的结晶,终于制作出PE3.0用的BCD文件,以下是具体方法.

先随便找个工作目录,如D:test,没有则创建一个,必须以管理员身份运行“命令提示符”
首先创建一个BCD文件(最好在Vista/Win7/PE3.0下操作),使用如下代码

d: 
cd test 
bcdedit -createstore BCD

创建ramdisk设置,由于网络启动pe,必须创建ramdisk设置

bcdedit -store BCD -create{ramdiskoptions} /d "Ramdisk options" 
bcdedit -store BCD -set {ramdiskoptions} ramdisksdidevice boot 
bcdedit -store BCD -set {ramdiskoptions} ramdisksdipath \\boot\\boot.sdi

创建bootmgr菜单,我设置的菜单名称为 “Windows PE 3.0″

bcdedit -store BCD -create {bootmgr} /d "Windows PE 3.0" 
bcdedit -store BCD -set {bootmgr} timeout 30

接下来为第一个PE镜像创建配置,标识符为\”Windows 7 PE x86\”

bcdedit -store BCD -create /d "Windows 7 PE x86" /application osloader

如果输入正常会返回类似下面的信息
项 {1a7d9362-37d7-11df-a714-000c29c75111} 成功创建。
拷贝这段id备用,将以下代码存到d:testbcd.bat

set WINPE_GUID={1a7d9362-37d7-11df-a714-000c29c75111} 
bcdedit /store bcd /set %WINPE_GUID% systemroot \\windows 
bcdedit /store bcd /set %WINPE_GUID% detecthal yes 
bcdedit /store bcd /set %WINPE_GUID% winpe yes 
bcdedit /store bcd /set %WINPE_GUID% osdevice ramdisk=[boot]\\Boot\\winpe.x86.wim,{ramdiskoptions} 
bcdedit /store bcd /set %WINPE_GUID% device ramdisk=[boot]\\Boot\\winpe.x86wim,{ramdiskoptions} 
bcdedit -store BCD -set {bootmgr} displayorder %WINPE_GUID% /addlast

将第一行的id替换为你刚刚生成的,winpe.x86wim替换为你自己的wim文件名,运行这个脚本(以管理员身份运行)

接下来配置第二个PE镜像的配置,注意标识符已经改为 “Windows 7 PE x64″

bcdedit -store BCD -create /d "Windows 7 PE x64" /application osloader

正常运行后也会生成一个id,将bcd.bat中的id替换,并修改winpe.x86.wim为你的第二个PE镜像文件名

再运行以管理员身份运行bcd.bat文件即可

按此方式创建更多的选项即可,最后把制作好的bcd文件拷贝到tftp的boot目录下即可