Upstart (mountall job) waits indefinitely for devices making boot process hang
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
upstart (Ubuntu) |
New
|
Undecided
|
Unassigned |
Bug Description
After upgrading one of my machines from 14.04 to 16.04 and switching back to upstart the system stopped booting. It turned out that after initramfs inovokes /sbin/init system hangs on mountall job waiting indefinitely for LVM devices to appear.
Problem affects all 16.04 installations (both 14.04 upgrades or fresh ones) where LVM devices are included in /etc/fstab. Below are example log entries that are filling /var/log/
try_mount: /var/lib/postgresql waiting for device
try_mount: /var/spool/bacula waiting for device
try_mount: UUID=886c73fd-
My system is:
Description: Ubuntu 16.04.2 LTS
Release: 16.04
All devices in fstab are referenced by UUIDs.
To workaround the problem simple script executing "lvm vgchange -ay" must be created and placed in /etc/initramfs-
Problem doesn't exist when using systemd.
summary: |
- Upstart waits indefinitely for LVM devices making boot proces hang + Upstart waits indefinitely for LVM devices making boot process hang |
Bug is more generic. Basically if some device listed in /etc/fstab is not available mountall job will hang forever. Example:
1. System has root crypted with password
2. All LVM volumes are on disk crypted with key file placed on root device
3. fstab contains references to LVM volumes
Result:
1. Systems asks for root device password and it is successfully mounted
2. System doesn't decrypt disk with LVM volumes
3. LVM volumes are not available so mountall hangs and systemd doesn't boot
As previously, this can be fixed with simple script in /etc/initramfs- tools/scripts/ local-bottom that decrypts LVM disk and issues lvm vgchange -ay. Again, problem doesn't exist when using systemd.