标签: upstart

如何在 Upstart 脚本中设置自动核心转储?

myapp是最终崩溃的应用程序。我想获得那些崩溃的核心转储......

这是我为实现这一目标而编写的新贵脚本。它还没有工作。

description "myupstart"

start on runlevel [2534]
stop on runlevel [!2534]

script

    ulimit -c 10000
    echo "/var/crash/core.%e.%s.%u.%g.%p.%t" > /proc/sys/kernel/core_pattern

    cd /path/to/app
    ./myapp

end script

respawn
Run Code Online (Sandbox Code Playgroud)

详细信息:
myapp适用于权限下降。它以 root [当然] 开始,然后切换到另一个用户名/组。这是一个问题吗?

如果我手动启动应用程序,以下命令在命令行上工作,但它们在 upstart 脚本中不起作用:

ulimit -c 10000
echo "/var/crash/core.%e.%s.%u.%g.%p.%t" > /proc/sys/kernel/core_pattern
Run Code Online (Sandbox Code Playgroud)

为什么会有这种差异?

upstart kernel gdb ulimit 14.04

3
推荐指数
1
解决办法
3092
查看次数

如何找出我拥有的 upstart 版本?

我试图弄清楚我是否应该使用用户作业或会话作业,因为会话作业是从新贵 1.7 开始做事情的正确方法。

我正在运行 Ubuntu 14.04。

如何找出正在使用的 upstart 版本?

versions upstart

3
推荐指数
1
解决办法
5388
查看次数

设置 Minecraft 服务器以自动启动和停止

我跟着这个教程:http : //minecraft.gamepedia.com/Tutorials/Ubuntu_startup_script

...我收到一个错误消息:

start: Unknown job: minecraft-server
Run Code Online (Sandbox Code Playgroud)

...当我运行启动或停止命令时。

server upstart minecraft

3
推荐指数
1
解决办法
3819
查看次数

使用 crontab 按计划重启 Upstart 服务?

我需要按shiny-server例行计划在 Ubuntu 12.04 上重新启动(Upstart 服务)。

通常,如果我想手动重新启动此服务,只需键入:sudo restart shiny-serverservice shiny-server restart(作为root)。据我了解,这类似于sudo restart mysql.

为了安排重新启动,我在我的root用户中尝试了以下条目crontab

 0 6 * * * restart shiny-server
 0 6 * * * service shiny-server restart
 0 6 * * * bash /home/local/ANT/raybao/dev/script.sh
Run Code Online (Sandbox Code Playgroud)

当最后一行script.shservice shiny-server restart

以上都没有实际工作!

所以我很困惑/困惑。我错过了什么?谢谢!!

更多信息shiny-serverhttp : //rstudio.github.io/shiny-server/latest/#upstart-ubuntu-12.04-through-14.10-redhat-6

cron upstart 12.04

3
推荐指数
1
解决办法
3万
查看次数

如何在 Ubuntu 14.04、Upstart、SysV 或两者的组合中启动服务?

我在开发机器上安装了这 2 个网络服务器,因为它们都绑定到端口 80,在任何给定时间只有一个可以运行。
我希望能够修改 init 启动过程,以便我可以选择启动哪一个,禁用哪一个。
为了知道我需要做什么来实现这一点,我试图找出实际控制这些服务启动的因素。
我的理解是 Ubuntu 14.04 启动脚本由 Upstart 处理,并且 upstart init 脚本在/etc/init.
但是 nginx 中没有nginx.conf条目,/etc/init而是有一个条目/etc/init.d- 这是否意味着 Nginx 由 SysV 而不是 Upstart 管理?
这是否也意味着默认情况下 Ubuntu 14.04(在 15.04 上迁移到 systemd 之前)可能使用 upstart 和 initV 的组合?
还是重要的系统进程只由 Upstart 启动,而像 Nginx 这样的单个软件包可能会选择 upstart 或 systemV init?

server startup upstart nginx services

3
推荐指数
1
解决办法
5765
查看次数

如何从新贵工作的文件中加载环境变量?

我正在为使用环境变量配置的服务编写新贵工作,其中很多(> 20)。

