标签: sysvinit

缺少 init.d/apache2 文件

在尝试删除 apache 和 tomcat,现在尝试重新安装 apache 2 后,我缺少init.d/apache2启动/停止服务器的文件。

我不确定新安装是否真的有效,而且我一开始apt-get purge apache2并没有删除所有东西!

如何获取init.d/apache2文件以测试服务器是否正确启动/安装(我手动删除了文件和目录)?

debian init-script sysvinit apache-httpd

6
推荐指数
2
解决办法
2万
查看次数

运行 init.d 脚本会产生“start-stop-daemon: not found”

我尝试使用以下方法启动 monit:

/etc/init.d/monit start
Run Code Online (Sandbox Code Playgroud)

然后我得到错误:

[....] Starting daemon monitor: monit/etc/init.d/monit: 124: /etc/init.d/monit: start-stop-daemon: not found
failed!
Run Code Online (Sandbox Code Playgroud)

打字

which start-stop-daemon
Run Code Online (Sandbox Code Playgroud)

显示

/sbin/start-stop-daemon
Run Code Online (Sandbox Code Playgroud)

/sbin 中的 ls -al 显示

-rwxr-xr-x   1 root root     26740 Jan 21 12:18 start-stop-daemon
Run Code Online (Sandbox Code Playgroud)

编辑:添加脚本

#!/bin/sh

### BEGIN INIT INFO
# Provides:          monit
# Required-Start:    $remote_fs
# Required-Stop:     $remote_fs
# Should-Start:      $all
# Should-Stop:       $all
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: service and resource monitoring daemon
# Description:       monit is a utility …
Run Code Online (Sandbox Code Playgroud)

debian sysvinit start-stop-daemon

6
推荐指数
2
解决办法
4万
查看次数

修复失败的 Debian 升级

我试图从 debian 9 升级到 10,但在尝试安装systemd-sysv_241-7~deb10u6_amd64.deb. 我收到以下错误:

我的运行尝试apt --fix-broken install没有成功并导致以下相同的错误。

(Reading database ... 59371 files and directories currently installed.)
Preparing to unpack .../systemd-sysv_241-7~deb10u6_amd64.deb ...
Unpacking systemd-sysv (241-7~deb10u6) ...
dpkg: error processing archive /var/cache/apt/archives/systemd-sysv_241-7~deb10u6_amd64.deb (--install):
 trying to overwrite '/usr/share/man/man8/halt.8.gz', which is also in package sysvinit 2.88dsf-41+deb7u1
Processing triggers for man-db (2.7.6.1-2) ...
Errors were encountered while processing:
 /var/cache/apt/archives/systemd-sysv_241-7~deb10u6_amd64.deb
Run Code Online (Sandbox Code Playgroud)

在我尝试隔离时,当我在详细模式下运行失败的命令时,我得到以下信息:

# dpkg --debug=77777 -i /var/cache/apt/archives/systemd-sysv_241-7~deb10u6_amd64.deb
...
D000040: ok 2 msgs >><<
D010000: check_triggers_cycle pnow=man-db:amd64
D020000: check_triggers_cycle pnow=man-db:amd64 first
Processing …
Run Code Online (Sandbox Code Playgroud)

debian upgrade systemd sysvinit

6
推荐指数
1
解决办法
736
查看次数

我应该在启动脚本中使用 `sudo` 还是 `su`?

我有一个个人程序,它有一个服务器/客户端设计。

它的服务器守护程序部分应该以其自己的受限用户身份运行,并且该程序不像某些 Linux 程序那样设计为放弃其 root 权限(如果以 root 身份启动)。

所以我的问题是,在它的启动脚本中/etc/init.d/,我应该使用sudo还是su作为另一个用户运行这个守护进程?这有什么不同吗?两者中的任何一个都可以工作吗?还有什么?

该操作系统是一个定制的 GNU/Linux 操作系统,使用“Linux From Scratch”指令构建,并且两个程序都可以正确运行。

linux su sudo sysvinit

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

显示所有 sysvinit init 脚本

有没有一些工具可以显示所有可用的 init 脚本(在 Debian 上),除了必须记住一个位置/etc/init.d,更不用说不是所有的东西都有一个 init 脚本?

debian init-script sysvinit

5
推荐指数
1
解决办法
162
查看次数

ps的COMMAND列中的`init [2]`是什么意思?

阅读进程周围的括号是什么意思?我知道打印了可执行文件名。

Linux ps手册页:

有时进程参数将不可用;发生这种情况时, ps 将改为在括号中打印可执行文件名称。

但是ps -Awwo pid,comm,args我得到:

  PID COMMAND         COMMAND
    1 init            init [2]
Run Code Online (Sandbox Code Playgroud)

这是什么意思?“可执行名称”应该是init还是[2]

我想可执行文件当然是init- 什么是[2]?为什么要打印?

(另外,如果它知道可执行文件名称,我真的不明白为什么它不能显示完整路径。)

ps executable init sysvinit command

