debian 服务未运行

Qui*_*son 3 boot debian

意外重启后,我的 debian 机器启动到终端屏幕而不是 gui。

我不确定如何诊断问题.. 但我注意到 /etc/rc2.d/ 中的所有服务(inittab 表示运行级别 2 )都没有运行..

我以 cron 为例: 运行 cron

有人请帮助我理解为什么运行 S17cron 不起作用,但直接运行 sym 链接文件可以。

我错过了什么?有谁知道我的系统如何或为什么处于这种状态?怎么修?

Jde*_*eBP 10

忘记/etc/inittab并运行级别。

正如 systemd doco 所说,在 systemd 世界中,运行级别的概念是“过时的”。systemd 本身在目标方面工作,而不是运行级别。

您的/etc/inittab文件也已过时。从 Debian 7 升级到 Debian 8 会将 init 系统从 System init5+rc切换到 systemd。它留下/etc/inittab来了,因为该文件在 Debian 7 中没有正确分配为软件包的属性。

/etc/inittab说什么完全没有意义。systemd 不仅完全忽略该文件;但是 systemd 首先没有当前运行级别的概念。

忘记 Systemv 5rc脚本。

这可能有点强,但有必要指出您已经表现出一些需要改掉的坏习惯。一,确实,您必须在之前取消学习Debian 的几个版本

  • 不要/etc/rc*.d/直接运行脚本。 首先,你会做错,就像你在这里做的那样,事情不会奏效。其次,即使在非系统化系统上也不能保证符号链接农场存在。例如,可以使用file-rc而不是sysv-rc
  • 不要/etc/init.d/直接运行脚本。 在 systemd 操作系统上,无法保证这些脚本甚至存在,更不用说它们是指定您的服务的内容了。即使在 Debian 7 上,也有 systemd 单元取代了 System 5rc脚本;这在 Debian 8 上更是如此。要使用的正确命令是:
    • systemctlstatusstartstopenable,和disable
    • service
    • update-rc.dinvoke-rc.d,但前提是您是包维护者脚本

因此,您观察到的命令的行为完全是在转移注意力,与您的系统为何以这种方式引导无关。

使用可用的工具正确诊断您的问题。

此时您应该运行几个程序。这些包括:

  • systemctl get-default以确定您的系统是否甚至配置为首先启动graphical.target
  • systemctl list-units显示正在运行的服务和目标。您的 X 显示管理器是一项服务。
  • systemctl status显示为什么失败的服务失败。
  • journalctl -x -b 查看自启动以来的日志。

进一步阅读