Sun Java System Calendar Server 6.3 管理指南

3.5.5 csmig 提示和故障排除

本节介绍了以下提示和故障排除示例:

3.5.5.1 csmig 模拟运行日历显示了错误的日历所有者。

问题示例

名为 tchang:myCalendar 的日历的所有者在日历数据库中为 jsmithcsmig 模拟运行将映射显示为 jsmith:tchang_myCalendar。但是,您希望将此日历命名为 tchang:myCalendar,并将所有者指定为 tchang

解决方案示例

在迁移之前,使用 cscal 实用程序将 tchang:myCalendar 日历的所有者更改为 tchang。执行此操作后,迁移操作会将此日历映射为 tchang:myCalendar,并针对用户 ID tchang 向 LDAP 条目中添加 icsCalendarowned

3.5.5.2 LDAP 日历搜索无法正常工作。

问题示例

迁移之后,将启用 LDAP 日历搜索,但日历搜索对话框不返回任何结果,或仅返回部分结果。

解决方案示例

启用 LDAP 日历以使 Calendar Server 可以搜索 (&(objectclass=icscalendaruser)(icscalendarowned=*substr*))

使用以下过滤器对 LDAP 数据手动运行两个不同的搜索,并比较输出结果:

因为服务器使用包含 icsCalendarUser 对象类的过滤器,所以可能已在禁用模式检查的情况下部署了 LDAP 服务器,并且可能在没有 icsCalendarUser 对象类的情况下置备了某些日历条目。

3.5.5.3 csmig 模拟运行指示重复的日历名称。

问题示例

csmig 模拟运行映射文件和输出结果文件指示存在重复的日历名称。

例如,在初始数据库中,jsmith 拥有以下日历:

模拟运行的结果表示迁移时将合并这两个日历,生成的日历将为 jsmith:basketball,该日历的所有者为 jsmith 并总共具有 15 个事件

输出文件将包含以下警告消息:

Error modifying calendar properties, error=2

解决方案示例

如果不希望合并这两个日历,则在迁移之前将 basketball 的所有者更改为 jsmith 以外的用户。这可以保持这两个独立日历数据的完整性。

3.5.5.4 如何将不带有所有者的日历指定给不同的所有者?

问题示例

默认情况下,csmig 将所有不带有所有者的日历指定给一个所有者,但是我希望为其中的某些日历指定不同的所有者。

解决方案示例

csmig 不接受命令行中的映射文件。但是,可以在迁移之前为初始数据库中不带有所有者的日历指定所有者。检查所有不带有所有者的日历的空运行映射文件。然后,在迁移之前使用 cscal 实用程序为不带有所有者的日历指定所有者。在 -dryrun 模式下再次运行 csmig 以验证新的所有者。

3.5.5.5 如何将日历用户移动至其他后端服务器?

问题示例

如何将用户从一个后端服务器移动到另一个后端服务器?

解决方案示例

要移动日历用户,应通过 export 命令导出初始服务器上该用户的每个日历,然后通过 import 命令将日历导入到第二个服务器。移动日历后,可以删除初始服务器上的日历。有关如何移动日历的说明,参见15.6 管理用户日历