Articles of 新贵

Wineconsole在后台运行时CPU占用率高

我有一个(非常简单的)Windows控制台应用程序,我想使用Wine在Linux服务器上运行。 当我刚刚从terminal通过SSH运行它 wine myapp.exe 一切都很好。 它运行良好,一切都应该和CPU使用率相当低(约5%)。 当我尝试在后台运行时出现问题。 即使是简单的事情 nohup wine myapp.exe 导致CPU使用率上升到100%(一个完整核心)。 redirect输出到/ dev / null等没有帮助。 我试着用下面的设置使用upstart来运行它: start on runlevel [2345] stop on runlevel [!2345] respawn exec sudo -H -u myuser wine /path/to/my/app.exe &> /dev/null CPU使用率是100%。 我尝试了更多的select,直到我发现以下版本(使用wineconsole代替wine,将“-b”开关添加到sudo)工作得很好(CPU使用率为5-7%): exec sudo -b -H -u myuser wineconsole /path/to/my/app.exe 问题是,如果我像这样运行,暴发户不跟踪pid,所以重生等不起作用。 当我将“expect-fork”添加到configuration时,CPU使用率再次上升到100%。 当我将redirect添加到/ dev / null时,CPU使用率上升到100%。 基本上我所做的任何事情都会导致CPU使用率上升到100%。 你有什么想法可能会导致这种影响?

重新启动ubuntu 14.04与主厨的php5-fpm

我有这个在我的厨师食谱: service 'php5-fpm' do supports :restart => true action [ :enable, :start ] end 然而,我的食谱现在Ubuntu 14.04中的barfs,因为“/etc/init.d/php5-fpm restart”在Ubuntu 14.04上不起作用(它返回1,并且没有消息)。 如何让我的厨师食谱重新启动和pipe理php5-fpm服务?

为什么需要在新贵脚本中使用exec?

我经常看到一些新贵脚本有使用exec ,有什么意义呢? 似乎删除exec的脚本也工作? 例如 start on runlevel [2345] stop on runlevel [06] exec /path/to/program

暴发户脚本不logging到文件

Linux CentOS 6.5 这是我在/etc/init/ start on runlevel [2345] stop on runlevel [!2345] exec /usr/bin/riofs –fuse-options="allow_other" –fmode=0777 –dmode=0777 ct.recordergo /mnt/applications/recorder/streams/_definst_/s3 我想在启动时运行一次这个程序。 我在/var/log/upstart里面没有任何日志。 我不确定脚本是否正常工作。 如何才能logging成功或失败?

Ubuntu的新贵挂在互动的开始和停止

如何让Ubuntu暴发户不要挂在交互式的开始和停止? 我创build了许多在初始化时可以正常工作的暴发户脚本,但是当我在控制台input这些脚本时经常挂起。 如果我CTRL + C出,所发生的只是工作改变状态。 脚本永远不会运行。 我在Linux 2.6.39内核的Xen虚拟服务器上运行Ubuntu Lucid。 以下仅仅是许多脚本的代表性例子: description "apache2" start on local-filesystems \ and (net-device-up IFACE=lo) \ and (runlevel [2345]) stop on runlevel [016] respawn respawn limit 10 5 expect daemon script . /etc/apache2/envvars /usr/sbin/apache2ctl start end script

新贵前停脚本

我在我的Ubuntu上安装了libvirt / KVM,并且在closures机器之前,我希望它使用ACPI poweroff(virsh shutdown)closures虚拟机,然后让它停止关机至less60秒,虚拟机是一个同步一切到磁盘的机会,这是我有: pre-stop script SHUTDOWN_LOG=/var/log/libvirt/qemu/shutdown_vms.log for RUNNING_VM in `virsh list | grep -E running | awk -F" " '{ print $2 }'` do echo "Shutting down ${RUNNING_VM} on `date`" >> $SHUTDOWN_LOG virsh shutdown ${RUNNING_VM} done echo -n "Waiting for VM's to shut down: " >> $SHUTDOWN_LOG for I in `seq 1 10` […]

Upstart不会重新加载它的configuration

我有一个服务,我试图写一个暴发户脚本,它不太好。 在某个时候,我决定我需要一个新的开始,并删除了新贵的configuration文件。 stop myservice rm -f /etc/init/myservice.conf initctl reload-configuration 然而,暴发户仍然在列表中显示我的服务“停止/杀死”。 initctl list status myservice 这怎么可能?如何在不重新启动机器的情况下摆脱我的服务? 作为参考, initctl –version显示0.6.5。

我应该在前台(而不是作为守护进程)显式运行程序,或者在configurationupstart守护进程时期望fork?

许多程序允许以守护进程模式(通常是默认模式)运行,或者使用诸如-f的标志在前台显式运行它。 现在当configuration新贵运行这样的程序,我可以做 exec foo -f # run in foreground 要么 expect fork exec foo # automatically runs as a daemon 有没有理由select一个呢? 我觉得在前台运行一切都要容易得多,让新手能够处理这些stream程,但这有什么不利之处?

预先填充vagrant同步的文件夹内容

我目前正在构build一个相当复杂的服务器堆栈(Rails应用程序中的ruby),我希望开发人员无需自己安装所有东西即可开始工作。 所以我使用stream浪汉来允许他们这样做。 这个想法是,当你第一次安装镜像的时候,它会提取最新的源代码并安装依赖项,这些源代码会被同步文件夹(一个内build的特性)展现出来,这样开发人员可以在自己的环境中提交源代码并编辑它们。 Vagrant-box仅用于服务器。 Vagrantfile中已同步的文件夹条目: config.vm.synced_folder "gameeso/", "/var/gameeso", :create => "true" 该图像是一个具有新贵脚本的Ubuntu服务器(脚本在启动时执行,只有当Internet连接启动时): 从Github拉最新的开发分支(如果文件夹已经不存在) 安装依赖关系(这由脚本完成) 启动服务器 所有这些都发生在一个同步文件夹中。 这种方法我遇到了一些问题,主要是Vagrant清除了我的客户系统上的同步文件夹。 我通过在upstart脚本中添加“sleep 10”来解决这个问题,所以可以等到Vagrant设置同步文件夹。 当然,这不是一个安全的方法(如果启动需要10秒以上的时间,尽pipe现在不太可能,但是我不想知道);) 我的问题是:是否有一个更好的方式让guest-host(stream浪者图片)填充同步文件夹? 当然,非常感谢提前!

如何防止服务启动,直到卷被挂载?

使用Ubuntu 12.04或14.04,如何才能防止启动一个新的服务,直到成功安装几个networking卷(GlusterFS)?