到目前为止,处理这种情况的方式通常是从使用 Ruby 的 Dotenv gem 加载配置文件的 Ruby 启动器运行它。我想用一个简单的 upstart 文件替换启动器(以减少我需要维护的自定义代码量),但我遇到了如何设置服务所需的所有环境变量的问题。

我最初的看法是:

script
   . /etc/default/service-conf
   /usr/local/bin/service
end script
Run Code Online (Sandbox Code Playgroud)

但只是获取文件并不会导出变量,而且我不想export在脚本中添加很多命令,主要是因为它将完全无法维护且无法读取。

upstart environment-variables

3
推荐指数
1
解决办法
7136
查看次数

如何让我的脚本在任何关闭序列(例如卸载外部驱动器)之前运行

我有一个备份脚本~/scripts/backup.sh和我的暴发户conf ~/.config/upstart/shutdown.conf

description "my shutdown script"
start on desktop-end

task
console log
script
  exec ~/scripts/backup.sh start
end script
Run Code Online (Sandbox Code Playgroud)

我的脚本备份到外部硬盘驱动器on desktop-end,但在调用我的脚本之前外部硬盘驱动器被卸载。

如何在关闭序列之前使用我的脚本,然后仅在脚本完成时恢复

我尝试了这篇文章中的解决方案,但挂钩on starting rc不起作用。

谢谢。

shutdown scripts upstart systemd 15.10

3
推荐指数
1
解决办法
4638
查看次数

在 ubuntu 上网本 remix 上禁用 GDM

我正在运行 Ubuntu Netbook Remix 10.10(在 Pandaboard 上),但它无法使用 grub 启动(因此我无法在启动时将“text”参数传递给它)。

如何禁用 gdm 使其不在启动时启动?没有 /etc/gdm/gdm.conf。

gdm boot upstart ubuntu-netbook

2
推荐指数
1
解决办法
1330
查看次数

Ubuntu 12.04,为什么 service procps start 不启动 procps?

我一直在尝试让一些设置在/etc/sysctl.conf重新启动时生效。因此,我以root运行 Ubuntu 12.04 LTS 64bit 的节点上的用户身份执行了以下操作

# service procps status
procps stop/waiting
# service procps start
procps stop/waiting
Run Code Online (Sandbox Code Playgroud)

不管我怎么努力。的/etc/init/procps是股票,如下图所示。我没有碰过它(还不熟悉暴发户)。

# procps - set sysctls from /etc/sysctl.conf
#
# This task sets kernel sysctl variables from /etc/sysctl.conf and
# /etc/sysctl.d

description     "set sysctls from /etc/sysctl.conf"

instance $UPSTART_EVENTS
env UPSTART_EVENTS=

start on virtual-filesystems or static-network-up

task
script
    cat /etc/sysctl.d/*.conf /etc/sysctl.conf | sysctl -e -p -
end script
Run Code Online (Sandbox Code Playgroud)

对于如何开始这项upstart工作的任何提示,我将不胜感激。

到目前为止,我总是必须手动发出/sbin/sysctl -p /etc/sysctl.conf. 老得真快…… …

configuration boot upstart 12.04

2
推荐指数
1
解决办法
7968
查看次数

新贵的工作没有正确死亡

我正在制作一个简单的新贵守护进程。

按照 Upstart 文档 [1] 我制作了 conf 脚本:

description "Super Daemon" 
author "Bastian Baltasar Bux"

start on started dbus
stop on runlevel [06]

expect fork
exec /usr/bin/my-daemon
Run Code Online (Sandbox Code Playgroud)

该脚本/usr/bin/my-daemon是一个调用 python 的 bash。/var/log 文件中的 python 脚本日志信息。在那个 python 脚本上,我只制作了一个fork. 但是,当我像 Upstart doc [2] 中所说的那样检查分叉时,该方法说我做了两次分叉。

至此,启动作业已正确执行,但显示的 pid 与upstart my-daemon status日志文件中的 pid 不同。当我尝试停止执行时出现错误status my-daemon stop。该命令并没有结束,我必须以 Crtl-C 结束。

我试图更改expect forkexpect daemon但服务停止也没有结束。

什么时候会出问题?

[1] http://upstart.ubuntu.com/cookbook

[2] http://upstart.ubuntu.com/cookbook/#id158

reboot shutdown upstart services

2
推荐指数
1
解决办法
3338
查看次数