On 05/12/2012 02:47 PM, Csanyi Pal wrote:
BG<[email protected]>  writes:

On 05/03/2012 11:02 PM, Csanyi Pal wrote:
BG<[email protected]>   writes:

On 04/18/2012 09:22 PM, Sérgio Basto wrote:
On Mon, 2012-04-16 at 11:52 +0200, Csanyi Pal wrote:
On Saturday 14 April 2012 14:59:12 Alexey Eromenko wrote:
I doubt Debian can drop HAL
Debian *has* dropped HAL.  It is in Lenny (Debian 5) by default.  It
is available for Squeeze (Debian 6), but is not installed by default
and is deprecated, and is firmly on its way out in Wheezy.

http://wiki.debian.org/Suspend

<quote>
Wheezy is still in testing status, so it's configuration may change
rapidly.

A very notable change is that HAL is phased out. If you still have the
hal package installed, you should remove it or it will interference
with pm-utils during suspend.
</quote>
Indeed, I have hal installed.
After I removed it and rebooted the system, tried again in VirtualBox
the USB support.

VB detect the USB stick connected to machine but still doesn't appeare
in the guest Win XP system's Windows Explorer. :(

I remember that that I removed from /etc/udev/rules.d/ directory a file
that is for USB rule. I mentioned it in this thred probably.

Now in the /etc/udev/rules.d/ directory I have only two files:
70-persistent-cd.rules
70-persistent-net.rules

Is this right?
Could be, but I think that you should move to udev rules quickly.

Other day I try lubuntu in a vm , Additional-guest, seems that are based
on HAL , but again I think that VB should prepare things to use udev
rules.

HAL has been removed from Fedora 16 , and X11 also drop HAL so seems is
near of EOL.
I have a Wheezy host with a Wheezy guest. USB working, no HAL, no udev
rules that I can see. I couldn't tell you exactly how it's working or
what I did different than you but if you would like to compare your
system to mine to narrow down your search I'd be happy to help.
I appreciate your help, but don't know how to perform it?

Because of your question and another problem I had, I decided I didn't
know enough about how udev worked and dug into it deeper. And now I must
apologize because there is udev rules for USB. It just doesn't work how
I thought it did.
The vboxdrv kernel module has a rule under /etc/udev/rules.d. If you
want I can send you the exact rule as an attachment.
Please do so and send me the exact rule as an attachment.

The rules are required to be all on one line and they are too long to
be on a single line in an email so it was simply confusing to paste
them here. It should not matter because I certainly did not write
these rules. If the rule doesn't exist I would try to run

/etc/init.d/vboxdrv setup
I haven't vboxdrv in the /etc/init.d/ directory but only virtualbox and
virtualbox-guest-utils.

I can't run these with 'setup' option:
~$ sudo /etc/init.d/virtualbox setup
Usage: /etc/init.d/virtualbox
{start|stop|stop_vms|restart|force-reload|status}
~$ sudo /etc/init.d/virtualbox-guest-utils setup
Usage: /etc/init.d/virtualbox-guest-utils
{start|stop|restart|force-reload|status}

as root. If this fails, make sure you have dkms installed and also the
linux-header package installed for your kernel.
I have installed dkms and linux-header packages:
~$ aptitude search dkms

i A dkms
i   virtualbox-dkms
i A virtualbox-guest-dkms

~$ aptitude search linux-header

i A linux-headers-3.2.0-2-amd64
i A linux-headers-3.2.0-2-common
linux-headers-amd64

If you still have problems check /var/log/vbox-install.log
I haven't /var/log/vbox-install.log.

May 12 21:15:15 debian-asztal kernel: [20975.190323] vboxdrv: Found 2
processor cores.
May 12 21:15:15 debian-asztal kernel: [20975.191046] vboxdrv: fAsync=0
offMin=0x460 offMax=0xc4e
May 12 21:15:15 debian-asztal kernel: [20975.191116] vboxdrv: TSC mode
is 'synchronous', kernel timer mode is 'normal'.
May 12 21:15:15 debian-asztal kernel: [20975.191125] vboxdrv:
Successfully loaded version 4.1.14_Debian (inte rface 0x00190000).

