Como definir umask padrão para o servlet webdav do Tomcat?

6

O título diz tudo. Eu preciso do servlet webdav do Tomcat para criar arquivos com direitos rw-rw-r--, mas ele continua criando como rw-r - r--. Eu tentei configurar umask em / etc / profile, mas não ajudou (embora manualmente criado novos arquivos tem configurações de permissão desejado). De acordo com o / etc / passwd, o usuário que executa o Tomcat possui o / etc / false como shell e não possui nenhum bashrc em seu diretório inicial. O sistema operacional do host é o Debian.

    
por calavera.info 20.06.2010 / 15:06

3 respostas

4

Embora isso seja completamente um hack, abra o arquivo tomcat / bin / startup.sh e defina 'umask 0002' nele. Você também pode fazer isso em catalina.sh, você tem a idéia - você pode até encontrar onde o java lança em catalina.sh (procure por "catalina.out") e colocá-lo diretamente acima desse bloco lógico para garantir que ele seja efetivo quando java é solto na sua CPU fraca.

    
por 20.06.2010 / 15:43
0

Eu uso scripts personalizados para iniciar e interromper o tomcat, a partir dos quais eu defino variáveis antes de chamar os scripts padrão.

Algo parecido com isto:

#! / 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 &

sair de $?

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

A variável UMASK faz o trabalho que você está procurando.

Espero que isso ajude

    
por 27.09.2017 / 11:26
0

Você pode criar um arquivo de ambiente para o tomcat:

Em /usr/shared/tomcat8/bin , em que 8 é a versão apropriada do seu tomcat, crie o arquivo setenv.sh contendo:

#!/bin/bash umask 0002

    
por 07.05.2018 / 08:12