5
推荐指数
1
解决办法
1585
查看次数

当特定设备启动并加载内核模块时触发 init 脚本

在我的 Ubuntu 12.04 服务器上,我需要编写一个init.d脚本,等待infiniband接口(设备:mlx4_0,接口:ib0)完全启动,直到加载knem内核模块。

我有一个init.d脚本,如果我等到系统启动并手动运行service myscript start,它就可以工作,但如果我在启动时正常加载它,它就不起作用。我正在使用引导顺序99,但它无法正确启动,因为我需要等待这些功能运行。

init.d实现这一目标的正确语法是什么(一个内核模块和)?我想一定有一些关键字 like# Required-Start: $remote_fs $syslog $network但我找不到特定接口和内核模块的正确关键字。

背景:初始化脚本与SLURM的openmpiInfiniBand的相互作用。我已经编译了支持Mellanox infiniband驱动程序的SLURM,并且openMPI链接到这个版本的 SLURM。结果就是openMPI直接使用了mellanox infiniband驱动,比ipob(ip over inifiniband)强大很多。为此,它需要使用系统的注册内存,该内存必须设置为无限

所以:

loggerinit.d脚本中添加了一些输出。我注意到实际上这些模块已经启动并正在运行。所以我不完全理解这个问题。很奇怪,可能与一些需要的环境变量有关,这些变量仅在完整的用户空间中设置,而不是在初始化时设置。

问题涉及/etc/security/limits.conf 中设置的 memlock 限制。为了使它工作,我必须设置

*             -   memlock       unlimited
root          -   memlock       unlimited
Run Code Online (Sandbox Code Playgroud)

这样,当我使用ssh连接启动 slurm守护进程时,一切正常,并且当它是启动守护进程的 init 进程时,它就像不考虑 …

startup ubuntu kernel-modules upstart sysvinit

5
推荐指数
1
解决办法
1456
查看次数

如何在 Debian jessie 上的 /var/log/syslog 中禁用 systemd 的“时间已更改”消息垃圾邮件?

由于 Debian jessie(默认使用 systemd)和sdwdate(使用慢时钟调整器( gh ))的组合使用,我的系统时钟经常更改。

结果/var/log/syslog被无休止地发送垃圾邮件。

[...]
Aug 22 13:06:15 host systemd[1]: Time has been changed
Aug 22 13:06:16 host systemd[1]: Time has been changed
Aug 22 13:06:16 host systemd[852]: Time has been changed
Aug 22 13:06:17 host systemd[852]: Time has been changed
Aug 22 13:06:17 host systemd[1]: Time has been changed
Aug 22 13:06:18 host systemd[1]: Time has been changed
[...]
Run Code Online (Sandbox Code Playgroud)

运行会sudo service rsyslog stop阻止垃圾邮件,但这不是真正的解决方案。

这在使用 sysvinit 的 Debian wheezy …

debian rsyslog syslog systemd sysvinit

5
推荐指数
1
解决办法
4241
查看次数

start-stop-daemon 不会将我的 Python 脚本作为服务启动

我试图在我的 Debian 机器上运行 Google AppEngine,我创建了一个文件init.d/gae

. /lib/lsb/init-functions

#
# Initialize variables
#

name=gae
user=$name

pid=/var/run/$name.pid
prog="python /opt/google_appengine/dev_appserver.py --host=0.0.0.0 --admin_host=0.0.0.0 --php_executable_path=/usr/bin/php-cgi /var/www"


case "${1}" in
   start)
      echo "Starting...Google App Engine"
      start-stop-daemon --start --make-pidfile --background --oknodo --user "$user" --name "$name" --pidfile "$pid" --startas "$prog" 

      ;;

   stop)
      echo "Stopping...Google App Engine"

      ;;

   restart)
      ${0} stop
      sleep 1
      ${0} start
      ;;

   *)
      echo "Usage: ${0} {start|stop|restart}"
      exit 1
      ;;
esac

exit 0

# End scriptname
Run Code Online (Sandbox Code Playgroud)

我正在通过手动调用来测试脚本,并且脚本运行但不是作为守护程序运行,或者至少它不会与终端分离。我期待/寻找与 Apache 类似的功能。

我缺少什么开关?


编辑

我应该注意到,尽管开关指示应该创建它,但没有写入或创建 PID …

sysvinit start-stop-daemon

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

完全删除 sysvinit 的残留

相对于想要除掉的人systemd,我想要彻底安全地去除 sysvinit

DebianDebian 7.0 (Wheezy)开始使用。目前我正在使用Debian 9.0 (Stretch)。在其中一次系统升级期间,从 移动sysvinitsystemd

systemd对我来说很好用,但我注意到系统没有完全删除sysvinit

顺便说一句AFAIKsystemd-sysvcompat包(未安装)可能以某种方式使用sysvinit. 我想避免由于移除sysvinitDebian仍然是必需的残留物而可能导致的问题。

migration debian systemd sysvinit disk-cleanup

5
推荐指数
1
解决办法
3855
查看次数