Newsgroup: it.comp.os.linux.sys
Titolo: Problemi con OpenOffice via Crontab

Ciao a tutti!
Sto impazzendo per riuscire a lanciare OpenOffice via crontab...
Nel cron dell'utente scrivo:
0 1 * * 1-5 /opt/openoffice.org3/program/scalc -headless -norestore
/opt/reporting/Reporting/doReports.ods
"macro://doReports/report.Main.createAllReportsFromScriptAndThenCloseAll()"
Che e' lo stesso che scrivo se provo, con quell'utente e SENZA
X-Forward!!, a lanciare il programma che, pero', se lanciato a manina
funziona come un orologio svizzero.
Se lanciato via Cron, invece, non fa proprio niente, e vedo che che c'e'
un processo [soffice.bin] catalogato come "<defunct>".
Qualcuno ha un'idea del perche' 'sto ง"$%&ง" di OpenOffice non vuole
lasciarsi lanciare da cron?
Grazie mille!
Luca Bertoncello
(
luca...@lucabert.de
)
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 lasciarsi lanciare da cron?
0 1 * * 1-5 DISPLAY=:0 /opt/openoffice.org3/program/scalc ...
-- 
A: Because we read from top to bottom, left to right.
Q: Why should i start my reply below the quoted text?

 0 1 * * 1-5 DISPLAY=:0 /opt/openoffice.org3/program/scalc ...
Tutto bene, ma NON c'e' nessun X sulla macchina...
In ogni caso, ho anche provato a scrivere DISPLAY=<ip del mio PC>:0, ma
niente da fare...
Si inchioda sempre senza dare nessun errore...
Non so proprio piu' cosa fare...
Ciao


 Tutto bene, ma NON c'e' nessun X sulla macchina...
Non ne sarei così sicuro.
E se non c'è, è quello il problema. Usa xfb
ctrix@inxs-II:~$ /usr/lib/openoffice/program/scalc -headless -norestore
javaldx: Could not find a Java Runtime Environment!
/usr/lib/openoffice/program/soffice.bin X11 error: Can't open display:
   Set DISPLAY environment variable, use -display option
   or check permissions of your X-Server
   (See "man X" resp. "man xhost" for details)


 E se non c'č, č quello il problema. Usa xfb
E ci sto provando... Ma non ne vuole sapere...
oooreports@woodstock:~$ /usr/bin/xvfb-run -n 99
/opt/openoffice.org3/program/scalc -norestore
/opt/reporting/Reporting/doReports.ods
"macro://doReports/report.Main.createAllReportsFromScriptAndThenCloseAll()"
-display :99
/opt/openoffice.org3/program/soffice.bin X11 error: Can't open display: :99
   Set DISPLAY environment variable, use -display option
   or check permissions of your X-Server
   (See "man X" resp. "man xhost" for details)
/usr/bin/xvfb-run: line 158: kill: (29888) - Kein passender Prozess
gefunden
Cosa sto sbagliando adesso?
Grazie


 E ci sto provando... Ma non ne vuole sapere...
OK! Adesso sono riuscito, DA RIGA DI COMANDO, a lanciare OpenOffice usando
xvfb...
/usr/bin/xvfb-run -a /opt/openoffice.org3/program/scalc -norestore
/opt/reporting/Reporting/doReports.ods
"macro://doReports/report.Main.createAllReportsFromScriptAndThenCloseAll()"
Se pero' metto il tutto in cron, ci sono gli stessi problemi di prima...
Sto cominciando a pensare che il problema NON sia X, ma qualcos'altro...
Solo che non saprei cos'e' questo "qualcos'altro"...
Idee?


 Cosa sto sbagliando adesso?
La sintassi (ovvero, tutto)...
# nohup /usr/X11R6/bin/Xvfb :25 -screen scrn 800x600x16 &
# /usr/bin/soffice -invisible -norestore -headless -display :25  ....
(su google è pieno di esempi)


 Idee?
Io XFB lo lascio sempre acceso.
perchè dovresti lanciarlo ogni volta ?
(aggiungo: anche openoffice lo lascio sempre acceso. Lo comando via socket
con Uno (python o perl))
Max


 # /usr/bin/soffice -invisible -norestore -headless -display :25  ....
Allora, come ho detto prima, sono riuscito a lanciare OpenOffice con
xvfb-run, ma SOLO se sono loggato.
Via Cron continua a non funzionare e semplicemente a PIANTARSI senza dire
niente...
Che faccio? Apro la finestra e salto?
Ciao


 Cosa sto sbagliando adesso?
