Pregunta ¿Cómo configurar umask predeterminado para el servlet de Tomcat webdav?


El título lo dice todo. Necesito el servlet webdav de Tomcat para crear archivos con derechos rw-rw-r--, pero lo sigue creando como rw-r - r--. Intenté configurar umask en / etc / profile, pero no me ayudó (aunque los archivos creados manualmente tienen la configuración de permisos deseada). De acuerdo con / etc / passwd, el usuario que ejecuta Tomcat tiene / etc / false como shell y no tiene bashrc en su directorio de inicio. El sistema operativo es Debian.


6
2018-06-20 13:06


origen




Respuestas:


Si bien esto es completamente un hack, abra tomcat / bin / startup.sh y establezca 'umask 0002' en él. También puede hacer esto en catalina.sh, se le ocurre la idea, incluso puede encontrar dónde java se lanza en catalina.sh (busque "catalina.out") y colocarlo directamente sobre ese bloque lógico para garantizar que sea efectivo cuando java Se suelta en su pobre CPU.


4
2018-06-20 13:43



Me he dado cuenta de que umask está realmente configurado en el script init.d (por eso no fue de ayuda configurarlo en / etc / profile). Así que simplemente cambié esa línea en el script /etc/init.d/tomcat6 y funcionó. - calavera.info
Sí, el problema es que no hay un estándar para la puesta en marcha de Tomcat / JBoss SysV; Me alegro de que se enteró de su situación e hizo lo correcto. - troyengel


Utilizo scripts personalizados para iniciar y detener Tomcat, desde donde configuro las variables antes de llamar a los scripts estándar.

Algo como esto:


#! / bin / sh

CATALINA_HOME = / usr / local / tomcat

CATALINA_BASE = / web / tomcat / catalina-base / myapp

JAVA_HOME = / usr / local / java

LD_LIBRARY_PATH = $ LD_LIBRARY_PATH: $ CATALINA_BASE / lib

JAVA_OPTS = "- Xms1024m -Xmx1024m"

UMASK = 0002

exportar JAVA_HOME CATALINA_HOME CATALINA_BASE JAVA_OPTS LD_LIBRARY_PATH UMASK

$ CATALINA_HOME / bin / startup.sh &

salir $?

.................

La variable UMASK hace el trabajo que está buscando.

Espero que esto ayude


0
2017-09-27 09:26





Puedes crear un archivo de entorno para tomcat:

En /usr/shared/tomcat8/bindonde 8 es su versión tomcat apropiada, cree el archivo setenv.sh que contiene:

#!/bin/bash umask 0002


0
2018-05-07 06:12