I'm running xubuntu Xenial, which has recently stopped booting correctly. H/W is an Intel NUC, boot disk is an M.2 SSD with 4 partitions:

Device         Start       End   Sectors  Size Type
/dev/sdb1       2048   1050623   1048576  512M EFI System
/dev/sdb2    1050624  42993663  41943040   20G Linux filesystem 
/dev/sdb3  495923200 500117503   4194304    2G Linux swap 
/dev/sdb4   42993664 495923199 452929536  216G Linux filesystem

(There is an additional SATA disk which is sda) All packages are up to date, kernel:

Linux sam 4.4.0-31-generic #50-Ubuntu SMP Wed Jul 13 00:07:12 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

It seems ubuntu is now running systemd by default. If I boot by selecting the 'upstart' version in the advanced options grub menu, the system comes up correctly with all partitions mounted as expected.

However when booting the default (systemd) version, the boot process hangs for a while before switching to emergency mode, displaying the message:

device-mapper: table: 252:1: multipath: error getting device
iwlwifi 0000:02:00.0: Unsupported splx structure

I think the first line relates to sdb, the second may be a red herring. dmesg gives a little additional info:

[    1.402062] sd 3:0:0:0: [sdb] 500118192 512-byte logical blocks: (256 GB/238 GiB)
[    1.402110] sd 3:0:0:0: [sdb] Write Protect is off
[    1.402113] sd 3:0:0:0: [sdb] Mode Sense: 00 3a 00 00
[    1.402115] sd 3:0:0:0: Attached scsi generic sg1 type 0
[    1.402130] sd 3:0:0:0: [sdb] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
[    1.403377]  sdb: sdb1 sdb2 sdb3 sdb4
[    1.403672] sd 3:0:0:0: [sdb] Attached SCSI disk
[    2.206562] systemd[1]: systemd 229 running in system mode. (+PAM +AUDIT +SELINUX +IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ -LZ4 +SECCOMP +BLKID +ELFUTILS +KMOD -IDN)

[    2.344978] device-mapper: multipath: version 1.10.0 loaded
[    2.345721] random: nonblocking pool is initialized
[    2.378781] systemd[1]: Started Journal Service.
[    2.402535] device-mapper: multipath round-robin: version 1.0.0 loaded
[    2.403529] device-mapper: table: 252:1: multipath: error getting device
[    2.403557] device-mapper: ioctl: error adding target to table
[    2.513670] EXT4-fs (sdb2): re-mounted. Opts: errors=remount-ro
[    2.536537] systemd-journald[952]: Received request to flush runtime journal from PID 1

At this point I see that /dev contains sdb and sdb2 and /dev/sdb2 is mounted (in rw, not ro), but sdb1, sdb3 & sdb4 are missing in /dev!

fdisk and gdisk correctly report these partitions.

mount -a expectedly fails due to missing devices.

Any thoughts are welcome!

Appending additional info requested by @heynnema:

fstab (UUIDs now commented since I tested with PARTUUIDs):

# /dev/sdb1
# LABEL=EFI  /boot/efi       vfat    umask=0077      0       1
# UUID=1503-761C  /boot/efi       vfat    umask=0077      0       1
PARTUUID=1c683c73-95ec-4de6-a98b-841650f2317c  /boot/efi       vfat    umask=0077      0       1

# /dev/sdb2
# LABEL=xubuntu /               ext4    errors=remount-ro,noatime       0       1
# UUID=c05b54a3-c2bf-4248-a020-1a6acddb99f6 /               ext4    errors=remount-ro,noatime   0       1
PARTUUID=12fbd056-2e67-496e-b7d6-f5a097acaf12 /               ext4    errors=remount-ro,noatime 0       1

# /dev/sdb3
# UUID=9ca249b6-b9da-4756-952e-4dbc13426527 none            swap    sw              0       0
PARTUUID=da8eb3c4-5d8b-45a9-b186-e114956ed69f none            swap    sw              0       0

# /dev/sdb4
# LABEL=Home /home           ext4    defaults,noatime        0       2
# UUID=2d69cba0-ddb1-4746-a593-6d2811caf0a7 /home           ext4    defaults,noatime        0       2
PARTUUID=548b1699-6832-4c0f-8fea-a053855e796d /home           ext4    defaults,noatime        0       2

