Articles of init.d

在系统启动时运行chroot的/etc/init.d?

所以我有这个运行Debian的专用服务器。 我有一个激烈的业务需求(客户的要求),我也安装Gentoo作为一个Chroot。 我已经成功完成了这个任务,但是现在,我试图在主机Debian发行版的/etc/init.d运行时(例如,在启动时)从chroot里面调用Gentoo的/etc/init.d。 我当然希望这是可能的!

在Debian 7.5上rc.local不会在启动时运行

我正在努力弄清楚为什么rc.local不会在启动时执行。 该文件本身是可执行的,它从/etc/rc2.d中调用 此外,从命令行的文件不会返回任何错误。 任何想法还有什么要检查找出为什么不运行?

我如何在启动时启动两个独angular兽服务?

我在同一个DigitalOcean Ubuntu机箱上运行我的舞台和制作环境。 我有一切工作,以便每个环境可以部署到自己的目录,运行单独的独angular兽进程与单独的PID文件,Nginxconfiguration了单独的网站启用文件,将每个独angular兽实例与其适当的环境。 我的部署过程正确(重新)启动独angular兽的匹配环境。 问题是当我需要重新启动盒子本身,其中我的/etc/init.d/unicorn只configuration为生产启动。 我不知道在启动时需要做什么来启动生产和分段,害羞的是创build二级/etc/init.d/unicorn-staging和/etc/default/unicorn-staging文件。 这里是我现有的文件供参考。 /etc/init.d/unicorn #!/bin/sh ### BEGIN INIT INFO # Provides: unicorn # Required-Start: $local_fs $remote_fs # Required-Stop: $local_fs $remote_fs # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: unicorn initscript # Description: unicorn ### END INIT INFO set -e NAME=unicorn DESC="Unicorn web server" . /lib/lsb/init-functions if […]

upstart脚本运行得很好,但是以root用户身份失败

我有一个简单的nodeJs新贵服务运行, script exec /usr/bin/node /path/to/server.js end script 在使用sudo命令运行时,它可以工作 ~$ sudo service upserv start sg_gui_server start/running, process 19321 当它以root用户身份运行时,会失败并出现奇怪的错误。 ~$ sudo su sk# service sg_gui_server restart karaf: JAVA_HOME not set; results may vary JAVA_HOME没有设置,这个错误是奇怪的,因为nodeJs不依赖于java库,这个错误来了,当我运行一个简单的python服务器以及。 如何使用sudo前缀运行服务与以root用户运行服务不同?

如何在后台发送一组命令

我正在编写自己的通用init脚本,我已经从各处采取策略,并提出了 trap 'kill $(jobs -p)' EXIT; until $DAEMON $DAEMONOPTS > /var/log/${NAME}.log 2>&1 & wait ; do echo "Server '$NAME' crashed with exit code $?. Respawning.." > /var/log/${NAME}.log 2>&1 & echo $! sleep 1 done 它停止正确杀死subprocess,如果死亡则重启服务。 现在我必须将这段代码作为后台作业而不是直接启动) 我已经testing过的简单解决scheme就是将这个部分移到自己的脚本中。 然而,我想知道是否有办法将这些命令分组并将它们发送到后台,而不需要第二个shell脚本来移动。 理想情况下,我想把它作为一个要点,所以它应该都在一个单一的文件。 这甚至有可能吗?

Nagios不能在启动后启动

我刚刚完成了一个Nagios 4.1.1的小安装。 它使用Raspbian在Raspberry Pi上运行。 检查出好的,当我用/etc/init.d/nagios start手动/etc/init.d/nagios start它时,它工作正常。 我总是告诉我的debian系统通过这样做来启动系统启动: ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios我可以看到符号链接已经成功创build。 但是,启动时不会启动。 系统启动后,我可以运行启动脚本,通过执行/etc/rcS.d/S99nagios start所以我知道(/认为)符号链接是好的。 当服务器启动时,Apache正在运行,并且Nagios页面已启动,但主页显示“无法获得进程状态”,这是在nagios服务未运行时预期的。 有没有办法查看启动日志,看看是否正在尝试,还是有更好的方法来启动它启动? 更新:我运行update-rc.d ,它给了我这个: update-rc.d: using dependency based boot sequencing update-rc.d: warning: default start runlevel arguments (2 3 4 5) do not match resize2fs_once Default-Start values (2 3 4 5 S) update-rc.d: warning: default stop runlevel arguments (0 1 6) […]

我有两个在Centos7上运行的Mysql服务器。 两个使用不同的端口。 必须在开始时手动启动。

