Package: fuse-utils Version: 2.6.5-1 Hi, If you run 'umount -at fuse' in the stop script, you unmount all the mounted fuse filesystems. Then, you can successfully remove the kernel module. I believe this is the correct behaviour: you're stopping fuse, so all the fuse filesystems should be unmounted. The patch attached adds this behaviour to /etc/init.d/fuse
Have a nice day, Javi (Vicho) -- System Information: Debian Release: lenny/sid APT prefers unstable APT policy: (990, 'unstable') Architecture: i386 (i686) Kernel: Linux 2.6.18-4-686 (SMP w/2 CPU cores) Locale: LANG=es_ES.UTF-8, LC_CTYPE=es_ES.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Versions of packages fuse-utils depends on: ii adduser 3.102 Add and remove users and groups ii libc6 2.5-9 GNU C Library: Shared libraries ii libfuse2 2.6.5-1 Filesystem in USErspace library ii makedev 2.3.1-83 creates device files in /dev ii sed 4.1.5-2 The GNU sed stream editor ii ucf 3.001 Update Configuration File: preserv ii udev 0.105-4 /dev/ and hotplug management daemo fuse-utils recommends no packages. -- no debconf information
diff -r 151bd3bd9ce6 -r 8f23469f4bb3 debian/fuse-utils.fuse.init --- a/debian/fuse-utils.fuse.init Fri May 25 18:12:25 2007 +0200 +++ b/debian/fuse-utils.fuse.init Sun May 27 19:52:32 2007 +0200 @@ -46,12 +46,14 @@ do_stop() { # Return # 0 if fuse has been stopped - # 1 if kernel module unload failed - # 2 if fusectl filesystem umount failed + # 1 if fusectl filesystem umount failed + # 2 if kernel module unload failed + # 3 if fuse filesystems unmount failed if grep -qw $MOUNTPOINT /proc/mounts; then umount $MOUNTPOINT >/dev/null 2>&1 || \ return 1 fi + umount -at fuse >/dev/null 2>&1 || return 3 if grep -qw "^fuse" /proc/modules; then rmmod fuse >/dev/null 2>&1 || return 2 fi @@ -70,15 +72,15 @@ case "$1" in [ "$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 ;; + 0|2|3) [ "$VERBOSE" != no ] && log_end_msg 0 ;; + 1) [ "$VERBOSE" != no ] && log_end_msg 1 ;; esac ;; restart|force-reload) log_daemon_msg "Restarting $DESC" "$NAME" do_stop case "$?" in - 0|1) + 0|2|3) do_start case "$?" in 0) log_end_msg 0 ;;