prova cosě:
Xvfb :2 -screen 0 1024x768x24 -fbdir /tmp -nolisten inet6 &  
sleep 10#forse č troppo, vedi tu quanto dargli per essere sicuro che
	#Xvfb sia partito
DISPLAY=:2.0 /opt/openoffice... bla bla bla
uso questa sintassi per lanciare istanze di firefox che fano lo screenshot
di un sito remoto e muoiono
ciao

 con Uno (python o perl))
Mi starebbe anche bene...
Il problema, a quel punto, sarebbe di riuscire a lanciarlo al boot...
Ma quello che veramente non capisco e': se openoffice ha l'opzione
-headless PROPRIO per non dover usare un Server X, perche' non vuole
andare?
Aggiungo che, se mi loggo da Terminale (quindi, vado FISICAMENTE sul
Server sul quale NON gira X e mi loggo come utente) e lancio OpenOffice
con -headless e nessun Xvfb, tutto funziona alla perfezione...
Direi che il problema a questo punto e' altrove e non c'entra niente con
X...
Magari cron imposta qualcosa sbagliato?
Avete idea di come posso controllare?


 con -headless e nessun Xvfb, tutto funziona alla perfezione...
ah , questo non l'avevo capito...
Direi che quando OO viene lanciato gli manca qualcosa dell'env dell'utente
dal quale lo lanci con successo. Prova a replicare l'env in uno script
(con i dovuti accorgimenti) e lanciarlo da dentro tale script

 di un sito remoto e muoiono
[OT] guardati anche khtml2png :-D


 [OT] guardati anche khtml2png :-D
eh l'avevo gi� visto ma volevo evitare di mettere kde sulla macchina (che
non ha X )

 Solo che non saprei cos'e' questo "qualcos'altro"...
Boh io con la mia distro (Mandriva) ho sempre avuto problemi con cron 
del tipo descritto da te, cioč il comando da shell va ma non da cron, 
dovuto a variabili d'ambiente non impostate.
Allora mi sono rotto e ho dato un "env" e trasformato l'output in uno 
script che reimposta il valore di quasi tutte le variabili e che uso 
prima di lanciare i job.. cosě mi funziona
-- 
the_m

 non ha X )
Non ho provato ma... compilarlo staticamente probabilmente funzia.
Ci proverò!


 Ci proverň!
lo sai che mi hai dato un' ědea?
ci provo subito!

 ci provo subito!
Non credo che funzioni.
Ma probabilmente (da provare) servono solo alcune librerie di KDE, non
tutte e non tutto l'ambiente.


 tutte e non tutto l'ambiente.
funzionare magari funziona, ma appena mi ci sono messo a
pensare un attimo ho capito che rischio di entrare in un calvario mica da
poco :)
comunque mi scarico i sorgenti vedo un po' il Makefile che dice

RedWiz ha scritto:


E alla fine il problema era proprio questo!
Ho scritto:
env SHELL=/bin/bash 
TERM=linux 
USER=oooreports 
PATH=/usr/local/bin:/usr/bin:/bin:/usr/games 
PWD=/opt/reporting/oooreports 
LANG=de_DE.UTF-8 
HOME=/opt/reporting/oooreports 
LOGNAME=oooreports 
/opt/openoffice.org3/program/scalc -headless ....
e ora tutto funziona da cron!
Grazie mille!
Ora posso rilassarmi...
Ciao


 tutte e non tutto l'ambiente.
azzarola non avevo letto questo nella pagina dei download!!!
"Static file
If you have chosen the precompiled statically linked file you don't need
to install KDE or KDE librariers. Just extract the file with..."
c'hanno già pensato loro, figata!
adesso lo provo :)


lucabert.de
dove abiti?

 adesso lo provo :)
niente alla fine è stato un insuccesso
La versione statica funziona male (non ho testato l'altra, ma tanto non mi
servirebbe)
Su alcuni (molti) siti non va:
"terminate called after throwing an instance of 'DOM::DOMException' "
inoltre l'eseguibile compilato statico pesa 30MB(!) e non accetta come
opzioni di ingresso una lista di url, il che significa che dovrei
lanciarlo ogni volta che devo fare uno shot, quindi ricaricare
tutte le kdelibs, troppo lento e pesante.

 dove abiti?
Dresden Pieschen, Sassonia, Germania
perche'?


 perche'?
perchč io sto a berlino