Tengo un iPod Touch con jailbreak y tengo el paquete afc2add. Cuando lo conecto a mi computadora portátil ubuntu, monta automáticamente el directorio de medios de mi iPod, así como también las carpetas para compartir archivos de la aplicación. Cuando uso Nautilus para transferir un archivo a la carpeta Media, alcanza un máximo de aproximadamente 5 MB / s. Sin embargo, cuando uso un terminal para copiar un archivo a la ~/.gvfs/Matt's iPod
carpeta [En Nautilus, aparece como "Matt's iPod"], solo lo he visto subir a unos 2 MB / s.
¿Alguien puede dar alguna pista de por qué es más lento que copiar un archivo en lugar de usar la copia de la GUI de Nautilus?
Por cierto, puedo decir qué tan rápido va con una copia de terminal, tengo un script con pv [En pocas palabras, es: pv $1 > $2
], y eso estaba yendo alrededor de 1.5MB / s. Así que también probé cp, y configuré un bucle en du
el archivo cada segundo, y saltó en algún lugar cerca de 2 MB por segundo.
Respuestas:
Nautilus atravesaría menos capas de indirección, lo que podría explicar la diferencia.
Nautilus es una aplicación nativa de gvfs, por lo que se comunica directamente con los backends de gvfs.
Por el contrario,
cp
está hablando con el núcleo a través de un sistema de archivos FUSE montado en~/.gvfs
, que es manejado por elgvfs-fuse-daemon
proceso, que a su vez habla con los backends de gvfs. Las discrepancias de impedancia entre la API POSIX y gvfs podrían explicar las transferencias menos eficientes.Es posible que pueda obtener un rendimiento similar en la línea de comandos utilizando el
gvfs-copy
comando delgvfs-bin
paquete, copiando a la URL apropiada.fuente