En efecto en un ordenador con sistema operativo Linux en cualquier de sus variantes como Ubuntu, Lubuntu ,Fedora, etc. puede que copiando archivos grandes hacia una unidad extraible USB termine dando error con el típico mensaje "Error splicing file:file too large ".
Afortunadamente entender el motivo del error es sencillo ,pues generalmente el problema se debe a que el disco de destino (es decir en la unidad extraible en el que desea copiar el archivo) está formateado con el sistema de fichero FAT32 , el cual tiene un límite de tamaño de archivo de aproximadamente 4GB, por lo que efectivamente Linux cuando intenta copiar sobre una unidad destino formateada en fat32 el so. empieza copiando hasta que llega aproximadamente a los 4GB , momento en el cual no puede continuar, pues el sistema de ficheros no lo permite, terminando dando error y abortándose la copia.
Curiosamente según el tipo de fichero que sea ,es posible que incluso abortando la copia con el mensaje Error splicing file:file too large , en caso de copias de ficheros de vídeo ( por ejemplo en formato mkv) , a pesar de esto, incluso con el error puedan ser reproducibles parcialmente ( es decir, sin poder reproducirse hasta su totalidad).
Afortunadamente para resolver este problema, la solución es bien sencilla pues bastara en volver a formatear su disco de destino a EXT3, EXT4 o NTFS.
Mientras que FAT, FAT32 y exFAT se utilizan en memorias USB y tarjetas SD , NTFS es utilizado sobre todo por discos duros, lo cual no significa que ntfs no deba usarse también en unidades extraibles USB: todo lo contrario ,pues por las razones que vamos a ver , ntfs tambien deberia ser la mejor opción para unidades extraibles usb.
NTFS (New Technology File System) es el sistema de archivos que Windows utiliza por defecto, (de hecho windows sólo puede ser instalado en una unidad con este sistema),Su adaptación no es casual pues , ntfs conlleva múltiples ventajas:
- Como hemos comentado su límite de tamaño de archivos es de 16 TB, ( los volúmenes pueden llegar a tener 264 TB cada uno)
- Se pueden configurar los permisos de acceso a un archivo (vital para un sistema operativo).
- Permite cifrar archivos.
- Permite nombres de archivos largos.
- Se recupera más fácilmente de errores si el ordenador se cuelga
Vemos pues para soslayar el problema "Error splicing file:file too large " y la unidad destino esta formateada en otro formato , tendremos que formatear en NTFS pues así no habrá problemas a la hora de copiar estos ficheros.
FORMATEO DESDE WINDOWS
En realidad formatear en NTFS un unidad USB con Windows 10 es muy fácil:
- Pinche con el botón DERECHO del ratón en el menú de Windows y elige Explorador de archivos.
- En la ventana que se abre haga clic a la izquierda en Este equipo.
- A la derecha verá las unidades de disco duro, particiones, discos o pendrives USB o CD/DVD que tenga tu PC. Seleccione la unidad que quiere formatear pinchando en ella con el botón izquierdo. Luego haz clic encima con el botón DERECHO y elige . (!IMPORTANTE !: -Es obvio que debe elegir con mucho cuidado la unidad pues formatearla borrará por completo todo lo que haya en ella.
- Al elegir la opción de formateo se abre su ventana de propiedades.Defina así las opciones siguientes que incluye:
- Sistema de archivos:Pincha en la lista desplegable de abajo y elija NTFS.
- Tamaño de unidad de asignación. Lo normal es que deba mantener el tamaño que te indique por defecto la ventana de formateo.
- Etiqueta del volumen :Escriba un nombre que describa lo que hay o habrá en ese disco o USB. No es una opción obligatoria pero sí recomendable.
- Opciones de formato:Desactive la casilla de Formato rápido haciendo clic en ella. Así obligara a que Windows chequee el disco o USB e intente reparar de forma automática posibles errores que tenga por lo que puede ahorrarle problemas futuros o hasta pérdidas de datos. Por cierto mantener el formato rápido acelera el proceso pero se salta la comprobación del disco o USB.
- Finalmente pulse cuando acabes de configurar esas opciones. Confirme con el aviso de que se borrará todo lo que haya en esa unidad.
- El formateo tardara más o menos dependiendo del tamaño de la unidad seleccionada, la velocidad de su PC y si ha elegido o no la opción rápida. Acepte y cierra la ventana cuando termine.
FORMATEO DESDE LINUX
Ahora veremos como soslayar el problema " Error splicing file:file too large " y la unidad destino esta formateada en otro formato , formateando en NTFS desde el propio Linux para que no haya problemas a la hora de copiar ficheros de mas de 4GB
Lo primero que tenemos que tener claro a la hora de formatear una unidad es la ruta en la que se encuentra en el sistema.
Para ver que dispositivo es el que vamos a usar escribimos en Terminal (Abrir Terminal presionando Ctrl + Alt + T) :
Para eso, solo tendremos que escribir en el Terminal el comando:
df
Este comando nos mostrará todos las particiones y discos que tiene actualmente el ordenador conectados al sistema. Como podremos observar, los sistemas basados en Ubuntu 16.04 asignan cómo nombre de partición de la siguiente forma sdaX donde la X es un número de partición, por lo que si tenemos una unidad USB conectado , el nombre será muy similar a sdaX ( por e ejemplo sdb3).
Una vez hayamos encontrado la memoria USB desde el terminal, tenemos que desmontarlo del sistema para que podamos formatearlo. Para realizar esta tarea tendremos que ejecutar el siguiente comando:
sudo umount /dev/sdb3
Ahora ya lo tenemos preparado para formatear. Por lo que tendremos que escribir la siguiente línea de código en el terminal.
sudo mkfs.vfat -F 32 -n "Nombre_pendrive" /dev/sdb3
Quizá no entiendas nada de lo que hemos puesto en esa parte de código, pero aquí estamos para resolver estas dudas:
-
mkfs.vfat: Es el programa de ejecución de la herramienta del terminal para formatear unidades del sistema.
-
-F 32: Esto le indica al sistema que el formato ha de realizarse con el sistema de archivos de Fat32.
-
-n "Nombre_pendrive": Este será el nombre que aparecerá cada vez que conectemos el USB al ordenador.
-
/dev/sdb3: Esta tiene que ser la ruta completa donde se sitúa la memoria USB que queremos formatear.
Es posible formatear en diferentes formatos:
- Formatear USB con Extended File System (Ext) :Este es el sistema de archivos preferido por Linux.
<pre ">
sudo mkfs.ext4 /dev/sdb3
- Formatear USB con FAT (File Allocation Table)
sudo mkfs.vfat /dev/sdb3
- Formato de formato USB con NTFS (Sistema de archivos de nueva tecnología)
Por ultimo, salimos de Terminal con:
exitEsta es la salida de la ejecución de estos comandos:
[email protected]:~$ df
Filesystem 1K-blocks Used Available Use% Mounted on
udev 214372 0 214372 0% /dev
tmpfs 47028 2948 44080 7% /run
/dev/sda1 38192692 11567744 24655132 32% /
tmpfs 235132 0 235132 0% /dev/shm
tmpfs 5120 4 5116 1% /run/lock
tmpfs 235132 0 235132 0% /sys/fs/cgroup
tmpfs 47024 12 47012 1% /run/user/1000
/dev/sdb1 15108880 41156 15067724 1% /media/carlos/KINGSTON16G
[email protected]:~$ sudo umount /dev/sdb1
[sudo] password for carlos:
[email protected]:~$ sudo mkfs.ntfs /dev/sdb1
Cluster size has been automatically set to 4096 bytes.
Initializing device with zeroes: 41%100% - Done.
Creating NTFS volume structures.
mkntfs completed successfully. Have a nice day.
[email protected]:~$
No esta de mas recordar que debe cambiar la identificación del dispositivo USB en los comandos anteriores o desde el interfaz grafico ,En el ejemplo en un viejo portatil hp con Lubuntu se ha usado sdb3 , pero no necesariamente sera el mismo identificador que tengan sus unidades.
Como puedes observar, es un proceso muy sencillo pero tiene las complicaciones de saber que es lo que hace cada cosa y cual es la dirección correcta que queremos formatear, ya que si nos equivocamos puede ser fatal para nuestro sistema operativo.