Apache 启动脚本转储核心

Apache 启动脚本转储核心

操作系统:Solaris/SunOS。

当使用以下命令启动 Apache2.x 时:

./apachectl start

终端上打印出以下错误:

非法指令 - 核心转储

知道是什么原因造成的吗?或者有什么日志我可以检查吗?

更多信息::

从 /bin/sh -x ./apachectl start 输出:

+ [ xstart = x ]
+ /path/path/apache2/bin/httpd -d /path/path/apache2/ -k start
Illegal Instruction - core dumped

来自核心文件:

$pflags core
  core 'core' of 19561:   /path/path/apache2/bin/httpd -d /path/path/apache2/ -k start  
        data model = _ILP32  flags = MSACCT|MSFORK
   /1:    flags = 0
      sigmask = 0xffffbefc,0x0000ffff  cursig = SIGILL

答案1

脚本apachectl本身可能没有崩溃。更有可能的是,它调用的命令崩溃了。

尝试像这样运行脚本:

$ /bin/sh -x ./apachectl start

这将在脚本上启用跟踪模式,并允许您查看它在退出之前执行的最后一项操作。如果您运行此命令但不清楚发生了什么,请使用最后几行输出更新您的问题。

另外,您提到它会转储核心。在 Solaris 上,这可能会在您的当前目录或中创建一个核心文件/var/core,具体取决于您的coreadm配置。如果您可以找到核心文件,请使用以下命令检查它:

$ pstack corefile
$ pflags corefile

相关内容