Are you using the Debian repos or the VBox repos? I also attached the /etc/init.d/vboxdrv so you can see it though I doubt it will help you. You don't have the kernel modules loaded. I am sure you've seen this but please verify none of this help you https://forums.virtualbox.org/viewtopic.php?f=10&t=43455.
KERNEL=="vboxdrv", NAME="vboxdrv", OWNER="root", GROUP="root", MODE="0600"
SUBSYSTEM=="usb_device", ACTION=="add", 
RUN+="/usr/share/virtualbox/VBoxCreateUSBNode.sh $major $minor 
$attr{bDeviceClass}"
SUBSYSTEM=="usb", ACTION=="add", ENV{DEVTYPE}=="usb_device", 
RUN+="/usr/share/virtualbox/VBoxCreateUSBNode.sh $major $minor 
$attr{bDeviceClass}"
SUBSYSTEM=="usb_device", ACTION=="remove", 
RUN+="/usr/share/virtualbox/VBoxCreateUSBNode.sh --remove $major $minor"
SUBSYSTEM=="usb", ACTION=="remove", ENV{DEVTYPE}=="usb_device", 
RUN+="/usr/share/virtualbox/VBoxCreateUSBNode.sh --remove $major $minor"
#! /bin/sh
# Oracle VM VirtualBox
# Linux kernel module init script

#
# Copyright (C) 2006-2010 Oracle Corporation
#
# This file is part of VirtualBox Open Source Edition (OSE), as
# available from http://www.virtualbox.org. This file is free software;
# you can redistribute it and/or modify it under the terms of the GNU
# General Public License (GPL) as published by the Free Software
# Foundation, in version 2 as it comes in the "COPYING" file of the
# VirtualBox OSE distribution. VirtualBox OSE is distributed in the
# hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
#

# chkconfig: 35 20 80
# description: VirtualBox Linux kernel module
#
### BEGIN INIT INFO
# Provides:       vboxdrv
# Required-Start: $syslog
# Required-Stop:
# Default-Start:  2 3 4 5
# Default-Stop:   0 1 6
# Short-Description: VirtualBox Linux kernel module
### END INIT INFO

PATH=/sbin:/bin:/usr/sbin:/usr/bin:$PATH
DEVICE=/dev/vboxdrv
LOG="/var/log/vbox-install.log"
NOLSB=
DEBIAN=yes
MODPROBE=/sbin/modprobe

if $MODPROBE -c | grep -q '^allow_unsupported_modules  *0'; then
  MODPROBE="$MODPROBE --allow-unsupported-modules"
fi

[ -f /lib/lsb/init-functions ] || NOLSB=yes
[ -f /etc/vbox/vbox.cfg ] && . /etc/vbox/vbox.cfg

if [ -n "$INSTALL_DIR" ]; then
    VBOXMANAGE="$INSTALL_DIR/VBoxManage"
    DODKMS="$INSTALL_DIR/src/vboxhost/do_dkms"
    BUILDVBOXDRV="$INSTALL_DIR/src/vboxhost/vboxdrv/build_in_tmp"
    BUILDVBOXNETFLT="$INSTALL_DIR/src/vboxhost/vboxnetflt/build_in_tmp"
    BUILDVBOXNETADP="$INSTALL_DIR/src/vboxhost/vboxnetadp/build_in_tmp"
    BUILDVBOXPCI="$INSTALL_DIR/src/vboxhost/vboxpci/build_in_tmp"
else
    VBOXMANAGE="/usr/lib/virtualbox/VBoxManage"
    DODKMS="/usr/share/virtualbox/src/vboxhost/do_dkms"
    BUILDVBOXDRV="/usr/share/virtualbox/src/vboxhost/vboxdrv/build_in_tmp"
    BUILDVBOXNETFLT="/usr/share/virtualbox/src/vboxhost/vboxnetflt/build_in_tmp"
    BUILDVBOXNETADP="/usr/share/virtualbox/src/vboxhost/vboxnetadp/build_in_tmp"
    BUILDVBOXPCI="/usr/share/virtualbox/src/vboxhost/vboxpci/build_in_tmp"
