Estoy usando Ubuntu 17.10.
Formateé un pen-drive USB a NTFS para preparar un instalador USB de Windows7.
Establecí el indicador de arranque en este pen-drive y copié los archivos en él.
EDICIÓN 1:udev monta automáticamente la memoria USB.
umount /dev/sdb1 tarda de 10 a 12 minutos en completarse.
Estas son las opciones de montaje:
$ mount | grep sdb
/dev/sdb1 on /media/mansfeld/Win7_USB_Installer type fuseblk (rw,nosuid,nodev,relatime,user_id=0,group_id=0,default_permissions,allow_other,blksize=4096,uhelper=udisks2)
EDICIÓN 2:El cp la operación no es INSTANTÁNEA en absoluto, tomó 3 minutos copiar los archivos a la memoria USB.
EDIT 3:La sync operación (realizada justo después del cp ) tardó 12 minutos en completarse ! Pero entonces el umount será instantáneo.
Para FAT32 (con la sincronización también deshabilitada durante el montaje), noto el mismo comportamiento.
¿Alguna idea de por qué se tarda tanto en desmontar el pendrive USB NTFS?
Respuesta aceptada:
Probablemente sufre de buffering almacenamiento en caché . Para acelerar la escritura en memorias USB (y discos duros en general), Linux usa un caché de sistema de archivos:
Cuando (crees que) escribes algo en el dispositivo, primero se escribe en el caché (en RAM) y el cp El comando (por ejemplo) regresa inmediatamente simulando una operación de escritura realmente rápida. Mientras hace otras cosas, el contenido del caché se escribe en el dispositivo en segundo plano. Puede notar que un LED en el dispositivo aún parpadea mostrando operaciones de escritura (depende de su dispositivo), aunque no sucede nada aparente.
Cuando emites umount poco después de una operación de escritura, entonces umount espera hasta que todo el contenido del caché del sistema de archivos se escriba en el dispositivo para asegurarse de que no se pierdan datos.
Con sync puede forzar manualmente el vaciado del caché y escribir los datos en el dispositivo. Sin embargo, esto no acelerará el tiempo total transcurrido porque tendrás que esperar a que sync para completar (en lugar de esperar a umount ). Pero el umount luego regresará instantáneamente porque el caché ya está vaciado.
En resumen, tiene tres opciones después de copiar archivos grandes o muchos en el dispositivo:
umounty espera 10 minutos para que se completesync, espere 10 minutos para completar, seguido deumount(regresará casi inmediatamente)- simplemente espere 10 minutos (quizás un poco más) y no haga nada (o algo que no esté relacionado con el palo) y luego problema
umount. Debido a que el caché se escribe en segundo plano automáticamente,umountluego regresará casi inmediatamente también.