C# 如何将我的mono程序添加到启动中?

C# 如何将我的mono程序添加到启动中?,c#,ubuntu,mono,amazon-ec2,C#,Ubuntu,Mono,Amazon Ec2,我对Ubuntu很陌生。我在EC2上部署了一个mono应用程序。目前我使用mono folder/app.exe启动程序。 当系统重新启动时,如何运行此操作 提前谢谢 更新:-除了下面的答案,我还将文件夹移动到了/opt。否则它将抛出库未找到错误。我建议使用upstart。例如: /etc/init/app.exe.conf description "My Mono app" start on runlevel [2345] stop on runlevel [016] setuid nob

我对Ubuntu很陌生。我在EC2上部署了一个mono应用程序。目前我使用
mono folder/app.exe
启动程序。 当系统重新启动时,如何运行此操作

提前谢谢


更新:-除了下面的答案,我还将文件夹移动到了
/opt
。否则它将抛出库未找到错误。

我建议使用upstart。例如:

/etc/init/app.exe.conf

description "My Mono app"

start on runlevel [2345]
stop on runlevel [016]

setuid nobody
setgid nogroup
respawn
console log

exec /path/to/app.exe
它将以用户nobody身份运行您的应用程序,如果它崩溃,请重新启动它,并将所有输出记录到/var/log/upstart/app.exe.log。要手动启动和停止它,您可以使用“start app.exe”和“stop app.exe”。
当然,您可以将配置文件命名为其他名称,如myapp.conf。查看upstart站点了解更多信息:

已尝试,但我收到
开始:拒绝发送消息,1条匹配规则;type=“method\u call”,sender=“:1.6”(uid=1000 pid=1198 comm=“start omega.in.exe”)interface=“com.ubuntu.Upstart0\u 6.Job”member=“start”error name=“(unset)”requested\u reply=“0”destination=“com.ubuntu.Upstart”(uid=0 pid=1 comm=“/sbin/init”)
当我开始使用
start omega.in.exe时,您需要是root用户或使用sudo。示例:sudo start omega.in.exe我注意到Console.ReadLine没有使用此方法保持应用程序运行。stdin和upstart是否有什么可能导致新线转到stdin?我是Linux新手。。。