Insgesamt sind 4 Besucher online: 1 registrierter, 0 unsichtbare und 3 Gäste Der Besucherrekord liegt bei 226 Besuchern, die am 8. Jul 2012, 14:25 gleichzeitig online waren.
Das verstecken der PCI-Devices funtkioniert bei mir nur, wenn ich in initramfs.confMODULES=dep definiere. Wenn ich den default 'MODULES=most' verwende, lädt er einige der ungewünschten Kernel-Module trotzdem vor dem xen-pciback Modul, und kann dann auch nur einige PCI-Devices verstecken.
Weil ich das Late-Binding eh ganz nützlich finde, habe ich das Script mal noch etwas weiter 'debinanisert' - d.h. das template verwendet. Zukünftig soll das Kommando xl ja PCI-Devices dynamisch xen-pciback zuweisen können, wie ich in der Mailing-Liste gelesen habe. Dann werde ich wohl anstatt der manuellen Einträge unter /sys/bus/... das Kommando xl verwenden (sofern das dann überhaupt noch notwendig sein sollte).
Hier jedenfalls mein aktualisiertes 'Late-Binding' Startscript /etc/init.d/xen-pciback, welches das Konfigfile /etc/xen/xen-pciback.conf auswertet.
#! /bin/sh ### BEGIN INIT INFO # Provides: xen-pciback # Required-Start: $remote_fs $syslog # Required-Stop: $remote_fs $syslog # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Bind devices to xen-pciback # Description: Bind devices to xen-pciback ### END INIT INFO # Author: neobiker <neobiker@neobiker.de> PATH=/sbin:/usr/sbin:/bin:/usr/bin
DESC="Bind devices to xen-pciback" NAME=xen-pciback SCRIPTNAME=/etc/init.d/$NAME CONFIGNAME=/etc/xen/$NAME.conf
# Exit if the package is not installed [ -e $CONFIGNAME ] || exit 0
# Read configuration variable file if it is present [ -r /etc/default/$NAME ] && . /etc/default/$NAME
# Load the VERBOSE setting and other rcS variables . /lib/init/vars.sh
# Define LSB log_* functions. # Depend on lsb-base (>= 3.2-14) to ensure that this file is present # and status_of_proc is working. . /lib/lsb/init-functions
# # Function that starts the daemon/service # do_start() { # Return # 0 if daemon has been started # 1 if daemon was already running # 2 if daemon could not be started
if [ ! -x /usr/bin/lspci ]; then log_warning_msg "lspci not found (please install pciutils)." return 2 fi
# # Function that stops the daemon/service # do_stop() { # Return # 0 if daemon has been stopped # 1 if daemon was already stopped # 2 if daemon could not be stopped # other if a failure occurred return 0 }
case "$1" in start) [ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC" "$NAME" do_start case "$?" in 0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;; 2) [ "$VERBOSE" != no ] && log_end_msg 1 ;; esac ;; stop) [ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME" do_stop case "$?" in 0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;; 2) [ "$VERBOSE" != no ] && log_end_msg 1 ;; esac ;; *) echo "Usage: $SCRIPTNAME {start|stop}" >&2 exit 3 ;; esac