Meu problema é que, quando iniciado com o Daemontools, os arquivos criados pelo OpenOffice (que é executado no modo de servidor) são de propriedade do root (e no grupo raiz). Quando eu inicio o script 'run' do Daemontools manualmente, o OpenOffice cria corretamente o arquivo com as permissões que eu quero (ou seja, o grupo 'oinstall' neste caso).
Eu tenho um usuário unix chamado 'oracle' que é membro de um grupo 'oinstall'. O usuário oracle pode iniciar / parar o servidor OpenOffice, que é controlado por um serviço Daemontools. As permissões no serviço são assim:
[oracle@try1 pdf]$ ls -l /service/
drwxrwsr-x 3 root oinstall 4096 Dec 3 2012 OpenOfficePROD
[oracle@try1 pdf]$ ls -l /service/OpenOfficePROD/
-r--rws--- 1 root oinstall 175 Dec 3 2012 run
drwxrws--- 2 root oinstall 4096 Sep 2 15:31 supervise
[oracle@try1 pdf]$ ls -l /service/OpenOfficePROD/supervise/
prw-rws--- 1 root oinstall 0 Sep 2 15:31 control
-rw-rws--- 1 root oinstall 0 Sep 4 2012 lock
prw-rws--- 1 root oinstall 0 Sep 4 2012 ok
-rw-r--r-- 1 root oinstall 18 Sep 2 15:31 status
Quando inicio manualmente o servidor do OpenOffice, executando o script 'run' como o usuário do oracle, recebo arquivos gerados com as permissões desejadas, por exemplo,
-rw-r----- 1 oracle oinstall 20956 Sep 2 15:48 myfile.pdf
Mas quando eu uso daemontools para iniciar o servidor do OpenOffice (mesmo como o usuário do Oracle), os arquivos são criados assim:
-rw-r----- 1 root root 20956 Sep 2 15:28 myfile.pdf
Aqui está o meu script de execução:
#!/bin/sh
exec 2>&1
export HOME=/home/oracle
exec /usr/bin/soffice -invisible -nologo -headless -nofirststartwizard -accept="socket,port=8099;urp;StarOffice.ServiceManager"