# HT-Data
# UUID=214a0d73-d36c-4ad6-8988-dbecdbc153f7 /media/HT-data  ext4    defaults        0       1
PARTUUID=793ff092-6e09-4e22-b849-4d939c87ec46 /media/HT-data  ext4    defaults        0       1

blkid (upstart):

/dev/sda1: LABEL="HT-Data" UUID="214a0d73-d36c-4ad6-8988-dbecdbc153f7" TYPE="ext3" PARTLABEL="home" PARTUUID="793ff092-6e09-4e22-b849-4d939c87ec46"
/dev/sdb1: LABEL="EFI" UUID="1503-761C" TYPE="vfat" PARTLABEL="EFI System Partition" PARTUUID="1c683c73-95ec-4de6-a98b-841650f2317c"
/dev/sdb2: LABEL="xubuntu" UUID="c05b54a3-c2bf-4248-a020-1a6acddb99f6" TYPE="ext4" PARTUUID="12fbd056-2e67-496e-b7d6-f5a097acaf12"
/dev/sdb3: UUID="9ca249b6-b9da-4756-952e-4dbc13426527" TYPE="swap" PARTUUID="da8eb3c4-5d8b-45a9-b186-e114956ed69f"
/dev/sdb4: LABEL="Home" UUID="2d69cba0-ddb1-4746-a593-6d2811caf0a7" TYPE="ext4" PARTUUID="548b1699-6832-4c0f-8fea-a053855e796d"

blkid (systemd):

/dev/sdb2: LABEL="xubuntu" UUID="c05b54a3-c2bf-4248-a020-1a6acddb99f6" TYPE="ext4" PARTUUID="12fbd056-2e67-496e-b7d6-f5a097acaf12"
/dev/mapper/SAMSUNG_HM500JI_S1WFJD0SC83565-part1: LABEL="HT-Data" UUID="214a0d73-d36c-4ad6-8988-dbecdbc153f7" SEC_TYPE="ext2" TYPE="ext3" PARTLABEL="home" PARTUUID="793ff092-6e09-4e22-b849-4d939c87ec46"
/dev/sda: PTUUID="2cddf033-6053-4295-96a2-b3fd22295c95" PTTYPE="gpt"
/dev/mapper/SAMSUNG_HM500JI_S1WFJD0SC83565: PTUUID="2cddf033-6053-4295-96a2-b3fd22295c95" PTTYPE="gpt"

Booting from USB, fsck returns 0 for each partition.

  • Are you booting to sda or sdb? I suspect that your /etc/fstab is using unique UUID's to find disks, and that these UUID's don't match what you really have on disk. In terminal, type "sudo blkid" and use that output to review the UUID's in /etc/fstab. They should match up for the various partitions. Edit /etc/fstab as required (make a backup first). Holler back if you have questions. – heynnema Aug 6 '16 at 15:44
  • You are correct in that my /etc/fstab is using UUIDs, – stef Aug 7 '16 at 10:47
  • I'm booting to sdb1, this is the only partition with the boot flag set and this is the only disk visible as boot device in the BIOS. You are correct in that my /etc/fstab is using UUIDs. When booting in upstart mode, blkid correctly displays IDs which match fstab entries and everything mounts. Booting in systemd mode, blkid does not list any output for sdb1,3,4 (presumably because the devices are not there). /dev/sdb2 is the only partition mounted, and I just noted that the UUID differs from the upstart-boot version?! blkid also lists a PARTUUID which is constant. – stef Aug 7 '16 at 11:16
  • I just tried switching fstab entries from UUID to PARTUUID - same issue.: works under upstart, fails under systemd. The same is true when using LABEL. – stef Aug 7 '16 at 12:04
  • Any you're sure that all the UUID's are unique? Do you have sdb2 as / and sdb4 as /home? Do you have an sda disk, and how do the UUID's look... are they unique with everything? Post your original fstab using UUID's, and the output of blkid from both systemd and upstart. Have you fsck'd the disk? – heynnema Aug 7 '16 at 13:25

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Browse other questions tagged or ask your own question.