Proxmox 3.4 + OpenVZ and CentOS 7.2

Sorry to resurrect such an old thread, but this is the first hit on google for this problem so I figured I'd post the reason + workaround in case anyone else comes across this.

It appears that in CentOS 7.2 systemd was upgraded from version 208 to 219. Somewhere in between these versions a change was introduced which breaks compatibility with the old 2.6 kernel Proxmox 3.x is using. The problem may have been fixed in a newer OpenVZ kernel, but no version of Proxmox uses it since OpenVZ got switched out for LXC in Proxmox 4.0.

I got things back up and running using the following commands - they will downgrade systemd and pin it to version 208. You will need to vzctl restart <ctid> afterwards (the shutdown command within the container doesn't seem to work after systemd has been upgraded).
Code:
# For some reason the default vault.centos.org doesn't contain binaries, but mirror.centos.org/centos/ does?
sed -i -- 's/vault.centos.org/mirror.centos.org\/centos/g' /etc/yum.repos.d/CentOS-Vault.repo
yum --disablerepo=\* --enablerepo=C7.1\* downgrade -y centos-release systemd systemd-sysv cyrus-sasl cyrus-sasl-lib dracut glibc glibc-common nscd libstdc++ libgcc pcre libdb systemd-libs zlib rpcbind rsyslog libdb-utils util-linux pulseaudio-libs libblkid libuuid libmount
yum install -y yum-versionlock
yum versionlock systemd-208-20.el7_1.6.x86_64

This will likely prevent any further system updates from working and is in no way a long-term fix - the real solution is to upgrade to Proxmox 4.0+ and migrate the OpenVZ containers to LXC.

If you've restarted the container you've probably lost networking as well (since nothing comes up if systemd doesn't start). The following commands should get it going again for venet devices (replace x.x.x.x with the assigned venet ip).
Code:
ip addr add x.x.x.x dev venet0
ip link set venet0 up
ip route add default dev venet0