no se puede ejecutar java dentro de grsec chroot

no se puede ejecutar java dentro de grsec chroot

Java se ejecuta bien dentro de chroot común.

sin embargo, en un chroot reforzado con grsec se queja de que no tiene suficiente memoria para construir la VM.

¿Alguna idea de cómo hacerlo funcionar porque realmente necesito un chroot reforzado?

gracias.

Respuesta1

Generalmente Java funciona bien con grsec.

Sin embargo, hay una opción en grsec que arruina las cosas para Java.

Parece que tienes esa opción habilitada en tu kernel.

Compruébalo en:

[*] Grsecurity 
  Customize Configuration  --->
    PaX  --->
      Miscellaneous hardening features  ---> 
        [ ] Sanitize all freed memory

Asegúrese de que Sanitize all freed memoryla opción esté deshabilitada, vuelva a compilar el kernel (en mi opinión, no se puede administrar a través de sysctl) y vuelva a intentarlo.

Respuesta2

Debe proporcionar más detalles: texto exacto del mensaje de error, qué JVM está utilizando, etc.

Tuve un problema similar al ejecutar Java en Gentoo Hardened de 32 bits (también grsec, pero sin chroot):https://bugs.gentoo.org/show_bug.cgi?id=344135

Puede intentar solucionar este problema cambiando su jvm.cfg para usar "cliente" en lugar de "servidor", por ejemplo:

[jvm.cfg.patch]
--client IF_SERVER_CLASS -server
--server KNOWN
+-client KNOWN

También puede intentar ejecutar Java con las opciones -client y/o -Xmx256m.

información relacionada