Acontece que o problema é que o systemd ignora tudo dentro de /dev/block
.
O /dev/block/ec2/ephemeral0
foi um link simbólico criado por uma regra do udev, então a solução é simplesmente ajustar a regra do udev e colocar o link simbólico em outro lugar. Eu escolhi colocá-lo em /dev/disk/ec2/ephemeral0
.
$ udevadm info -q symlink -n /dev/xvdb
disk/by-uuid/ae145d53-9501-419f-b9b1-7416e5c4fec9 disk/ec2/ephemeral0
$ systemctl list-units -a | grep 'xvdb\|ephemeral0'
dev-disk-ec2-ephemeral0.device loaded active plugged /dev/disk/ec2/ephemeral0
dev-xvdb.device loaded active plugged /dev/xvdb
sys-devices-vbd\x2d2064-block-xvdb.device loaded active plugged /sys/devices/vbd-2064/block/xvdb
Fonte: link