GNU/Linux >> Tutoriales Linux >  >> Linux

Supere el límite de 2 GB creando archivos PDF con ImageMagick

Su limitación no se deriva de hecho del sistema de archivos; o de las versiones del paquete creo .

Su límite de 2 GB proviene de usted usando una versión de 32 bits de su sistema operativo.

La opción para aumentar el archivo sería instalar una versión de 64 bits si el hardware lo admite .

Consulte Compatibilidad con archivos grandes

Tradicionalmente, muchos sistemas operativos y sus implementaciones de sistemas de archivos subyacentes usaban números enteros de 32 bits para representar tamaños y posiciones de archivos. En consecuencia, ningún archivo podría tener más de 2 − 1 bytes (4 GB − 1). En muchas implementaciones, el problema se agravó al tratar los tamaños como números con signo, lo que redujo aún más el límite a 2 − 1 bytes (2 GB − 1).


Intenta limitar el caché de píxeles utilizado por convert a por ej. 1 GiB:

convert 0001.miff ... 2000.miff -limit memory 1GiB -limit map 1GiB -compress jpeg -quality 80 out.pdf

Con suerte, esto obligará a ImageMagic a volcar regularmente los datos ya procesados ​​en el disco en lugar de intentar colocar más de 2 GiB en los búferes de RAM.

Por cierto, la cantidad de memoria virtual disponible para un solo proceso en Linux de 32 bits está definida por el VMSPLIT ajuste de configuración del núcleo. Puede ser 2G/2G (2 GB para kernel + 2 GB para userland) o 1G/3G (1 GB para kernel + 3 GB para userland). En un sistema en ejecución, la configuración se puede encontrar a través de

zcat /proc/config.gz | grep VMSPLIT

En algunos sistemas, la configuración del kernel se almacena en /boot/config-$(uname -r) en su lugar.


Linux
  1. Reflexiones sobre la supervisión de cambios de archivos con Linux a través de la red

  2. Obtenga el tiempo de creación de archivos con Python en Linux

  3. ¿Cómo obtener solo el nombre del archivo con Linux 'buscar'?

  4. Iterar sobre una lista de archivos con espacios

  5. ¿Cuál es el concepto de crear un archivo con cero bytes en Linux?

Comience con GNUPlot

Comando WC de Linux con ejemplos

Firmas digitales con GnuPG

¿Reemplazar nueva línea con Nul?

¿Cómo obtener el enlace del archivo para descargar con Wget?

¿Cómo obtener el tamaño de archivo/carpeta con SSH en Linux?