¿Por qué la transferencia de archivos usb es tan lenta en 12.10?

12

Obtuve los habituales 4-8mbps en 12.04 al copiar archivos a través de memorias USB. Sin embargo, después de actualizar a 12.10, solo obtengo 200-300 kbps cuando intento realizar la misma operación.

He probado diferentes dispositivos USB (que funcionan perfectamente en Windows 7) y sigo teniendo el mismo problema. Experimenté el mismo problema hace algún tiempo en 11.10, pero todo fue normal cuando actualicé a 12.04, por lo que podría ser un problema del núcleo.

Aquí está la salida de dmseg |tail:

    mysterio@mysterio-HP-Pavilion-dv6700-Notebook-PC:~$ dmesg |tail 

[  871.023093] sdb: sdb1 
[  871.026909] sd 5:0:0:0: [sdb] No Caching mode page present 
[  871.026920] sd 5:0:0:0: [sdb] Assuming drive cache: write through 
[  871.026927] sd 5:0:0:0: [sdb] Attached SCSI removable disk 
[ 1036.226206] ISO 9660 Extensions: Microsoft Joliet Level 3 
[ 1036.233561] ISO 9660 Extensions: RRIP_1991A 
[ 1086.342973] ISO 9660 Extensions: Microsoft Joliet Level 3 
[ 1086.343010] ISO 9660 Extensions: RRIP_1991A 
[ 1173.971357] ISO 9660 Extensions: Microsoft Joliet Level 3 
[ 1173.971441] ISO 9660 Extensions: RRIP_1991A

He actualizado mi sistema con las últimas actualizaciones. ¿Qué podría estar mal?

Mysterio
fuente
1
Puede haber muchas razones. Ejecute "dmesg | tail" en un terminal después de enchufar la unidad USB y publicar la salida. Eso debería dar pistas si hay problemas con los controladores. Además, díganos qué sistema de archivos hay en su pen drive (podría ser, por ejemplo, que la memoria reservada para el diario de un sistema de archivos de diario se esté agotando lentamente y, por lo tanto, el rendimiento disminuya).
soulsource
¿Cómo se formatea la memoria USB?
Mitch

Respuestas:

22

Me temo que su problema no tiene solución. Las velocidades de transferencia lenta de USB son un fantasma en la historia de Ubuntu, que viene y desaparece de vez en cuando. Ocurre porque los desarrolladores en la mayoría de los casos no pueden reproducir este problema y no se lanzará ninguna solución.

Puede ver un fenómeno de discusiones sobre las tasas de transferencia de USB que son lentas en Ubuntu (y sus "primos"). Por ejemplo, puede ver este hilo , esta discusión y este otro hilo .

Algunos dicen que habilitar o deshabilitar el soporte USB heredado en el BIOS resuelve el problema, aunque parece que son casos raros específicos.

Hay un error reportado en LaunchPad que presenta una solución para el problema, pero como está algo desactualizado, no puedo evaluar su efectividad hoy en día. La solución alternativa es presentada por Jean Pierre en el Bug # 66115, él habla sobre la solución en este comentario y después en este comentario más detallado .

Una discusión candente es sobre el modo de sincronización que se habilita cuando Nautilus monta un dispositivo, aunque más allá de Konqueror (equivalente de KDE a Nautilus) no he encontrado a nadie que tenga la opción de sincronización deshabilitada para Nautilus.

Algunas soluciones alternativas de dudosa efectividad se analizan en esta pregunta del Superusuario .

Si no tuvo suerte hasta aquí, le diré que actualmente no existe una solución para el problema.

Actualmente hay un error reportado en LaunchPad y puede marcarlo como un problema que lo afecta. Si su hardware difiere del que se informa del error, puede agregar un comentario que informe sobre su hardware afectado.

Rodrigo Martins
fuente
1
Temí tanto. De todos modos, desde el 13.04 faltan solo un par de días, la nueva versión del kernel debería resolverlo con suerte
Mysterio
3
Solo para recordar que ya hay un informe de error bugs.launchpad.net/ubuntu/+source/linux/+bug/500069
desgua
@desgua Gracias por el enlace, aunque todavía enfatizo la necesidad de un informe de error porque el problema en el Error # 500069 es diferente del problema de Mysterio, su problema es la velocidad de transferencia lenta, no el sistema se congela al transferir datos, y en el caso de USB relacionado En la mayoría de los casos, los problemas que se aplican a un hardware pueden no funcionar en otro, por lo que es mejor crear un nuevo informe de error.
Rodrigo Martins
2
@RodrigoMartins Se supone que las "congelaciones" en el título deben ser divertidas y llamar la atención. El título del agujero es: "La transferencia de archivos USB hace que el sistema se congele; las operaciones tardan horas en lugar de minutos"
desgua
1
@desgua Lo siento, mi idioma nativo no es el inglés y, a veces, no entiendo los chistes jaja
Rodrigo Martins
7

