From: Guido Günther Date: Tue, 23 Feb 2010 17:55:56 +0000 (+0100) Subject: Use 'service' if installed X-Git-Tag: 1.0.85~8 X-Git-Url: http://git.annexia.org/?p=libguestfs.git;a=commitdiff_plain;h=4ff21ceb2561936fc2e204f0a02e6ca8fb8fd507;hp=1ea1e536346f59fa63fdd33639ffc297282bfc37 Use 'service' if installed Hi, attached patch should make: http://git.debian.org/?p=pkg-libvirt/libguestfs.git;a=blob;f=debian/patches/0003-appliance-Use-service-udev-start-instead-of-running-.patch;h=c9e6b8489807d4fb1247cb6a8b6f9799bad2a09e;hb=d3a21b5b6850fc3c6e7903d0f5cafa3eb4197d49 http://git.debian.org/?p=pkg-libvirt/libguestfs.git;a=blob;f=debian/patches/0004-Ubuntu-Prefer-starting-udev-by-hand-instead-of-using.patch;h=64b65a971b186e6ab1c9351e94b46d6f5aa242e0;hb=d3a21b5b6850fc3c6e7903d0f5cafa3eb4197d49 superflous. If there's an init script it uses 'service' or falls back to calling the init script directly if it isn't there, otherwise it starts udev directly. Tested on Debian only so far. The patch is based on Rich's above two patches. Cheers, -- Guido From: =?UTF-8?q?Guido=20G=C3=BCnther?= Date: Tue, 23 Feb 2010 18:49:34 +0100 Subject: [PATCH] Check for service and use it if it's there Based on Richard's two patches for the Ubuntu build. --- diff --git a/appliance/init b/appliance/init index b741a49..84ee96e 100755 --- a/appliance/init +++ b/appliance/init @@ -8,9 +8,18 @@ mount -t proc /proc /proc mount -t sysfs /sys /sys if [ -x /etc/init.d/udev ]; then - /etc/init.d/udev start + if type service >/dev/null 2>&1; then + service udev start + else + /etc/init.d/udev start + fi elif [ -x /sbin/start_udev ] && /sbin/start_udev; then : +elif [ -x /sbin/udevd ]; then + echo -e '\000\000\000\000' > /proc/sys/kernel/hotplug + /sbin/udevd --daemon + /sbin/udevadm trigger + /sbin/udevadm settle --timeout=10 else echo No udev, creating /dev manually mount -t tmpfs none /dev