【发布时间】:2014-02-05 04:28:32
【问题描述】:
我在服务器 (myoemhost) 上安装了 Oracle Enterprise Manager 12c,但是当我尝试手动添加目标时,它会产生以下消息:-
Shell 路径不正确或未定义。:C:/cygwin/bin/sh.exe(SH_PATH),-c(SH_ARGS) on host mydbhost.mycompany.co.uk
我使用正确的密码添加了 cyg_server 的授权凭据,并且没有 run/as privs(因为当我这样做时它不会让我申请)。
日志文件产生以下结果
2014-01-15_15-42-13:INFO:=================================== ===初始化开始 =====================================
2014-01-15_15-42-13:INFO:为主机名mydbhost.mycompany.co.uk 创建 ClusterBase Ops 实例
2014-01-15_15-42-13:INFO:设置安全上下文SYSMAN
2014-01-15_15-42-13:INFO:在 BaseDeployerOps 中设置区域设置成功
2014-01-15_15-42-13:INFO:[action name=SSHValidations, action Description=Remote Validations, order=100, skip=false, executeAlways=false, status=null,
2014-01-15_15-42-13:INFO:[action name=SSHSetup, action Description=SSH Setup, order=200, skip=false, executeAlways=false, status=null,
2014-01-15_15-42-13:INFO:skipping ssh setup since its jsch plugin
2014-01-15_15-42-13:INFO:根据输入跳过操作 SSHSetup
2014-01-15_15-42-13:INFO:[action name=CopyAgentImage, action Description=Transferring Agent Software to Destination Host, order=300, skip=false, executeAlways=false, status=null,
2014-01-15_15-42-13:INFO: ACTIONS : SSHValidations
2014-01-15_15-42-13:信息:操作:CopyAgentImage
2014-01-15_15-42-13:INFO:============为密钥创建部署 Vo:初始化并将状态设置为 NOT_EXECUTED
2014-01-15_15-42-13:INFO:=====为 actionSSHValidations 创建 Action Vo
2014-01-15_15-42-13:INFO:=====为 actionCopyAgentImage 创建动作 Vo
2014-01-15_15-42-13:INFO:deploymentVo 现在状态为:NOT_EXECUTED
2014-01-15_15-42-14:INFO:Retry Count 5 sleep interval 250
2014-01-15_15-42-14:INFO:==SUDO EXISTS false SUDO PRIV false
2014-01-15_15-42-14:INFO:====CALLING ACTIONdoSSHValidations
2014-01-15_15-42-14:INFO:更新状态 IN_PROGRESS 以获取操作名称 SSHValidations 和密钥:SSHValidations
2014-01-15_15-42-14:INFO:action:NodesAliveperform:true
2014-01-15_15-42-14:INFO:===VALIDATION===:检查活跃节点
2014-01-15_15-42-14:INFO:RESULT 0
2014-01-15_15-42-14:INFO:====CALLING ACTIONdoNodesAlive
2014-01-15_15-42-14:INFO:action:RemotePasswordCheckperform:true
2014-01-15_15-42-14:INFO:===VALIDATION===:检查目标节点上的密码有效性
2014-01-15_15-42-14:INFO:NODES=mydbhost.mycompany.co.uk 重试次数 5
2014-01-15_15-42-14:INFO:重试次数:1
2014-01-15_15-42-14:INFO:在节点 mydbhost.mycompany.co.uk 上运行 cmd C:/cygwin/bin/true.exe
2014-01-15_15-42-14:INFO:ssh 连接超时 60000
2014-01-15_15-42-16:INFO:退出代码:1
2014-01-15_15-42-16:INFO:错误:
2014-01-15_15-42-16:INFO:Out:
2014-01-15_15-42-16:INFO:检查目标节点上的密码有效性:通过
2014-01-15_15-42-16:INFO:RESULT 0
2014-01-15_15-42-16:INFO:====CALLING ACTIONdoRemotePasswordCheck
2014-01-15_15-42-16:INFO:action:ShPathCheckperform:true
2014-01-15_15-42-16:INFO:===VALIDATION===:检查目标节点上的 SH_PATH
2014-01-15_15-42-16:INFO:isWrongShPath:remotePathPropertiesLoc:E:/Oracle/Middleware/oms/oui/prov/resources 平台 id:233
2014-01-15_15-42-16:INFO:NODES=mydbhost.mycompany.co.uk
2014-01-15_15-42-16:INFO:在节点 mydbhost.mycompany.co.uk 上运行 cmd C:/cygwin/bin/sh.exe -c C:/cygwin/bin/true.exe
2014-01-15_15-42-16:INFO:Action description 在主机 mydbhost.mycompany.co 上执行命令 C:/cygwin/bin/sh.exe -c C:/cygwin/bin/true.exe。英国
2014-01-15_15-42-16:INFO:Attempt :1 pty required false 没有输入
2014-01-15_15-42-17:INFO:C:/cygwin/bin/sh.exe -c C:/cygwin/bin/true.exe 在主机 mydbhost.mycompany.co.uk 上执行失败
2014-01-15_15-42-17:INFO: OUT null
2014-01-15_15-42-17:INFO: ERR null
2014-01-15_15-42-17:INFO: EXIT CODE1
2014-01-15_15-42-17:INFO: ACTION 在主机 mydbhost.mycompany.co.uk 上执行命令 C:/cygwin/bin/sh.exe -c C:/cygwin/bin/true.exe
2014-01-15_15-42-17:INFO:SH_PATH 错误消息:C:/cygwin/bin/sh.exe(SH_PATH),-c(SH_ARGS) 在主机 mydbhost.mycompany.co.uk 上
2014-01-15_15-42-17:INFO: Jsch Validation Failed 问题:Shell 路径验证失败 建议:依次检查以下文件中的属性值,ssPaths_
.properties 或 sPaths.properties 或 Paths .properties,在“E:/Oracle/Middleware/oms/oui/prov/resources”目录中。如果属性值正确,则确保登录用户帐户已启用远程登录。有关详细信息,请参阅 Oracle Enterprise Manager Basic Installation Guide。 2014-01-15_15-42-17:INFO:由于 jsch 验证失败而中断
2014-01-15_15-42-17:INFO:InvocationTargetException 异常
2014-01-15_15-42-17:INFO:打印异常:java.lang.reflect.InvocationTargetException 在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 在 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 在 java.lang.reflect.Method.invoke(Method.java:597) 在 oracle.sysman.core.agentpush.ui.deployer.BaseDeployerOps.executeActions(BaseDeployerOps.java:1862) 在 oracle.sysman.core.agentpush.ui.deployer.InitializationDeployer.deploy(InitializationDeployer.java:421) 在 oracle.sysman.core.agentpush.ui.deployfwk.DeploymentWorker.run(DeploymentWorker.java:26) 在 oracle.sysman.util.threadPoolManager.WorkerThread.run(Worker.java:311) 引起:oracle.sysman.core.agentpush.ui.exception.JschValidationException 在 oracle.sysman.core.agentpush.ui.deployer.JschValidationOps.doShPathCheck(JschValidationOps.java:466) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 在 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 在 java.lang.reflect.Method.invoke(Method.java:597) 在 oracle.sysman.core.agentpush.ui.deployer.InitializationDeployer.doSSHValidations(InitializationDeployer.java:137) ... 8 更多 2014-01-15_15-42-17:INFO:Jsch Valdation Failed 问题:Shell 路径验证失败建议:按此顺序检查以下文件中的属性值,ssPaths_
.properties 或 sPaths.properties 或 Paths.properties,在“E:/Oracle/Middleware/oms/oui/prov/resources”目录中。如果属性值正确,则确保登录用户帐户已启用远程登录。有关详细信息,请参阅 Oracle Enterprise Manager Basic Installation Guide。 2014-01-15_15-42-17:INFO:更新操作 SSHValidationswith Status FAILED and error Message :Shell path is wrong or not defined.:C:/cygwin/bin/sh.exe(SH_PATH),-c( SH_ARGS)在主机 mydbhost.mycompany.co.uk 和问题 Shell 路径验证失败和建议按此顺序检查以下文件中的属性值,ssPaths_
.properties 或 sPaths.properties 或 Paths.properties,在“E: /Oracle/Middleware/oms/oui/prov/resources”目录。如果属性值正确,则确保登录用户帐户已启用远程登录。有关详细信息,请参阅 Oracle Enterprise Manager Basic Installation Guide。 2014-01-15_15-42-17:INFO:=================action status is not empty FAILED
2014-01-15_15-42-17:INFO:由于 jsch 验证失败而中断
2014-01-15_15-42-17:INFO:Skipping action CopyAgentImage 因为之前的某个步骤失败了
2014-01-15_15-42-17:INFO:以下操作失败SSHValidations
2014-01-15_15-42-17:INFO:TIME TAKEN 用于在主机 mydbhost.mycompany.co.uk 上进行初始化为 0:小时 0:分钟 4 秒
2014-01-15_15-42-17:INFO:PERF:HOSTNAME:mydbhost.mycompany.co.uk:InitializationDeployer_EXECUTION_TIME:4018
2014-01-15_15-42-17:INFO:HOST:mydbhost.mycompany.co.uk
2014-01-15_15-42-17:INFO:销毁记录器
2014-01-15_15-42-17:INFO:=================================== ===初始化结束=====================================
2014-01-15_15-42-17:INFO: 清除 BaseDeployerOps 中的 EMSecurityContext EMExecutionContext
现在我承认我不是 ssh 或 cygwin 甚至 Oracle12c 方面的专家,而是阅读部分
2014-01-15_15-42-14:INFO:===VALIDATION===:检查活跃节点
2014-01-15_15-42-14:INFO:RESULT 0
2014-01-15_15-42-14:INFO:====CALLING ACTIONdoNodesAlive
2014-01-15_15-42-14:INFO:action:RemotePasswordCheckperform:true
2014-01-15_15-42-14:INFO:===VALIDATION===:检查目标节点上的密码有效性
2014-01-15_15-42-14:INFO:NODES=mydbhost.mycompany.co.uk 重试次数 5
2014-01-15_15-42-14:INFO:重试次数:1
2014-01-15_15-42-14:INFO:在节点 mydbhost.mycompany.co.uk 上运行 cmd C:/cygwin/bin/true.exe
2014-01-15_15-42-14:INFO:ssh 连接超时 60000
2014-01-15_15-42-16:INFO:退出代码:1
2014-01-15_15-42-16:INFO:错误:
2014-01-15_15-42-16:INFO:Out:
2014-01-15_15-42-16:INFO:检查目标节点上的密码有效性:通过
2014-01-15_15-42-16:INFO:RESULT 0
建议它可以使用我提供的用户名和密码 (cyg_server) 联系远程主机 (mydbhost.mycompany.co.uk),这表明 ssh 工作正常。
不过下一部分
2014-01-15_15-42-16:INFO:====CALLING ACTIONdoRemotePasswordCheck
2014-01-15_15-42-16:INFO:action:ShPathCheckperform:true
2014-01-15_15-42-16:INFO:===VALIDATION===:检查目标节点上的 SH_PATH
2014-01-15_15-42-16:INFO:isWrongShPath:remotePathPropertiesLoc:E:/Oracle/Middleware/oms/oui/prov/resources 平台 id:233
2014-01-15_15-42-16:INFO:NODES=mydbhost.mycompany.co.uk
2014-01-15_15-42-16:INFO:在节点 mydbhost.mycompany.co.uk 上运行 cmd C:/cygwin/bin/sh.exe -c C:/cygwin/bin/true.exe
2014-01-15_15-42-16:INFO:Action description 在主机 mydbhost.mycompany.co 上执行命令 C:/cygwin/bin/sh.exe -c C:/cygwin/bin/true.exe。英国
2014-01-15_15-42-16:INFO:Attempt :1 pty required false 没有输入
2014-01-15_15-42-17:INFO:C:/cygwin/bin/sh.exe -c C:/cygwin/bin/true.exe 在主机 mydbhost.mycompany.co.uk 上执行失败
2014-01-15_15-42-17:INFO: OUT null
2014-01-15_15-42-17:INFO: ERR null
2014-01-15_15-42-17:INFO: EXIT CODE1
2014-01-15_15-42-17:INFO: ACTION 在主机 mydbhost.mycompany.co.uk 上执行命令 C:/cygwin/bin/sh.exe -c C:/cygwin/bin/true.exe
2014-01-15_15-42-17:INFO:SH_PATH 错误消息:C:/cygwin/bin/sh.exe(SH_PATH),-c(SH_ARGS) 在主机 mydbhost.mycompany.co.uk 上
2014-01-15_15-42-17:INFO: Jsch Validation Failed 问题:Shell 路径验证失败 建议:依次检查以下文件中的属性值,ssPaths_
.properties 或 sPaths.properties 或 Paths .properties,在“E:/Oracle/Middleware/oms/oui/prov/resources”目录中。如果属性值正确,则确保登录用户帐户已启用远程登录。有关详细信息,请参阅 Oracle Enterprise Manager Basic Installation Guide。
建议不是,因为我知道路径 (c:\cygwin\bin\sh.exe) 是正确的,并且 cyg_server 可以访问该文件(据我所知)。
谁能指出我应该前进的方向,因为我真的不知道这有什么问题:)
谢谢。
【问题讨论】:
-
我开始想知道一些事情 - oem 12c 使用什么来“添加目标”?是当前登录的用户(即 \\mydomain\me)还是某个随机的 oracle 用户?
-
原来这是由密码错误引起的 - 我按照安装 CYGWIN 服务器的说明缺少一个关键步骤,该步骤涉及在 /etc/passwd 中为 cyg_server 用户重新创建密码,因此,它导致了上述错误(根本没有提到密码!)
标签: ssh oracle11g cygwin oracle12c