在OpenVZ上将Debian 7升级到Debian 8
Debian最近把jessie从testing移动到了stable,其中一个最大的变化就是把init的sysvinit
换成了systemd
。直接通过apt-get dist-upgrade
会造成container无法启动,因为init系统变了。
OpenVZ近期内没有发布基于jessie的模板,因此想在OpenVZ上使用jessie(或者单纯地不喜欢systemd
的话),可以在升级时保留sysvinit
,阻止systemd-sysv
安装,这样Debian 7可以成功地从wheezy升级到jessie。
方法是通过在/etc/apt/preferences.d/
中建立一个文件,比如叫keep-sysvinit
,并输入如下内容:
Package: systemd-sysv
Pin: release o=Debian
Pin-Priority: -1
这样apt在升级时将会跳过systemd-sysv
,从而阻止替换sysvinit
。可以在升级完成后通过apt-get purge systemd && apt-get --purge autoremove
来删除systemd的相关包,但是libsystemd0
是不能删除的,因为不少软件与之有依赖关系(比如php5-fpm
)。
参考:
http://people.skolelinux.org/pere/blog/How_to_stay_with_sysvinit_in_Debian_Jessie.html