amazon-web-services - 执行 native 代码时收到 SIGABRT - 在 Cloudformation 期间在 AWS 上运行 xsp4 时出错

标签 amazon-web-services ubuntu mono sigabrt xsp4

在 AWS Ubuntu AMI 上启动 xsp4 服务器时出现错误。错误是 initialize: mono_thread_create_internal () failed , 接着:

Got a SIGABRT while executing native code. This usually indicates a fatal error in the mono runtime or one of the native libraries used by your application.



在我自己的计算机上执行相同的命令没有错误。知道错误是什么 - 可能是缺少包、某些配置或类似的东西?

编辑:嗯,这很奇怪,当我通过 ssh 登录并手动运行命令时它正在工作。但是,我需要在 CloudFormation 期间运行它,但它在那里失败了。可能在 CloudFormation 期间某些内容尚未完全设置,或者用户帐户不同?但是再想一想,CloudFormation 不是以 root 身份运行的吗?

完整日志:

+ xsp4 --port 80
Cloud-init v. 0.7.9 在 2017 年 10 月 22 日星期日 17:18:30 +0000 运行“modules:final”。上升 12.78 秒。
Cloud-init v. 0.7.9 于 2017 年 10 月 22 日星期日 17:19:27 +0000 完成。数据源 DataSourceEc2。上升 69.50 秒
xsp4
监听地址:0.0.0.0
根目录:/var/www/HelloWebApi
监听端口:80(非安全)
点击 Return 停止服务器。
服务器未启动。
在 Mono.WebServer.ApplicationServer.Stop () in :0
在 (wrapper remoting-invoke-with-check) Mono.WebServer.ApplicationServer:Stop ()
在 Mono.WebServer.XSP.Server.DebugMain (System.String[] args, Boolean root, IApplicationHost ext_apphost, Boolean quiet) in :0
初始化:mono_thread_create_internal () 失败
堆栈跟踪:


在(包装器托管到 native )System.Net.Sockets.Socket.socket_pool_queue(System.Net.Sockets.SocketAsyncCallback,System.Net.Sockets.SocketAsyncResult)
在 System.Net.Sockets.Socket.QueueSocketAsyncResult (System.Collections.Generic.Queue`1,System.Net.Sockets.SocketAsyncWorker,System.Net.Sockets.SocketAsyncResult)
在 System.Net.Sockets.Socket.AcceptAsync (System.Net.Sockets.SocketAsyncEventArgs)
在 Mono.WebServer.ApplicationServer.RunServer ()
在 System.Threading.ThreadHelper.ThreadStart_Context (对象)
在 System.Threading.ExecutionContext.RunInternal (System.Threading.ExecutionContext,System.Threading.ContextCallback,object,bool)
在 System.Threading.ExecutionContext.Run (System.Threading.ExecutionContext,System.Threading.ContextCallback,object,bool)
在 System.Threading.ExecutionContext.Run (System.Threading.ExecutionContext,System.Threading.ContextCallback,object)
在 System.Threading.ThreadHelper.ThreadStart ()
在(包装器运行时调用) object.runtime_invoke_void__this__ (object,intptr,intptr,intptr)

native 堆栈跟踪:

/usr/bin/mono() [0x49ff2f]
/lib/x86_64-linux-gnu/libpthread.so.0(+0x11390) [0x7f39c549b390]
/lib/x86_64-linux-gnu/libc.so.6(gsignal+0x38) [0x7f39c50f5428]
/lib/x86_64-linux-gnu/libc.so.6(中止+0x16a) [0x7f39c50f702a]
/usr/bin/mono() [0x630409]
/usr/bin/mono() [0x63069c]
/usr/bin/mono() [0x63076f]
/usr/bin/mono() [0x58e6e5]
[0x4044ec36]

来自 gdb 的调试信息:

==================================================== ================
执行 native 代码时收到 SIGABRT。这通常表明
单声道运行时或 native 库之一中的 fatal error
由您的应用程序使用。
==================================================== ================

最佳答案

如果它在 SSH 之后运行而不是直接运行,则很可能是 TTY 缺失问题。如果您的服务器需要 TTY,那么它不会以这种方式启动

正如您在回复中提到的 xsp4等待回车键退出并取--nonstop如果你不想要这种行为,那么你应该使用那个 arg。它将确保不需要 TTY。

如果可执行文件实际上仍然需要 TTY,那么您可以查看 script命令。它确实分配了一个 TTY 并执行了命令。请参阅下面的更多细节

http://man7.org/linux/man-pages/man1/script.1.html

关于amazon-web-services - 执行 native 代码时收到 SIGABRT - 在 Cloudformation 期间在 AWS 上运行 xsp4 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46877181/

相关文章:

c# - 如何加快 FieldInfo.GetValue() 调用的速度?

.net - OSX 中Mono web 开发的经验

amazon-web-services - 使用基于快照的卷启动失败

amazon-web-services - AWS 雅典娜错误 : INTERNAL_ERROR_QUERY_ENGINE on CREATE TABLE

ubuntu - 无法在 Elasticsearch 中创建映射

升级到 14.04 后 Python 无法正确导入

c# - 单声道/WCF : Cannot determine caller IP on Ubuntu

amazon-web-services - 在 AWS API 网关中移动资源

amazon-web-services - 如何将域映射到 EC2 和 S3

linux - 无法在 Ubuntu 17.04 上正确安装 mongodb