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

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

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

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

我以 cron 为例: 运行计划任务

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

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

答案1

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

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

您的文件也已过时/etc/inittab。从 Debian 7 升级到 Debian 8 将 init 系统从 System 5 init+切换rc到 systemd。它被/etc/inittab随意放置,因为该文件在 Debian 7 中没有被正确指定为软件包的属性。

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

忘记 Systemv 5rc脚本吧。

这可能有点强烈,但有必要指出你已经表现出了一些需要改掉的坏习惯。确实,你必须忘却所学的一件事Debian 之前的几个版本

  • 不要/etc/rc*.d/直接运行脚本。 首先,你会做错事,就像你在这里所做的那样,事情就不会成功。其次,不能保证符号链接场存在甚至在非 systemd 系统上。一个可以使用文件-rc代替sysv-rc, 例如。
  • 不要/etc/init.d/直接运行脚本。 在 systemd 操作系统上,无法保证这些脚本存在,更不用说它们是指定您的服务的脚本了。即使在 Debian 7 上,也有 systemd 单元取代了 System 5rc脚本;在 Debian 8 上更是如此。正确使用的命令是:
    • systemctl及其子命令statusstartstopenable、 和disable
    • service
    • update-rc.d但是invoke-rc.d除非你是一个包维护者脚本

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

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

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

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

进一步阅读

相关内容