在安装并配置 Calendar Server 6 后,必须运行 csmig 才能迁移现有的 Calendar Server 和 LDAP 数据。LDAP CLD 插件的正常工作需要进行 LDAP 数据的迁移。要使用 csmig 迁移日历数据,请按照以下步骤执行操作:
使用 comm_dssetup.pl 配置 Directory Server。
如果尚未使用 comm_dssetup.pl 为 LDAP 属性创建索引,请现在创建索引。这将大大提高 LDAP 数据迁移的性能。
请使用分步服务器(非产品服务器)执行模拟运行测试。
模拟运行会报告 csmig 在实际迁移过程中将要执行的操作,但模拟运行并不真地迁移任何数据。在模拟运行之后以及实际迁移之前,您可以更正任何错误,并确定处理任何未解决的日历的计划。
有关如何执行模拟运行测试的说明,请参见csmig 迁移步骤。
迁移产品数据
在产品运行过程中,csmig 迁移日历数据库(.db 文件)与 LDAP 数据(用户和组首选项数据)、icsSubscribed、icsCalendar、icsCalendarOwned、icsFreeBusy、icsSet 和用于资源日历的 uid。迁移之后,将为所有日历资源创建 LDAP 项。
有关如何迁移产品数据的说明,请参见csmig 迁移步骤。
在分步服务器上安装 Calendar Server 6(如果需要)。
将日历数据库的快照复制到分步服务器。
通过执行以下任务在分步服务器上模仿产品 LDAP 环境:
安装 Directory Server。
在此服务器上安装 LDAP 数据库的快照。
运行 comm_dssetup.pl 以配置分步 Directory Server。
运行 csconfigurator.sh 以配置分步 Calendar Server。
以 icsuser 身份登录(或者,如果不相同,以配置过程中指定的 Calendar Server 运行时用户 ID 登录)。如果您以超级用户 (root) 身份运行 csmig,则可能需要重置已迁移文件的权限。
转至 cal_svr_base/SUNWics5/cal/sbin 目录。
运行 csdb check 命令检查数据库中是否存在损坏。如果该命令检测出数据库中存在损坏,则运行 csdb rebuild 命令来重新建立数据库。
考虑为不具有属主的用户日历创建通用的 calid。例如,以下命令将创建 calid 为 orphan 的用户:
./csuser -g orphan -s adminuser -y password -l en -c orphan create orphan |
使用 stop-cal 命令停止 Calendar Server(如果需要)。
cal_svr_base/SUNWics5/cal/sbin/stop-cal
运行带有 dryrun 选项的 csmig。例如,可以输入:
./csmig -b sesta.com -o csmig.out -e csmig.errors -m csmig.map -c orphan -r calmaster dryrun
该命令将不具有属主的用户日历(不带有属主的日历)指定给属主 orphan,将不具有属主的资源日历指定给属主 calmaster。
检查输出的映射文件 (csmig.map)。映射文件列出了 LDAP 模式中需要更新的条目。
检查输出、映射和出错文件。解决发现的任何 LDAP 问题或错误。在进行实际的迁移之前,确定如何处理未解决的日历。有以下若干选择:
在迁移前,删除任何不需要的日历。
为任何未解决的日历指定属主。
在迁移期间,使用 -c 和 -r 选项允许 csmig 为日历指定属主。
运行 csmig 以迁移分步日历数据库。
例如,以下命令将把日历数据库迁移至 /var/opt/SUNWics5/testcsdb/ 目录:
./csmig -t /var/opt/SUNWics5/testcsdb/ -b sesta.com -o csmig.out -e csmig.errors -m csmig.map -c orphan -r calmaster migrate
测试迁移完成之后,请执行以下步骤检查新迁移的日历数据库。
以 icsuser(或在配置过程中指定的 Calendar Server 运行时用户 ID)身份登录。如果您以超级用户 (root) 身份运行 csmig,则可能需要重置已迁移文件的权限。
转至 cal_svr_base/SUNWics5/cal/sbin 目录。
使用 stop-cal 命令停止 Calendar Server(如果需要)。
cal_svr_base/SUNWics5/cal/sbin/stop-cal
备份以下数据:
日历数据库(.db 文件)。
LDAP 数据:slapd 数据库目录和 LDAP 数据库。
ics.conf 文件。此步骤实际上并不需要,但如果要恢复为初始配置,该步骤则会很有帮助。
运行带有 migrate 选项的 csmig。
例如,以下命令将把日历数据库迁移至 /var/opt/SUNWics5/newcsdb/ 目录:
./csmig -t /var/opt/SUNWics5/newcsdb/ -b sesta.com -o csmig.out -e csmig.errors -m csmig.log -c orphan -r calmaster migrate
检查错误文件 (csmig.errors ) 中是否有未解决问题的日历,并根据csmig 迁移步骤中的计划解决这些日历中的问题。
运行 csdb check 命令以检查已迁移的数据库。如果该命令检测出数据库中存在损坏,则运行 csdb rebuild 命令来重新建立数据库。
将新迁移的数据库复制到 caldb.berkeleydb.homedir.path 参数指定的 /csdb 目录中。或者编辑此参数,使其指向迁移的数据库的新位置。
通过对 ics.conf 文件中的以下配置参数进行必要的更改来启用 LDAP CLD 插件:
caldb.dwp.server.server-hostname .ip = "server-hostname "(用于包含本地服务器的每个后端服务器)
caldb.cld.cache.homedir.path 指定 CLD 高速缓存目录的位置。默认值为 /var/opt/SUNWics5/csdb/cld_cache。
有关设置 LDAP CLD 插件的配置参数的信息,请参见第 6 章,在多个计算机上配置日历数据库分发。
使用 start-cal 命令重新启动 Calendar Server。
登录到 Communications Express 并通过检查几个已迁移的日历来验证配置是否起到作用。
要在检查时禁用警报,请将 ics.conf 文件中的以下参数都设置为 “no”: