问题标签 [init.d]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
6 回答
49542 浏览

ubuntu - 服务器重启后nginx没有启动

我已经从一个 built-from-src nginx 1.2.6 安装转移到 Ubuntu 13.04 上的 1.4.1。

通过 Ubuntu PPA 安装,http: //wiki.nginx.org/Install#Ubuntu_PPA 。这一切都很好。

手动,我可以使用重新加载/启动/停止服务

服务器重新启动后,nginx 不会自行启动。

在我之前的手动安装中,我在 /etc/init 中有一个手写的 Upstart 脚本,它运行良好。PPA 安装已经设置了一个 /etc/init.d/ 脚本,所以我想坚持使用 PPA 方法而不是破解一些东西。

可能是因为我对服务接口不是很熟悉,所以我缺少一些东西。

我还检查了 /var/log/nginx/access.log 和 error.log,在启动过程中没有看到任何记录。

我应该怎么做才能解决这个问题?

0 投票
2 回答
4781 浏览

python - ubuntu ec2 - 在启动时使用参数运行 python 脚本

我有一个 python 脚本,我想在 ubuntu ec2 实例上启动,但我遇到了麻烦。

该脚本在循环中运行,并在它准备好时小心或退出,所以我不应该在它运行后启动或停止它。

我已经阅读并尝试了很多不同程度的成功方法,老实说,我对什么是最好的方法感到困惑。我尝试在 /etc/init.d 中放置一个启动 python 脚本的 shell 脚本,使其可执行并执行 update-rc.d 以尝试让它运行,但它在每个阶段都失败了。

这是我尝试过的脚本的内容:

然后我做了

这似乎没有在启动时运行,我不明白为什么,如果我手动运行命令,它会按预期工作。

我还尝试在 rc.local 中添加一行来启动脚本,但这似乎也不起作用

任何人都可以分享他们发现的是在后台运行 python 脚本的最简单方法,并在启动 ec2 实例时使用参数。

更新: - - - - - - - - - - -

我已经将此代码移动到一个名为/home/ubuntu/bin/watch_folder_start

并将我的rc.local文件更改为:

当我手动运行 rc.local 但不会在启动时触发时起作用,我做到了,chmod +x rc.local但这并没有改变任何东西,

0 投票
1 回答
758 浏览

centos - 无法让独角兽服务器在 CentOS 启动时启动

我在 /etc/init.d 中有一个独角兽初始化脚本

我添加了描述以使其与 centos 兼容。

它在 chkconfig 中配置: unicorn 0:off 1:off 2:on 3:on 4:on 5:on 6:off

如果我运行它会正常启动/etc/init.d/unicorn start

但是当我重新启动系统时,它不起作用。有任何想法吗?

0 投票
1 回答
1298 浏览

ruby-on-rails - 重启 Resque-Pool

没有任何信号,例如 HUP,会导致 resque-pool 重新读取环境。那么我该如何重新启动脚本呢?

在 init.d 中,我尝试了“kill -QUIT”,然后再次启动它:

...但我收到一个错误:

0 投票
1 回答
2159 浏览

django - Celeryd 似乎找不到我的 Django 项目的设置

我现在是一个芹菜菜鸟,但正在努力开始。我正在运行带有 redis 存储后端的 Django 1.4 + django-celery + celery 3.0.21。我可以通过以下方式让工人和 celerybeat 手动运行:

python manage.py celery worker -E -B --loglevel=INFO -n w1.manual

我想把它移到初始化脚本中。所以,我已经安装了 celery 提供的两个初始化脚本。我可以根据需要运行它们并且脚本工作正常。但是,由脚本启动的工作人员失败了。它似乎没有找到我的项目设置。这是我在 /etc/default/celeryd 的配置文件的内容:

我的设置文件实际上分为本地/生产/等。生产设置位于此处:

我试图将配置文件的最后一行更改为:

但这似乎没有任何区别。

我知道初始化脚本正在获取设置文件 /etc/default/celery,因为该进程正在使用我自定义的用户和组。

