我想知道哪些脚本将在启动时运行,而不需要“重新启动并看看会发生什么”,有什么方法可以知道哪些“服务”已准备好运行?
我应该检查每个文件吗
ls /etc/rc0.d
...
and so on?
要不就
reboot
缺少 DOS autoexec.bat ......
编辑
我正在使用 Debian
答案1
麻烦的是,最近系统初始化区域出现了相当大的混乱。无法真正对所有这些进行权威评论。
对于“传统”SysVinit,您有一堆目录/etc/rcX.d
,其中 X 的范围从 0 到 <max>,这取决于发行版的变化。该文件/etc/inittab
规定了默认的运行级别(通常是“全图形环境”,在 Fedora/Red Hat 上至少是/曾经是 5)。这样,您就可以深入研究(在本例中),您将在其中找到一个名为和/etc/rc5.d
的符号链接场。 the是kill 的意思,你对那些感兴趣的,就开始吧。该数字是一个优先级(启动/停止的顺序由它们决定)。或是服务的描述性名称。该命令列出了相同的内容(好吧,那些它知道的内容,一些令人讨厌的东西可能已经潜入其中......)。脚本本身是KNNsomething
SNNsomethingelse
K
S
NN
something
somethingelse
chkconfig --list
不是对于胆小的人来说。据说,实验室系统管理员阅读它们会导致眼癌。
较新的系统使用upstart
(Ubuntu,其他一些),Fedora 使用systemd
,我相信 Debian 提供了多种选择,一些较小的发行版也是如此(有些甚至可能有自己的系统)。 MacOS 和 Solaris 有自己独特的服务管理。但在几个 Linux 发行版中,迁移sysvinit
尚未完成(在当前的 Fedora 上,它是先锋systemd
,仍然有较旧的脚本,并且systemd
知道如何使用它们)。
我不是systemd
专家,但该系统比“运行级别”要灵活得多,您可以拥有多个targets
(例如,图形桌面、数据库服务器、Web 服务器)并混合搭配。systemctl list-units --type=target
告诉您配置了哪些内容,systemctl list-units
告诉您当前处于活动状态的所有内容。
对于其他人,您必须等待有知识的人在这里编辑它们(或评论)。