So for some reason your system configuration causes
/etc/init.d/networking to be run before the kernel detects eth0
(journalctl shows this quite nicely).
** Package changed: ifupdown (Ubuntu) => systemd (Ubuntu)
** Summary changed:
- auto interfaces do not come up with r/o images
+ networking.se
ifup@.service works as intended. The idea is that /etc/init.d/networking
brings up all "auto" interfaces, and that unit takes care of the
hotplugged interfaces only.
The problem is that /etc/init.d/networking (or something it calls)
doesn't work if / is read-only. I'll investigate what it's trying