Univention Bugzilla – Bug 28176
blktap-Integration für UCS 3.1
Last modified: 2012-12-12 21:08:49 CET
UVMM benötigt blktap. Der blktap-Patch, der im Squeeze-Kernel enthalten war, ist im Wheezy nicht mehr enthalten, da er nicht mit dem übrigen Xen-Code upstream gemergt wurde. Es gibt ein DKMS-Paket, das in Tests funktionierte (https://forge.univention.org/bugzilla3/show_bug.cgi?id=27456#c12 ) Die Integration in UCS 3.1 muss noch festgelegt werden: 1. Möglichkeit: Integration über DKMS univention-xen erhält eine Dependency auf blktap-dkms und dkms. Jedes Mal wenn ein neuer Kernel auf dem System installiert wird, wird das blktap-Modul automatisch gegen diesen Kernel gebaut und eingerichtet. Vorteile - Funktioniert auf mit angepassten/lokalen Kerneln - Standardverfahren für Addon-Module in Debian, andere Addon-Module wie Open-VM-Tools werden ebenfalls als DKMS-Pakete bereitgestellt und integrieren sich dadurch nahtlos. Nachteile: - Auf den Systemen muss für DKMS ein Compiler und die Kernel-Header installiert sein. Das stösst ggf. auf Unbehagen. 2. Auslieferung vorcompilierter Module DKMS bietet eine Option, um ein DEB-Paket zu erstellen: mkdeb This action allows you to create a debian binary package for a specified module / version. It uses a template debian directory found in /etc/dkms/tem‐plate-dkms-mkdeb as the basis for the package. Alternatively, if DKMS finds a file called /usr/src/<module>-<module-version>/<module>-dkms-mkdeb it will use that folder instead. In general, a DKMS tarball is placed inside the contents of this package, and the package itself calls various DKMS commands to load this tarball, build and install modules on the end user's system. If you do not want your debian package to contain any prebuilt binaries, be sure to specify --source-only in the mkdeb command. Daraus könnte ein Metapaket erstellt werden, so ähnlich wie wir das früher auch mit 2.6.26 und DRBD/AVM schon hatten. Das funktioniert dann allerdings nicht mit angepassten Kerneln und verursacht mehr Aufwand. 3. Integration in das Linux-Kernel-Paket Die blktap-Sourcen könnten in den Bau des Kernel-Patchs integriert werden. Das würde allerdings eine dauerhafte Pflege dieses Patches erfordern, da blktap upstream eher nicht übernommen werden wird.
(In reply to comment #0) > 2. Auslieferung vorcompilierter Module > > DKMS bietet eine Option, um ein DEB-Paket zu erstellen: > > mkdeb This action allows you to create a debian binary package for a > specified module / version. It uses a template debian directory found in > /etc/dkms/tem‐plate-dkms-mkdeb as the basis for the package. Alternatively, if > DKMS finds a file called /usr/src/<module>-<module-version>/<module>-dkms-mkdeb > it will use that folder instead. In general, a DKMS tarball is placed inside > the contents of this package, and the package itself calls various DKMS > commands to load this tarball, build and install modules on the end user's > system. If you do not want your debian package to contain any prebuilt > binaries, be sure to specify --source-only in the mkdeb command. > > Daraus könnte ein Metapaket erstellt werden, so ähnlich wie wir das früher auch > mit 2.6.26 und DRBD/AVM schon hatten. > > Das funktioniert dann allerdings nicht mit angepassten Kerneln und verursacht > mehr Aufwand. Ich bin dafür die Option 2 umzusetzen und das direkt beim Bauen der Metapakete zu generieren. Dann könnten wir theoretisch auch die VM Tools ausliefern, siehe Bug #16542#c4 und Bug #28159.
(In reply to comment #0) > UVMM benötigt blktap. Der blktap-Patch, der im Squeeze-Kernel enthalten war, > ist im Wheezy nicht mehr enthalten, da er nicht mit dem übrigen Xen-Code > upstream gemergt wurde. > > Es gibt ein DKMS-Paket, das in Tests funktionierte > (https://forge.univention.org/bugzilla3/show_bug.cgi?id=27456#c12 ) > > Die Integration in UCS 3.1 muss noch festgelegt werden: [..] > 3. Integration in das Linux-Kernel-Paket > > Die blktap-Sourcen könnten in den Bau des Kernel-Patchs integriert werden. Das > würde allerdings eine dauerhafte Pflege dieses Patches erfordern, da blktap > upstream eher nicht übernommen werden wird. Diese Version habe ich jetzt umgesetzt: patches/linux/3.1-0-0-ucs/3.2.30-1/30-add-blktap-driver.patch In einer Testinstallation wurde das blktap-Module durch das Xen-Initskript erfolgreich geladen und ich konnte in UVMM ein UCS-System erfolgreich installieren und starten. Bei der Integration musste ich zwei Compile-Fehler fixen, die habe ich upstream an xen-devel geschickt: http://article.gmane.org/gmane.comp.emulators.xen.devel/141218 Das initial importierte blktap-dkms-Paket habe ich aus 3.1 wieder entfernt, das führt nur zu Verwirrungen.
(In reply to comment #2) > Bei der Integration musste ich zwei Compile-Fehler fixen, die habe ich upstream > an xen-devel geschickt: > http://article.gmane.org/gmane.comp.emulators.xen.devel/141218 Wurde angenommen, bzw. ist in den aktuellen Releases schon gefixt: http://article.gmane.org/gmane.comp.emulators.xen.devel/141410
OK: <https://billy.knut.univention.de/websvn/filedetails.php?repname=patches&path=%2Flinux%2F3.1-0-0-ucs%2F3.2.30-1%2F30-add-blktap-driver.patch> OK: 3.2.0-ucs17-amd64 OK: 3.2.0-ucs17-686-pae OK: tapdisk funktioniert wie in <https://hutten.knut.univention.de/mediawiki/index.php/Philipp_memo/Xen#Xen-4.1> beschrieben
UCS 3.1-0 has been released: http://forum.univention.de/viewtopic.php?f=54&t=2125 If this error occurs again, please use "Clone This Bug".