我试图在旧的 Exchange 2007 SP3 服务器上创建一个新的接收连接器(计划在今年晚些时候升级),当它失败时,我做了一些研究。我找到的解决方案这里(我得到了完全相同的错误)包括setup.exe /PrepareSchema
从服务器上的 SP3 安装文件运行以正确设置活动目录架构。在尝试此操作之前,我想知道在现有服务器上运行 prepareschema 是否会导致任何问题。我偶然发现了一个博客这里这让我很担心。简而言之,如果 Active Directory 中的对象继承权限被禁用,prepareschema 命令将失败,并可能导致邮件流出现问题。
我按照步骤下载adfind
并运行了他提供的命令,adfind 工具返回了几个用户和组对象,但我不太确定它是否告诉我他们已经禁用了继承的权限。
这是一个小型服务器,只有大约 20 个邮箱,但是当我运行命令时
adfind -b "DC=domain,DC=name" -sddl++ ntsecuritydescriptor -onlydaclflag -resolvesids -list -csv | find /i "(FLAGS:PROTECTED INHERIT)" | find /v /i "CN=Policies,CN=System"
它返回了在服务器上拥有邮箱的几个用户的一行,以及一些 WMIPolicy 和系统对象,它看起来像这样:
"CN=FirstName LastName,CN=Users,DC=domain,DC=com","[DACL] (FLAGS:PROTECTED INHERIT)"
"CN=VolumeTable,CN=FileLinks,CN=System,DC=domain,DC=com","[DACL] (FLAGS:PROTECTED INHERIT)"
"CN=Cert Publishers,CN=Users,DC=domain,DC=com","[DACL] (FLAGS:PROTECTED INHERIT)"
"CN=Schema Admins,CN=Users,DC=domain,DC=com","[DACL] (FLAGS:PROTECTED INHERIT)"
"CN=Replicator,CN=Builtin,DC=domain,DC=com","[DACL] (FLAGS:PROTECTED INHERIT)"
"CN=WMIPolicy,CN=System,DC=domain,DC=com","[DACL] (FLAGS:PROTECTED INHERIT)"
"CN=SOM,CN=WMIPolicy,CN=System,DC=domain,DC=com","[DACL] (FLAGS:PROTECTED INHERIT)"
它似乎是用户和组对象的混合体,但我不太确定,我不确定它是否表示它们确实禁用了继承,以及这是否是一件坏事。据我所知,所有这些对象都在我的 BUILTIN 或 USERS 组织单元中,而且只有 28 个对象。
考虑到这些信息,运行 PrepareSchema 命令是否安全?
答案1
我知道这是一个老问题,但由于某种原因它突然出现在主页上并且仍然没有得到解答,因此我会尝试一下。
那篇博客文章确实很旧了,它警告了如果你尝试准备 AD 来安装 Exchange 2007 会发生什么情况从 Exchange 2003 升级时;在这种情况下,某些修改可能无法被某些对象正确继承,从而破坏现有的邮件流。
然而,由于你已经安装 Exchange 2007,PrepareSchema 操作只需要调整 SP3 的一些设置,而不是像从 Exchange 2003 升级时那样对 Exchange 组织进行大量重组;因此,您不会遇到该问题,因为在首次安装 Exchange 2007 时已经完成了繁重的工作;如果您的环境中存在该问题,那么您早就遇到过它了。