fi

# silently exit if the package was uninstalled but not purged,
# applies to Debian packages only
[ -z "$DEBIAN" -o -x $VBOXMANAGE -a -x $BUILDVBOXDRV ] || exit 0

if [ -n "$NOLSB" ]; then
    if [ -f /etc/redhat-release ]; then
        system=redhat
    elif [ -f /etc/SuSE-release ]; then
        system=suse
    elif [ -f /etc/gentoo-release ]; then
        system=gentoo
    fi
fi

[ -r /etc/default/virtualbox ] && . /etc/default/virtualbox

if [ -z "$NOLSB" ]; then
    . /lib/lsb/init-functions
    fail_msg() {
        echo ""
        log_failure_msg "$1"
    }
    succ_msg() {
        log_end_msg 0
    }
    begin_msg() {
        log_daemon_msg "$@"
    }
else
    if [ "$system" = "redhat" ]; then
        . /etc/init.d/functions
        fail_msg() {
            echo -n " "
            echo_failure
            echo
            echo "  ($1)"
        }
        succ_msg() {
            echo -n " "
            echo_success
            echo
        }
    elif [ "$system" = "suse" ]; then
        . /etc/rc.status
        fail_msg() {
            rc_failed 1
            rc_status -v
            echo "  ($1)"
        }
        succ_msg() {
            rc_reset
            rc_status -v
        }
    elif [ "$system" = "gentoo" ]; then
        if [ -f /sbin/functions.sh ]; then
            . /sbin/functions.sh
        elif [ -f /etc/init.d/functions.sh ]; then
            . /etc/init.d/functions.sh
        fi
        fail_msg() {
            eerror "$1"
        }
        succ_msg() {
            eend "$?"
        }
        begin_msg() {
            ebegin "$1"
        }
        if [ "`which $0`" = "/sbin/rc" ]; then
            shift
        fi
    else
        fail_msg() {
            echo " ...failed!"
            echo "  ($1)"
        }
        succ_msg() {
            echo " ...done."
        }
    fi
    if [ "$system" != "gentoo" ]; then
        begin_msg() {
            [ -z "${1:-}" ] && return 1
            if [ -z "${2:-}" ]; then
                echo -n "$1"
            else
                echo -n "$1: $2"
            fi
        }
    fi
fi

failure()
{
    fail_msg "$1"
    exit 0
}

running()
{
    lsmod | grep -q "$1[^_-]"
}

start()
{
    begin_msg "Starting VirtualBox kernel modules"
    if [ -d /proc/xen ]; then
        failure "Running VirtualBox in a Xen environment is not supported"
    fi
    if ! running vboxdrv; then
        if ! rm -f $DEVICE; then
            failure "Cannot remove $DEVICE"
        fi
        if ! $MODPROBE vboxdrv > /dev/null 2>&1; then
            failure "modprobe vboxdrv failed. Please use 'dmesg' to find out 
why"
        fi
        sleep .2
    fi
    # ensure the character special exists
    if [ ! -c $DEVICE ]; then
        MAJOR=`sed -n 's;\([0-9]\+\) vboxdrv;\1;p' /proc/devices`
        if [ ! -z "$MAJOR" ]; then
            MINOR=0
        else
            MINOR=`sed -n 's;\([0-9]\+\) vboxdrv;\1;p' /proc/misc`
            if [ ! -z "$MINOR" ]; then
                MAJOR=10
            fi
        fi
        if [ -z "$MAJOR" ]; then
            rmmod vboxdrv 2>/dev/null
            failure "Cannot locate the VirtualBox device"
        fi
        if ! mknod -m 0660 $DEVICE c $MAJOR $MINOR 2>/dev/null; then
            rmmod vboxdrv 2>/dev/null
            failure "Cannot create device $DEVICE with major $MAJOR and minor 
$MINOR"
        fi
    fi
    # ensure permissions
    if ! chown :root $DEVICE 2>/dev/null; then
        rmmod vboxpci 2>/dev/null
        rmmod vboxnetadp 2>/dev/null
        rmmod vboxnetflt 2>/dev/null
        rmmod vboxdrv 2>/dev/null
        failure "Cannot change group root for device $DEVICE"
    fi
    if ! $MODPROBE vboxnetflt > /dev/null 2>&1; then
        failure "modprobe vboxnetflt failed. Please use 'dmesg' to find out why"
    fi
    if ! $MODPROBE vboxnetadp > /dev/null 2>&1; then
        failure "modprobe vboxnetadp failed. Please use 'dmesg' to find out why"
    fi
    if ! $MODPROBE vboxpci > /dev/null 2>&1; then
        failure "modprobe vboxpci failed. Please use 'dmesg' to find out why"
    fi
    # Create the /dev/vboxusb directory if the host supports that method
    # of USB access.  The USB code checks for the existance of that path.
    if grep -q usb_device /proc/devices; then
        mkdir -p -m 0750 /dev/vboxusb 2>/dev/null
        chown root:vboxusers /dev/vboxusb 2>/dev/null
    fi
    succ_msg
}