很明显,进程失败了,因为日志显示:

我认为这是默认设置。我的 Django 项目配置为使用连接字符串使用 Redis:

作为解决此问题的另一种尝试,我尝试将最后一行设置为:

这导致:

在日志中。

我究竟做错了什么?

0 投票
1 回答
793 浏览

bash - 坩埚 init.d bash 脚本

请帮我写坩埚启动/停止/状态/重启 init.d 脚本 i/m beginer 是 bash 脚本,脚本的最大问题是如何检查状态

谢谢

此致

0 投票
3 回答
1301 浏览

ruby - 如何通过 sudo 运行 ruby

嗨,我正在创建一个新的 init 脚本来监视 ruby​​ 程序。

我的监控过程是

但是当我在我的监视器中执行启动服务时,状态是“执行失败”,我检查了监视器的日志文件,它说

当我分析问题的根源时。原因是 monit 以 root 身份运行,执行 ruby​​ 的脚本将作为sudo /etc/init.d/differ.sh start执行,但 ruby​​ 仅安装在用户 'amer' 中。我努力了

它显示错误为

请帮助解决这个问题。我有两个红宝石版本。

0 投票
1 回答
3270 浏览

ubuntu - init.d:通过“start-stop-daemon”启动 mplayer

使用Ubuntu机器,我想像守护进程一样运行MPlayer 。

在前台,以下配置正是我所需要的:

mplayer -slave -idle -input file=/tmp/mplayercontrol.

现在,我编写了以下脚本

但是有一些问题,因为当我尝试启动脚本时,播放器返回错误并且无法正确启动:

另外,如何/etc/inid.d/mplayerd stop启动关闭stop时自动运行?

谢谢!

0 投票
1 回答
109 浏览

ruby - 如何将rvm添加到超级用户

嗨,我需要从一个初始化脚本执行一个 ruby​​ 程序,我需要将脚本运行为

但问题是 rvm 未安装在 root(超级用户) 上。所以不同脚本 ruby“文件名”中的代码不会执行,因为gems和rvm没有安装在root中。

我需要解决如何将 rvm 及其 gems 添加到 root (我没有通过系统范围安装)。我什至尝试过 rvmsudo

但它不适用于脚本在终端中运行良好。请随意询问我将与此问题一起发布的任何文件或输出。

0 投票
1 回答
511 浏览

service - Vagrant:定义自定义 Chef 服务或启动脚本的简单方法

我有一个 Vagrant 项目,它定义了几个虚拟机。在其中一个上,我需要运行一些命令来调整内核参数、从远程位置下载文件并启动守护程序。目前我在一个定义cookbooks/*/recipes/default.rb

当我第一次时,这一切都很好vagrant up。但是当然,如​​果机器重新启动,这些命令都不会再次运行,因为它们不是任何 init 脚本的一部分。

我想我总是可以运行vagrant reload以重新启动 VM,但我希望它能够直接重新启动。换句话说,有一个持久的“服务”。

现在,如果我想花时间查找这些文件的正确语法(在我已经完成验证即时命令的工作之后),上面给出的一些命令(内核​​调整)可以被修改/etc做我想做的)。对于其他人(启动守护程序),我可能能够使用预定义的服务,即定义我可以配置/etc并开始使用service资源的服务的 Ubuntu 包。

但是还有一些特殊的命令,例如上面提到的下载(必须在守护程序启动之前完成)。大概我可以使用该template资源在其中定义一个脚本,/etc/init.d/然后service在配置时使用它来启动它(尽管Chef,如何在创建服务之前运行创建 init.d 脚本的模板意味着这比听起来还要工作)。

但是,是否没有标准的方法来简单地要求在配置期间以及随后的重新启动时运行一个简短的内联脚本?execute介于and之间的东西service,例如

(我假设脚本是幂等的,即vagrant provision在同一个 VM 会话中再次运行修改后的版本是可以的;如果我需要killall some-daemon先,这很容易。)