¡Registre su dirección de email para obtener un enlace de descarga rápida en su escritorio y empezar!
Este artículo describe cómo solucionar algunos de los problemas más comunes que puede encontrar con USB a través de Ethernet en Linux.
Salta a
Cuando un dispositivo USB compartido se redirige desde el host de VMware (que ejecuta Linux) al invitado, este dispositivo compartido seguirá mostrándose como disponible para la conexión en otros clientes. Sin embargo, tendrá un estado "desconectado" y será imposible que los clientes se conecten a este dispositivo. Esto sucede debido a las peculiaridades funcionales de VMware para Linux.
El kernel entra en pánico cuando el módulo del kernel eveusb se carga en Red Hat Enterprise Linux 6.0. La razón es que hcd.h está ausente en los encabezados del kernel.
ls /lib/modules/$(uname -r)/build/include/linux/usb | grep hcd.h
El módulo lo incluye con:
#include <linux/usb/hcd.h>
Si este archivo no se encuentra en las rutas de inclusión del sistema estándar, se incluirá desde uno de los directorios /include/2.6.XX, donde XX es la versión exacta del kernel en ejecución. Pero nuestro include/2.6.XX/hcd.h se toma del kernel de vainilla y difiere del de RHEL, lo que da como resultado el pánico del kernel.
Solo incluimos archivos de la versión correspondiente del kernel vanilla (las fuentes oficiales de kernel.org) y no incluimos archivos para kernels modificados, como Red Hat Enterprise Linux 6.0.
En kernels de versiones más recientes (como el kernel RHEL 6.1), los encabezados del kernel contienen hcd.h, por lo que el pánico del kernel no ocurre.
Para evitar el pánico del kernel, sustituya todos los archivos en /include/2.6.XX de su versión del kernel por archivos similares de/drivers/usb/core (en las fuentes del kernel en ejecución).
Por ejemplo, para RHEL 6.0:
rpm2cpio kernel-2.6.32-71.29.1.el6.src.rpm | cpio -idvm
tar xvf linux-2.6.32-71.29.1.el6.tar.bz2
cd linux-2.6.32-71.29.1.el6/drivers/usb/core
cp hcd.h hub.h <module_sources>/include/2.6.32
Para conectar una unidad de disco duro USB 3.0 a Linux, necesitará:
echo options usb-storage quirks=idVendor:idProduct:u | sudo tee /etc/modprobe.d/blacklist_uas.conf
echo options usb-storage quirks=0x174c:0×5106:u,0x0bc2:0×2322:u | sudo tee /etc/modprobe.d/blacklist_uas.conf
sudo update-initramfs -u
En Ubuntu 14.04 LTS (Trusty Tahr), es posible que USB Network Gate no pueda determinar el usuario en la sesión X11. Debido a esto, no es posible agregar el usuario actual al grupo eveusb al instalar USB Network Gate a través del Centro de software.
Aquí están las instrucciones sobre cómo agregar el usuario actual al grupo eveusb:
- Terminal de Linux:
sudo usermod -a -G eveusb $USERNAME
su $USERNAME
Como resultado, puede iniciar la GUI desde el terminal actual.
Para aplicar los cambios a la sesión Х11, deberá cerrar la sesión y luego volver a iniciarla.
- Herramientas del sistema GNOME:
Nota: Es posible que deba instalar adicionalmente el GST.
- Configuración del sistema (KDE):
Para los sistemas integrados basados en Linux, puede ser útil saber cómo obtener la lista de dispositivos USB, si la GUI no está disponible. Se puede hacer no solo con la ayuda de nuestra utilidad de línea de comandos, sino también con las funciones integradas del sistema.
Ejecute el siguiente comando en la terminal:
for device in $(ls /sys/bus/usb/devices/*/product); do echo $device;cat $device;done
La salida se verá de la siguiente manera:
/sys/bus/usb/devices/2-5.1/product
USB-PS/2 Optical Mouse
/sys/bus/usb/devices/usb1/product
EHCI Host Controller
La primera línea contiene la dirección del dispositivo (el puerto del concentrador). Para el mouse en el ejemplo, es 2-5.1.
La segunda línea representa el nombre del dispositivo USB.
Para compartir un dispositivo USB (un mouse USB en este ejemplo), se debe ejecutar el siguiente comando en la utilidad de la consola:
eveusbc share 1045 2-5.1