From OpenVZ Virtuozzo Containers Wiki
< Download‎ | vzpkg‎ | 2.7.0-18
Jump to: navigation, search


A lot of exciting new features, like support for different architectures and different sets for the same OS template, but brings in incompatible changes at the same time. So read on for the full changelog and upgrade instructions.

  • support for different (per OSTEMPLATE) rpm versions (OpenVZ Bug #27)
  • support/requirement for customized yum -- vzyum
  • rpm/yum now executes scripts in VPS context
  • mounting of /proc is done in VPS context (by our init)
  • support for template sets (OpenVZ Bug #15)
  • support for per-ostemplate .rpmmacros (OpenVZ Bug #16)
  • fixed OpenVZ Bug #28 (vzyum should exit if there's no relevant yum.conf)
  • included statically built myinit for different platforms
  • added vzosname utility
  • added requirement for procmail (needed for lockfile util)
  • fixed OpenVZ Bug #63 (template cache should not be created if install-post fails)


Requires vzctl >= 2.7.0-24, vzyum >= 2.4.0-11, vztmpl* >= 2.0

Overview of new features

Support for multiple architectures

New template tools support multiple architectures (currently the list is limited to i386 (a.k.a. x86), x86_64, and ia64). That also means it is now able to work with templates for different architectures on the machines which support it (e.g., i386 and x86_64 templates can co-exist on x86_64 box).

Template sets

Before this release, it was possible to have a single OS template per Linux distribution (e.g. there was only one OS template for Fedora Core 4). From now on, you can have as many as you like; the difference between them is set of packages. Template metadata is now shipped with two template sets for each distribution: default and minimal. Default is the same as it was before. Minimal features a limited set of packages, just the base system and sshd, making it very lightweight in terms of disk space used. You can create you own sets as well.

New template naming scheme

Due to new features described above, template naming scheme has changed. It is now osname-osversion[-architecture][-set], where two last fields are optional. So, full template name for default set of fedora-core-4 OS template on i386 architecture is fedora-core-4-i386-default, but you can omit both "i386" (defaults to current architecture if omitted) and "default". Thus, all four names — centos-4, centos-4-default, centos-4-i386, and centos-4-i386-default — are identical (provided you are on x86 machine).

Stripped locales

By default, locales are not installed into templates now, which saves a lot of disk space. If you need some locales, edit the /vz/template/osname/osversion/architecture/config/.rpmmacros file and put the names of those locales you need instead of "C".

Upgrade information

  1. Upgrade vzctl to at least 2.7.0-24, as it adds support for the new template naming scheme.
  2. Remove (or back up) all existing template caches:
    rm /vz/template/cache/*{old,new}
    mv /vz/template/cache/* /tmp/
  3. Download and install vzyum and vzrpmXX packages (including vzrpmXX-python packages). Note that vzrpm43 packages are required for Fedora Core 3 and CentOS 4 templates, while vzrpm44 packages are required for Fedora Core 4.
  4. Download and install newer template metadata rpms (version 2.0 is required). Use rpm -Uhv command. Current repo cache(s) will be preserved.
  5. Install newer vzpkg rpm.
  6. Run vzpkgcache -f to recreate all template caches.