Ubuntu 18.04 update-rc.d 没有做正确的事情

Ubuntu 18.04 update-rc.d 没有做正确的事情

我有一个新安装的 18.04 系统,并且正在其上安装 VirtualBox 及其自动启动脚本。

自动启动脚本正确地将 VirtualBox 内核模块列为 /etc/init.d/ 脚本的 LSB 部分中的依赖项,如下所示:

/etc/init.d/virtualbox:

### BEGIN INIT INFO
# Provides:       vboxdrv virtualbox
# Required-Start: $remote_fs $network
# Required-Stop:  $remote_fs
# Default-Start:  2 3 4 5
# Default-Stop:   0 1 6
# Short-Description: VirtualBox Linux kernel module
### END INIT INFO

/etc/init.d/vboxautostart 服务:

### BEGIN INIT INFO
# Provides:       vboxautostart-service
# Required-Start: vboxdrv
# Required-Stop:  vboxdrv
# Default-Start:  2 3 4 5
# Default-Stop:   0 1 6
# Description:    VirtualBox autostart service
### END INIT INFO

然而,我跑完之后;

sudo update-rc.d vboxautostart-service defaults

/etc/rc*.d/ 目录将 vboxautostart-service 列为 S01* 和 K01*。这导致两者之间的依赖关系不被遵守,并且我的 VirtualBox VM 无法自动启动,因为启动时未加载内核模块。

例如,这是 /etc/rc5.d 的目录列表:

S01acpid             S01dbus         S01saned
S01anacron           S01gdm3         S01speech-dispatcher
S01apport            S01grub-common  S01spice-vdagent
S01avahi-daemon      S01irqbalance   S01ssh
S01bluetooth         S01kerneloops   S01unattended-upgrades
S01console-setup.sh  S01ntp          S01uuidd
S01cron              S01plymouth     S01vboxautostart-service
S01cups              S01rsync        S01virtualbox
S01cups-browsed      S01rsyslog      S01whoopsie

这在 16.04 上运行良好。以下是 16.04 上的 /etc/rc5.d 列表:

README            S01rsyslog              S02dbus                   S03grub-common
S01apport         S01unattended-upgrades  S02irqbalance             S03ondemand
S01lvm2-lvmetad   S01uuidd                S02mdadm                  S03plymouth
S01lvm2-lvmpolld  S01virtualbox           S02ntp                    S03rc.local
S01lxcfs          S02acpid                S02rsync
S01lxd            S02atd                  S02ssh
S01open-vm-tools  S02cron                 S02vboxautostart-service

这个在 18.04 中坏了吗?

答案1

我遇到了同样的问题。使用systemctl命令解决了它。

sudo systemctl enable vboxautostart-service

相关内容