在 Debian 9.9 升级后,我重新启动了服务器以加载新的内核映像 Debian 4.9.168-1+deb9u5 (2019-08-11) x86_64 GNU/Linux,但它不再启动了。
服务器有4块ssd盘,主盘加载操作系统,挂载正确:
device fs_type label mount point
---------------------------------------------------------------------------------
/dev/sda1 (not mounted)
/dev/sda2 ext4 /boot
/dev/sda3 swap [SWAP]
/dev/sda4 ext4 /tmp
/dev/sda5 ext4 /
但是,安装在网页目录 (/var/www/virtual/website) 中的其他 3 个磁盘会产生以下类型的错误:
Job var-www-virtual-domain1.mount/start failed with result 'dependency'.
这导致系统无法正确加载,ssh 无法加载,我必须通过控制台进入并手动启动服务(service ssh start),才能使用 ssh 访问。
发生的另一件事是,一旦我进入系统,如果我尝试手动将磁盘挂载到其路径中,它就不起作用(也不会产生错误),例如,这不起作用,我在 fstab 中具有相同的挂载点:
mount -t ext4 /dev/sdb1 /var/www/virtual/domain1
但如果我创建一个新目录,它就可以毫无问题地挂载:
mkdir /var/www/virtual/test
mount -t ext4 /dev/sdb1 /var/www/virtual/test
我已设法通过从 fstab 中删除磁盘并从我在 crontab 中使用“@reboot root /root/mount.sh”启动的脚本安装它们来修复它,也就是说,如果我在没有 fstab 中的磁盘的情况下启动并手动安装它们,一切都正常工作。
这是我从 fstab 中删除的内容以修复它:
# /dev/sdb1
UUID=c5d69d49-c169-4e50-ab51-90bd50c0bc0e /var/www/virtual/domain1 ext4 errors=remount-ro 0 0
# /dev/sdc1
UUID=74af1317-078a-425b-b9e3-2d2f7159d1d9 /var/www/virtual/domain2 ext4 errors=remount-ro 0 0
# /dev/sdd1
#UUID=cd810a2f-080d-4e26-917b-bd6dac59adf4 /backup ext4 errors=remount-ro 0 0
在我进行最后一次操作系统升级(apt upgrade)之前,系统始终可以从 fstab 加载磁盘。
我还有其他 8 台服务器,它们的配置几乎相同(硬件不同),但进行相同的更新后并没有出现这个问题。