[Eisfair] USBIP erkennt Drucker nicht

Thomas Bork tom at eisfair.org
Di Sep 20 00:43:09 CEST 2016


Am 20.09.2016 um 00:10 schrieb Thomas Bork:

> To use it:
> 1. open a command prompt window, cd to the uncompressed directory.
> 2. run usbip -l 192.168.2.1 to list the exported devices from ip
> 192.168.2.1
> 3. run usbip -a 192.168.2.1 2-1 to imported the device.
> (Of course, you should change 192.168.2.1 and 2-1 to something else)

C:\Users\tb\Desktop\usbip>usbip -l 192.168.0.38
- 192.168.0.38
      1-1: Samsung Electronics Co., Ltd : unknown product (04e8:3284)
         : /sys/devices/pci0000:00/0000:00:11.0/0000:02:03.0/usb1/1-1
         : (Defined at Interface level) (00/00/00)
         :  0 - Printer / Printer / Bidirectional (07/01/02)

> Das Start-Skript von usbip filtert bei Thomas noch alle exports heraus,
> weil bei ihm usbhid mit in der Ausgabe von usbip steht:
>
> busid=1-2#usbid=04a9:10a9#1-2:1.0=usblp#1-2:1.1=usb-storage#1-2:1.2=usbhid#

Das passiert bei mir nicht:

referencetest32 # usbip list -l
Local USB devices
=================
  - busid 1-1 (04e8:3284)
    Samsung Electronics Co., Ltd : unknown product (04e8:3284)
          1-1:1.0 -> usbip-host

  - busid 1-2 (05dc:0200)
    Lexar Media, Inc. : JumpDrive 2.0 Pro (05dc:0200)
          1-2:1.0 -> unknown

  - busid 2-1 (0e0f:0003)
    VMware, Inc. : Virtual Mouse (0e0f:0003)
          2-1:1.0 -> usbhid
          2-1:1.1 -> usbhid

  - busid 2-2 (0e0f:0002)
    VMware, Inc. : Virtual USB Hub (0e0f:0002)
          2-2:1.0 -> hub

referencetest32 # /etc/init.d/usbip restart
  * Stopping usbip ...
    - Unbind local busid 1-1 complete. 
 
              [  OK  ]
    - Stopping usbipd ... 
 
              [  OK  ]
  * Starting usbip ...
    - Starting usbipd ... 
 
              [  OK  ]
    - Bind local usbid 04e8:3284 to busid 1-1 complete. 
 
              [  OK  ]
referencetest32 # /etc/init.d/usbip status
Checking status of usbip ...
usbipd is running.
usbip_core is loaded.
usbip_host is loaded.
vhci_hcd is loaded.
Available busids (hub and usbhid filtered out):
busid=1-1 usbid=04e8:3284 1-1:1.0=usbip-host
busid=1-2 usbid=05dc:0200 1-2:1.0=unknown
referencetest32 #

busid 1-1 ist exportiert, wie man an der Ausgabe von /etc/init.d/usbip 
status und 1-1:1.0=usbip-host sieht. Das alles mit

> Und die Änderung von Jürgen funktioniert zumindest bei mir im
> init-Skript nicht korrekt, da usbhid bei mir in einer Zeile 2 mal
> auftaucht.

Sie funktioniert auch nicht in /var/install/config.d/usbip.sh nicht. Da 
ist ein break in der Funktion, welches dazu führt, das kein Export 
geschrieben wird (hier schon auskommentiert):

do_check_local_usbip_entry ()
{
     _found_local_usbip_entry=1
     _output=`/usr/sbin/usbip list -pl | grep "busid=${busid}#"`

     if [ -n "${_output}" ]
     then
         # busid entry exist, go on ...
         _tmpstr=`echo "${_output}" | sed -e 's/#/ /g' -e 's/ 
[:.0-9-]*=hub / /' -e 's/ [:.0-9-]*=usbhid / /'`
         _usbdevs=`echo "${_tmpstr}" | cut -d' ' -f3-`

         if [ -n "${_usbdevs}" ]
         then
             _usbid=`echo "${_tmpstr}" | cut -d' ' -f2 | cut -d'=' -f2`

             if [ "${usbid}" = "${_usbid}" ]
             then
                 _found_local_usbip_entry=0
                 #break
             fi
         fi
     fi

     if [ ${_found_local_usbip_entry} -eq 1 ]
     then
         mecho --error "Cannot find local busid $busid usbid $usbid!"
         mecho --error " - skipping USBIP_EXPORT_$idx ..."
     fi

     return ${_found_local_usbip_entry}
}

-- 
der tom
[eisfair-team]


Mehr Informationen über die Mailingliste Eisfair