3

我正在尝试在我们的一台生产服务器(SunOS 5.10)上解压 Weblogic 10.3 域,但出现以下错误:

 $ /opt/bea10/wlserver_10.3/common/bin/unpack.sh -template=/tmp/CM.jar -domain=/opt/bea10/user_projects/CM
 Error: failed to create the temporary script file

假设这是一个特权问题: unpack 实用程序实际上在哪里尝试创建其临时脚本文件?解包脚本调用 Java 类 com.bea.plateng.domain.script.Unpacker,因此读取脚本本身不会显示位置。我需要向系统管理员询问权限,因此需要确切的目录位置。

当然,错误消息非常模糊,这也可能是其他问题。有任何想法吗?

BR,

马尔科

PS对不起交叉发布。我也在 Serverfault 上尝试过这个问题,但没有得到回复。也许程序员(比如我自己)无论如何都会做这种事情。

4

3 回答 3

1

请尝试使用-log=log_file-log_priority=debug可选参数执行您的命令(有关详细信息,请参阅http://download.oracle.com/docs/cd/E12840_01/common/docs103/pack/commands.html)并使用结果更新您的问题。

编辑(回答来自 OP 的评论):这很奇怪......我的下一个建议是尝试使用该unpack实用程序的 WLST 等效项。看看如何创建分布式 WebLogic 域?对于 WLST 脚本。我们的想法仍然是找到真正问题的踪迹。

如果这不起作用,那么我只需创建一个良好的旧tar.gz域(手动删除日志文件)并联系支持人员以了解究竟发生了什么。

PS:有可能com.bea.plateng.domain.script.Unpacker使用返回的临时目录java.io.tmpdir,在 Solaris 上是/var/tmp/. 检查你是否可以在那里写。但这只是一个赌注。

于 2010-01-18T08:27:20.863 回答
1

解包问题就在那里,因为解包需要一个文件夹和文件 domain-registry.xml 的写权限。

出现此问题是因为您已使用一个用户安装了 Weblogic 安装,并且您希望使用不同的用户执行 unpack。

启动 unpack.sh 的用户需要对文件夹 $BEA_HOME/wlserver_10.3/common/lib 的写入权限。执行 unpack 命令的用户会在此处写入一个临时文件。该文件在 unpack 命令终止后被 unpack 删除。

除此目录外,文件 $BEA_HOME/domain-registry.xml 由 unpack 命令更新。使用 chmod 作为安装用户,在您需要解压文件夹上的域和使用以下命令的文件时授予写入权限:

chmod a+rwx $BEA_HOME/wlserver_10.3/common/lib $BEA_HOME/domain-registry.xml

创建域后,将权限更改为安全值。

问候

     Hemant
于 2010-05-19T23:55:22.530 回答
0
-app_dir=application_directory

除了设置这些权限之外,我还使用了此选项,并且它有效。

将 application_directory 替换为空目录。

create /home/<user>/unpacktmp
于 2013-06-07T15:49:03.497 回答