A pesar del pesimismo de la respuesta exhaustiva de Rodrigo, sospecho que la mayoría de estos casos se deben simplemente al comportamiento predeterminado de usbmount o controladores de conexión en caliente equivalentes para forzar la escritura en el disco en lugar del almacenamiento en caché. Debe verificar si syncestá habilitado para el dispositivo, por ejemplo, buscando la línea correspondiente desde cat /proc/mounts. Puede parecerse a algo como:

/dev/sdb1 /media/usb0 fuseblk,sync,rw,nosuid,nodev,noexec,noatime,user_id=0,group_id=0,allow_other,blksize=4096 0 0

Tenga en cuenta la syncbandera. Debe evitar que esto se establezca. Si monta manualmente, debe cambiar la entrada fstab como en esta respuesta . Si está montado automáticamente, eche un vistazo a la salida tail /var/log/syslogjusto después de enchufarlo y busque una línea como:

Jul 21 19:28:51 my-machine usbmount[3823]: executing command: mount -tntfs -sync,onoexec,nodev,noatime,nodiratime /dev/sdb1 /media/usb0

Si lo está montando usbmount, puede seguir mi consejo en otra respuesta y cambiar la MOUNTOPTIONSlínea /etc/usbmount/usbmount.confde:

MOUNTOPTIONS="sync,noexec,nodev,noatime,nodiratime"

a

MOUNTOPTIONS="noexec,nodev,noatime,nodiratime"
beldaz
fuente
1
Al cambiar mis opciones de movimiento para eliminar la sincronización, simplemente moví la copia de mi archivo de 4+ horas a ~ 4 + minutos. Me alegro de haberlo intentado !! Esto es para transferir un archivo de 3.3GB a una memoria USB de 4GB usando USB1.1 [podría ser USB2 pero estoy bastante seguro de que es 1.1].
pbhj
1

Bueno, hay varias razones por las cuales la transferencia USB es lenta:

  1. Tamaño de los archivos que se copian. (cuanto más pequeño es el archivo, más lento se vuelve)
  2. La velocidad de la memoria USB.
  3. La forma en que se formatea la memoria USB (NTFS, Fat32 o EXT4)

Entonces, si el palo está formateado como NTFS, sigue leyendo.

NTFS en Linux funciona un poco diferente a la mayoría de los otros controladores de sistema de archivos, por lo que los datos que se escriben en un sistema de archivos NTFS realmente pasan por la CPU. Para la mayoría de los sistemas de archivos, la CPU no trata directamente con los datos a escribir.

Es por eso que escribir en un dispositivo con formato NTFS en Linux es lento, que escribir en NTFS en Windows. Por lo tanto, puede formatear su memoria USB como Ext4 (solo Linux) o fat32 funciona en ambos sentidos, pero tiene una limitación de tamaño de archivo de 4 GiB.

Mitch
fuente
Tengo una lentitud / congelación similar (incluso el mouse deja de funcionar), ahora he intentado Ext4 y todavía tengo ese problema (ubuntu 14).
bartosz.r
1

Edité el /etc/usbmount/usbmount.conf en el servidor Ubuntu 15.10, eliminé la palabra "sincronización" de esta línea:

MOUNTOPTIONS="sync,noexec,nodev,noatime,nodiratime"

como se mencionó anteriormente por Rodrigo Martins (big thx!).

Aumentó la velocidad de escritura para un HDD conectado de 480 mbps de 2 Mbytes / seg a 20 Mbytes / seg constantes, y es constante y real, no "en caché", no velocidad virtual. Esta unidad escribe alrededor de 30 Mbytes / seg en una máquina con Windows.

eSzeL
fuente
0

No sé si esto ayudará a alguien más, pero es lo que funcionó para mí cuando tuve problemas con velocidades de transferencia realmente lentas usando Ubuntu 13.04 (velocidades de 1mb / so menos). De todos modos, reinicié mi computadora con mi disco duro USB conectado al puerto USB justo antes de que Ubuntu se iniciara, ejecutó un script en la pantalla negra justo antes de cargarse y después de eso, mis velocidades de transferencia han sido realmente buenas en los 24mb / s de gama baja.

Qedeshim
fuente