我正在尝试在我们的某个生产服务器(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实用程序试图创建其临时脚本文件? unpack脚本调用Java类com.bea.plateng.domain.script.Unpacker,因此读取脚本本身并不会显示该位置。我需要向系统管理员询问特权,因此需要一个确切的目录位置。
当然,错误信息是如此模糊,以至于这也可能是其他一些问题。有什么想法吗?
BR,
马尔科
P.S。很抱歉交叉发布。我在Serverfault上也尝试过这个问题,但没有回复。也许程序员(比如我自己)也会这样做。
答案 0 :(得分:1)
请尝试使用-log=log_file
和-log_priority=debug
可选参数执行命令(有关详细信息,请参阅http://download.oracle.com/docs/cd/E12840_01/common/docs103/pack/commands.html)并使用结果更新您的问题。
编辑(回答OP的评论):这很奇怪......我的下一个建议是尝试使用unpack
实用程序的WLST等效项。请查看How to create a distributed WebLogic domain ?以获取WLST脚本。这个想法仍然是为了解决真正的问题。
如果这不起作用,那么我只需创建一个旧的tar.gz
域(手动删除日志文件)并联系支持人员以找出确切的结果。
PS:com.bea.plateng.domain.script.Unpacker
可能使用java.io.tmpdir
返回的临时目录,在Solaris上为/var/tmp/
。检查你是否可以在那里写。但这只是一个赌注。
答案 1 :(得分:1)
出现此问题的原因是您已经安装了一个用户的Weblogic安装,并且您希望使用其他用户执行解压缩。
启动unpack.sh的用户需要对该文件夹的写访问权 $ BEA_HOME / wlserver_10.3 / common / lib目录。 执行unpack命令的用户在此写入临时文件。解压缩命令终止后,通过解压缩删除此文件。
在此目录旁边,文件$ BEA_HOME / domain-registry.xml由unpack命令更新。 使用chmod作为安装用户,在您需要使用以下命令解压缩文件夹和文件上的域时提供写访问权限:
chmod a + rwx $ BEA_HOME / wlserver_10.3 / common / lib $ BEA_HOME / domain-registry.xml
创建域后,将权限更改为安全值。
此致
Hemant
答案 2 :(得分:0)
-app_dir=application_directory
除了设置这些权限之外,我使用了这个选项,但它确实有效。
将application_directory替换为空目录。
create /home/<user>/unpacktmp