VDO device not mounting at boot
Red Hat Insights can detect this issue
Proactively detect and remediate issues impacting your systems.
Environment
- Red Hat Enterprise Linux 8
- Red Hat Enterprise Linux 7
- vdo 6.1.3.23-5 and later
Issue
- VDO device fails to mount automatically at boot.
Resolution
- Remove
x-systemd.requires=vdo.service
from the /etc/fstab for the VDO mount point.
Root Cause
- From
vdo-6.1.3.23-5 or higher
, there is no need to addx-systemd.requires=vdo.service
for VDO mount points because VDO activation is taken care byudev
device service using the file69-vdo-start-by-dev.rules
which gets added at the time of installation/upgradation. - Keeping both udev rule and x-systemd.requires=vdo.service might create a conflict at boot time and the mount point may fail.
Diagnostic Steps
- Logs will show that VDO device is busy:
Feb 16 09:24:51 testbox1 vdo: ERROR - Could not set up device mapper for vdo_data1
Feb 16 09:24:51 testbox1 vdo: vdo: ERROR - Could not set up device mapper for vdo_data1
Feb 16 09:24:51 testbox1 vdo: vdo: ERROR - device-mapper: create ioctl on vdo_data1 VDO-xxxx-xxxx-xxxx-xxx-xxxxxx failed: Device or resource busy <<<<<
Feb 16 09:24:51 testbox1 vdo: ERROR - device-mapper: create ioctl on vdo_data1 VDO-xxxx-xxxx-xxxx-xxx-xxxxxx failed: Device or resource busy
- Verify the vdo.service status:
* vdo.service - VDO volume services
Loaded: loaded (/etc/systemd/system/vdo.service; enabled; vendor preset: enabled)
Process: 839 ExecStart=/usr/bin/vdo start --all --confFile /etc/vdoconf.yml (code=exited, status=1/FAILURE)
Feb 16 09:24:51 testbox1 vdo[839]: Starting VDO vdo_data1
Feb 16 09:24:51 testbox1 systemd[1]: Child 839 belongs to vdo.service
Feb 16 09:24:51 testbox1 systemd[1]: vdo.service: main process exited, code=exited, status=1/FAILURE
Feb 16 09:24:51 testbox1 systemd[1]: vdo.service changed start -> failed
Feb 16 09:24:51 testbox1 systemd[1]: Job vdo.service/start finished, result=failed
Feb 16 09:24:51 testbox1 systemd[1]: Failed to start VDO volume services.
Feb 16 09:24:51 testbox1 systemd[1]: Unit vdo.service entered failed state.
Feb 16 09:24:51 testbox1 systemd[1]: vdo.service failed.
Feb 16 09:24:51 testbox1 systemd[1]: vdo.service: cgroup is empty
- Verify the entries in /etc/fstab for VDO mount point:
[root@testbox1 ~]# cat /etc/fstab | grep vdo
/dev/mapper/vdo_data1 /mnt/test2 xfs defaults,x-systemd.requires=vdo.service 0 0
This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.
Comments