stop()
{
    begin_msg "Stopping VirtualBox kernel modules"
    if running vboxpci; then
        if ! rmmod vboxpci 2>/dev/null; then
            failure "Cannot unload module vboxpci"
        fi
    fi
    if running vboxnetadp; then
        if ! rmmod vboxnetadp 2>/dev/null; then
            failure "Cannot unload module vboxnetadp"
        fi
    fi
    if running vboxdrv; then
        if running vboxnetflt; then
            if ! rmmod vboxnetflt 2>/dev/null; then
                failure "Cannot unload module vboxnetflt"
            fi
        fi
        if ! rmmod vboxdrv 2>/dev/null; then
            failure "Cannot unload module vboxdrv"
        fi
        if ! rm -f $DEVICE; then
            failure "Cannot unlink $DEVICE"
        fi
    fi
    succ_msg
}

# enter the following variables in /etc/default/virtualbox:
#   SHUTDOWN_USERS="foo bar"  
#     check for running VMs of user foo and user bar
#   SHUTDOWN=poweroff
#   SHUTDOWN=acpibutton
#   SHUTDOWN=savestate
#     select one of these shutdown methods for running VMs
stop_vms()
{
    wait=0
    for i in $SHUTDOWN_USERS; do
        # don't create the ipcd directory with wrong permissions!
        if [ -d /tmp/.vbox-$i-ipc ]; then
            export VBOX_IPC_SOCKETID="$i"
            VMS=`$VBOXMANAGE --nologo list runningvms | sed -e 
's/^".*".*{\(.*\)}/\1/' 2>/dev/null`
            if [ -n "$VMS" ]; then
                if [ "$SHUTDOWN" = "poweroff" ]; then
                    begin_msg "Powering off remaining VMs"
                    for v in $VMS; do
                        $VBOXMANAGE --nologo controlvm $v poweroff
                    done
                    succ_msg
                elif [ "$SHUTDOWN" = "acpibutton" ]; then
                    begin_msg "Sending ACPI power button event to remaining VMs"
                    for v in $VMS; do
                        $VBOXMANAGE --nologo controlvm $v acpipowerbutton
                        wait=30
                    done
                    succ_msg
                elif [ "$SHUTDOWN" = "savestate" ]; then
                    begin_msg "Saving state of remaining VMs"
                    for v in $VMS; do
                        $VBOXMANAGE --nologo controlvm $v savestate
                    done
                    succ_msg
                fi
            fi
        fi
    done
    # wait for some seconds when doing ACPI shutdown
    if [ "$wait" -ne 0 ]; then
        begin_msg "Waiting for $wait seconds for VM shutdown"
        sleep $wait
        succ_msg
    fi
}