我需要帮助 。 在端口3306上的mysql和在端口3307上的mysql2。 我将my.cnf复制到my2.cnf 我在my2.cnf中添加了以下内容: datadir = / var / lib / mysql2 port = 3307 cp /etc/init.d/mysql /etc/init.d/mysql2 添加到vi /etc/init.d/mysql2中的第138行: –port = *)port = echo "$arg" | sed -e 's/^[^=]*=//' echo "$arg" | sed -e 's/^[^=]*=//' ;; 编辑的行215: CONF =的/ etc / my2.cnf 第257行添加-c标志: parse_server_arguments $print_defaults $extra_args mysqld server mysql_server mysql.server -c/etc/my2.cnf 在第284行将端口参数添加到mysql_safe命令: $ […]

Ubuntu 16.04,PHP-FPM在使用libsodium-php模块启动时超时

问题(修改:用REPRO步骤!) 重新制作一个新的VPS与Ubuntu 16.04(可能适用于任何Debian发行版,但没有testing),并按照这些指示: 通过实验,我将指令简化为绝对最低限度的重现 apt-get install php7.0 php7.0-dev php-pear apt-get install libsodium-dev pecl install libsodium echo "extension=libsodium.so" >> /etc/php/7.0/fpm/php.ini shutdown -r 0 当我重新启动服务器( shutdown -r 0 )PHP-FPM死了(通过service php7.0-fpm status确认) 如果我运行service php7.0-fpm start ,它启动毫秒service php7.0-fpm start 。 我在libsodium-php跟踪器上创build了一个问题,希望有人能find解决方法: https : //github.com/jedisct1/libsodium-php/issues/94 问题 现在我已经缩小了这个问题,我真正想要的是: 一个方法来弄清楚为什么它是超时(是否有一个好的方法来configuration什么资源被访问或什么是启动时间过程?) 一种方法来解决它(有没有办法改变引导顺序,以便libsodium引导最后,以防万一它的依赖性问题?) 新的更新 我一直在研究这个,并发现所有的PHP在libsodium库的初始化过程中都会停顿(对sodium_init()的调用)。 这个调用大概需要3-4分钟才能完成,直到这个时间过去了,甚至一个调用php -v失败。 作为解决方法,我已经将以下内容添加到/lib/systemd/system/php7.0-fpm.service : TimeoutStartSec=600 这会导致我的Web服务器在重新启动后返回HTTP状态码502几分钟,但最终会再次开始工作(比手动login和修复更好) 我将尝试与libsodium和libsodium-php的开发人员联系,以find更好的解决scheme,但现在我相信我已经解决了这个问题: 解决scheme 当启动时没有运行某个东西时,开始使用journalctl […]

CentOS 7将多个进程初始化脚本转换为systemd服务

我有一个初始化脚本,如下所示 #!/bin/bash # description: connect start | stop | restart | install # processname: tomcat # chkconfig: 234 99 01 JAVA_HOME=/ export JAVA_HOME PATH=$JAVA_HOME/bin:$PATH export PATH CATALINA_HOME=/ ulimit -v unlimited -m.. LOG_COPY_FOLDER=$(date +"%Y-%m-%d_%H%M") case $1 in start) JAVA_OPTS='-Xms160g -Xmx160g -XX:+ResetSignal_MaskAtLaunch -Xloggc:/tom….' export JAVA_OPTS echo "Using JAVA_OPTS: $JAVA_OPTS" find $CATALINA_HOME/logs_prev/* -type d -ctime +180 | xargs […]

Systemd PHP启动脚本Centos 7

我有一个PHP脚本,我正在尝试创build一个服务。 我已经创build了服务,但是我无法启动它。 奇怪的是,完全相同的服务单位工作在我的另一台服务器上相同的设置。 PHP脚本被设置为使用-d开关进行守护进程。 该命令本身工作得很好,但不通过systemd。 这是我得到的 ● serverio.service – Socket Server Service Loaded: loaded (/etc/systemd/system/multi-user.target.wants/serverio.service) Active: inactive (dead) since Wed 2017-01-18 23:41:49 UTC; 2s ago Process: 22921 ExecStop=/usr/bin/php /opt/sockets/server.php stop (code=exited, status=0/SUCCESS) Process: 22917 ExecStart=/usr/bin/php /opt/sockets/server.php start -d (code=exited, status=0/SUCCESS) Main PID: 22917 (code=exited, status=0/SUCCESS) Jan 18 23:41:49 hostname systemd[1]: Started SocketIO Server Service. Jan […]