Generalidades
Este artículo explica cómo resolver errores de memoria en un Servidor Dedicado editando un archivo de configuración con tu usuario administrador.
Requisitos Previos
Los comandos en este artículo requieren que crees un usuario administrador en tu Servidor Dedicado.
El error
Los usuarios de servidores Dedicados que intentan ejecutar un binario compartido o intérprete (como Python pip) pueden ver un error de memoria similar al siguiente:
MemoryError: Cannot allocate write+execute memory for ffi.callback().
You might be running on a system that prevents this.
For more information, see https://cffi.readthedocs.io/en/latest/using.html#callbacks
Esto se debe a que grsec bloquea la ejecución no privilegiada y la asignación de memoria que el binario o el intérprete necesitan para funcionar.
Corregir el error
DreamHost ha agregado un script al siguiente directorio en tu Servidor Dedicado:
/root/shared-interpreters-pax.sh
Este archivo puede ser modificado y ejecutado como un usuario administrador para ajustar la asignación de memoria.
- Inicia sesión en tu servidor usando tu usuario administrador.
-
Edita el siguiente archivo usando sudo.
[server]$ sudo nano /root/shared-interpreters-pax.sh
-
Aparece la siguiente lista en el archivo:
list=( java javac pip pip3 python python3 )
-
Aparece la siguiente lista en el archivo:
- Agrega el binario o intérprete que estás usando a esta lista.
- Ejecuta el archivo:
[server]$ ./root/shared-interpreters-pax.sh
- Corre nuevamente el comando original.
- Los errores de memoria se resolverán.