# setup_script
setup()
{
    stop
    begin_msg "Uninstalling old VirtualBox DKMS kernel modules"
    $DODKMS uninstall > $LOG
    succ_msg
    if find /lib/modules/`uname -r` -name "vboxpci\.*" 2>/dev/null|grep -q 
vboxpci; then
        begin_msg "Removing old VirtualBox pci kernel module"
        find /lib/modules/`uname -r` -name "vboxpci\.*" 2>/dev/null|xargs rm -f 
2>/dev/null
        succ_msg
    fi  
    if find /lib/modules/`uname -r` -name "vboxnetadp\.*" 2>/dev/null|grep -q 
vboxnetadp; then
        begin_msg "Removing old VirtualBox netadp kernel module"
        find /lib/modules/`uname -r` -name "vboxnetadp\.*" 2>/dev/null|xargs rm 
-f 2>/dev/null
        succ_msg
    fi  
    if find /lib/modules/`uname -r` -name "vboxnetflt\.*" 2>/dev/null|grep -q 
vboxnetflt; then
        begin_msg "Removing old VirtualBox netflt kernel module"
        find /lib/modules/`uname -r` -name "vboxnetflt\.*" 2>/dev/null|xargs rm 
-f 2>/dev/null
        succ_msg
    fi  
    if find /lib/modules/`uname -r` -name "vboxdrv\.*" 2>/dev/null|grep -q 
vboxdrv; then
        begin_msg "Removing old VirtualBox kernel module"
        find /lib/modules/`uname -r` -name "vboxdrv\.*" 2>/dev/null|xargs rm -f 
2>/dev/null
        succ_msg
    fi
    begin_msg "Trying to register the VirtualBox kernel modules using DKMS"
    if ! $DODKMS install >> $LOG; then
      fail_msg "Failed, trying without DKMS"
      begin_msg "Recompiling VirtualBox kernel modules"
      if ! $BUILDVBOXDRV \
          --save-module-symvers /tmp/vboxdrv-Module.symvers \
          --no-print-directory install >> $LOG 2>&1; then
          failure "Look at $LOG to find out what went wrong"
      fi
      if ! $BUILDVBOXNETFLT \
          --use-module-symvers /tmp/vboxdrv-Module.symvers \
          --no-print-directory install >> $LOG 2>&1; then
          failure "Look at $LOG to find out what went wrong"
      fi
      if ! $BUILDVBOXNETADP \
          --use-module-symvers /tmp/vboxdrv-Module.symvers \
          --no-print-directory install >> $LOG 2>&1; then
          failure "Look at $LOG to find out what went wrong"
      fi
      if ! $BUILDVBOXPCI \
          --use-module-symvers /tmp/vboxdrv-Module.symvers \
          --no-print-directory install >> $LOG 2>&1; then
          failure "Look at $LOG to find out what went wrong"
      fi
    fi
    rm -f /etc/vbox/module_not_compiled
    succ_msg
    start
}

dmnstatus()
{
    if running vboxdrv; then
        str="vboxdrv"
        if running vboxnetflt; then
            str="$str, vboxnetflt"
            if running vboxnetadp; then
                str="$str, vboxnetadp"
            fi
        fi
        if running vboxpci; then
            str="$str, vboxpci"
        fi
        echo "VirtualBox kernel modules ($str) are loaded."
        for i in $SHUTDOWN_USERS; do
            # don't create the ipcd directory with wrong permissions!
            if [ -d /tmp/.vbox-$i-ipc ]; then
                export VBOX_IPC_SOCKETID="$i"
                VMS=`$VBOXMANAGE --nologo list runningvms | sed -e 
's/^".*".*{\(.*\)}/\1/' 2>/dev/null`
                if [ -n "$VMS" ]; then
                    echo "The following VMs are currently running:"
                    for v in $VMS; do
                       echo "  $v"
                    done
                fi
            fi
        done
    else
        echo "VirtualBox kernel module is not loaded."
    fi
}

case "$1" in
start)
    start
    ;;
stop)
    stop_vms
    stop
    ;;
stop_vms)
    stop_vms
    ;;
restart)
    stop && start
    ;;
force-reload)
    stop
    start
    ;;
setup)
    setup
    ;;
status)
    dmnstatus
    ;;
*)
    echo "Usage: $0 {start|stop|stop_vms|restart|force-reload|status|setup}"
    exit 1
esac

exit 0
------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
VBox-users-community mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/vbox-users-community

Reply via email to