Articles of 新贵

使用正确的用户环境variables启动启动命令

我正在尝试创build一个启动脚本,在启动时为我的Ubuntu 12.04服务器运行这个命令: 软件包执行薄-R -R config.ru开始-p 3030 当我以普通用户身份运行它时,它工作得很好,瘦Web服务器启动,我可以访问我需要的页面。 下面是我试图使用/etc/init/thin.conf的启动脚本: description "thin" version "1.0" author "Me" env LANG=en_US.UTF-8 env APP_HOME=/home/username/onlinetraining_dashboard respawn start on runlevel [23] script cd $APP_HOME sudo -u username /home/username/.rvm/gems/ruby-1.9.3-p448@global/bin/bundle exec thin -R config.ru start -p 3030 > $APP_HOME/log/thin.log 2>&1 end script 然后,我将input“sudo start thin”来运行脚本,并在启动时启动。 当我启动服务时,在日志文件中出现这个错误: /usr/bin/env: ruby_executable_hooks: No such file or directory 我正在使用RVM 1.9.3的ruby。 […]

新贵:一旦ipv4准备就绪,就开始服务

我有一个服务(小型HTTP服务,在0.0.0.0:8080监听)写在Python启动系统启动。 问题是,有时在服务器启动的时候,即使IPv4还没有被内核初始化(?),启动也会很快。 Serivce发生错误(来自/ var / log / upstart): socket.gaierror:[Errno -9]不支持主机名的地址族 手动启动后,启动正常。 在启动前添加“睡眠30”也有帮助。 但我想知道是否有一个更好,更干净的方式来指定在新贵的configuration,这个服务需要工作ipv4。 它不需要完整的“路由”或默认网关,甚至不需要configuration环回。 它所需要的只是能够绑定到“任何”(0.0.0.0)IPv4地址。

强制停止新贵的工作

我不小心删除了一些暴发作业conf(在/etc/init/ )。 不幸的是我没有设置任何重生限制,这些工作现在是不可阻挡的。 我在网上search,但没有find任何答案,希望我会在这里有更好的运气。 问候R PS:我使用的是Ubuntu 12.04

正确的方法来启动应用程序服务器

我不是一个服务器pipe理员…但是运行一些小应用程序,需要学习如何工作… 我手动开始我所有的东西; 大多数铁路与美洲狮/薄。 当我重新启动,我需要开始我的美洲狮应用程序。 什么是正确的方法来做到这一点?

在stream浪虚拟机服务没有拿起configuration

我想设置一个Vagrantconfiguration来创build和启动一个Ubuntu guest虚拟机,它将在Vagrant up后在虚拟机内启动一个supervisord服务。 我想为此在Windows,Mac和Linux主机上工作。 我有一个supervisord.conf文件,我在备份期间复制到虚拟机(通过先复制到用户空间,然后复制到/etc/supervisor/如在此答案中 )。 这个configuration文件包含这些线路来为端口9001上的GUI接口提供服务(这个端口被转发给主机): [inet_http_server] port=9001 但是,如果我在service supervisor start的Vagrantconfiguration脚本中发出命令,则此configuration没有正确拾取。 我可以SSH进入虚拟机,并validation监控程序服务正在运行,但在端口9001上不可用GUI。如果我使用ssh重新启动服务,则重新启动后GUI将变为可用。 重新启动服务导致它拿起我的configuration让我觉得configuration是不可用的,当服务第一次启动。 这个答案似乎解决了类似的问题。 所以我也尝试复制一个文件到/etc/init/supervisor.conf : # start supervisord on vagrant mounted start on vagrant-mounted exec service supervisor restart 这将导致新贵重新启动服务,当它收到vagrant-mounted事件。 但是,即使这样,主pipe似乎也没有正确启动。 我通过发布sudo initctl emit vagrant-mountedtesting这个新贵脚本,并且观察到supervisor服务重新启动,并且GUI在9001上变得可用。 这让我觉得这个vagrant-mounted事件可能发生在configuration脚本运行之前。 有谁知道是否有其他事件可以预测我的新贵脚本? stream浪者配备完成时发出的东西? 另外,有没有更好的或规范的方式发起一个stream浪VM的服务? 这一切都感觉就像我已经放下了一个兔子洞,错过了一些非常明显的东西。

rvmsudo工头出口新贵没有要求密码

我的capistrano deploy.rb在Ubuntu 10.04上有一个用于Rails应用程序的工头导出命令。所以,在部署时,我想将工头导出为新贵的脚本。 但是这样做,命令rvmsudo foreman export …要求根密码,我什么都不能做。 谷歌search了很多,并尝试了各种调整,但没有奏效。 * executing `foreman:export' * executing "cd /home/deploy/zappy/releases/20111019175422 && rvmsudo foreman export upstart /etc/init -a zappy -u deploy -f ./Procfile.production -c worker=1 redis=1 -l /home/deploy/zappy/releases/20111019175422/log/foreman" servers: ["173.255.205.237"] [173.255.205.237] executing command ** [out :: 173.255.205.237] [sudo] password for deploy: 有什么办法可以做到无密码的方式?

升级ubuntu后无法启动ssh

当升级我的系统崩溃,现在我无法启动服务SSH root@elizium:/# stop ssh stop: Unknown job: ssh root@elizium:/# uname -a Linux elizium 2.6.24-19-server #1 SMP Wed Jun 18 15:18:00 UTC 2008 i686 GNU/Linux

在upstart.conf运行之后,精简的进程会重复

我试图在暴发户运行thin服务器。 这是我的upstart.conf文件包含的内容: description 'kitfaye' start on runlevel [12356] stop on runlevel [!12356] respawn script exec su -l deploy -c "export RAILS_ENV=production && cd /home/deploy/kitfaye && thin start -e production -p 8003 -R config.ru" end script 在我重新启动我的ubuntu机器后,我可以看到htop 4 thin过程。 你可以看附件中的照片。 当然我不能连接到8003端口。 那里发生了什么? https://drive.google.com/file/d/0B-jLZf9ippNgYzIwSFZzZUozamM/edit?usp=sharing

在亚马逊Linux上运行Docker容器上的新贵是行不通的

我试图让我的容器在启动时使用暴发户运行。 正如教程所说 – 我创build了/etc/init/nginx_server.conf description "Nginx docker" author "Me" start on filesystem and started docker stop on runlevel [!2345] respawn script /usr/bin/docker run -d -p 80:80 test_server end script 运行最新的Amazon Linux( amzn-ami-hvm-2015.03.0.x86_64-gp2 ) 容器没有运行(运行docker ps -a根本不显示)

使用Upstart在启动时通过套接字发送消息到服务器

问题 我需要在计算机启动过程中通过TCP套接字发送消息到服务器。 我们使用的是Ubuntu 14.04,因此,默认情况下,必须使用Upstart作为系统初始化。 (我们也有运行Ubuntu 16.04的其他计算机可以使用systemd,所以我试图保持shell脚本与系统初始化文件分开) 当前解决scheme 目前我为客户端使用两个文件:一个upstart .conf文件和一个shell脚本文件。 新贵档案 新贵档案(我们称之为foo.conf)有以下内容: #!upstart description "Send Message on Startup" start on (local-filesystems and net-device-up and runlevel [2345]) exec /opt/foo/foo.sh shell文件 shell文件(我们将其称为foo.sh)具有以下内容 #!/bin/bash echo "Sending update message…" echo "Message" | nc server-hostname 9999 echo "Completed sending update message." 症状 当我重新启动具有这些文件的计算机时,我在日志文件中得到以下内容: Sending update message… Completed sending update message. 但是,服务器永远不会收到消息。 […]