Hi all, I can't work out why a cgi script which fires off latex to process a file in /tmp does not seem to be able to write the dvi file or its log file. The application creates a file called 192.168.1.4.tex fine. But latex won't run on it from the cgi script.
This is the command I am using in perl: system("date > /tmp/chemlabel.log; latex $latex_file >> /tmp/chemlabel.log") && \ die "can't run latex on $latex_file !"; The apache error log says can't run latex on /tmp/192.168.1.4.tex ! so that comes from the die statement and shows that its getting the right filename and 192.168.1.4.tex is being created. after running this cgi script FROM my web application /tmp$ ls -l total 23 -rw-r--r-- 1 www-data www-data 288 Oct 31 17:40 192.168.1.4.tex -rw-r--r-- 1 www-data www-data 195 Oct 31 17:40 chemlabel.log you can see that the output of the attempt to run latex on the file is in chemlabel.log /tmp$ cat chemlabel.log Wed Oct 31 17:40:43 EST 2001 This is TeX, Version 3.14159 (Web2C 7.3.1) ! I can't write on file `192.168.1.4.log'. Please type another transcript file name: ! Emergency stop No pages of output. OK so it seems like latex running as user www-data can't write its log file 192.168.4.log etc. If I su to www-data from root so that I am that user then I can run latex on the file quite OK as you can see here: /tmp$ latex 192.168.1.4.tex <-- note I am user: www-data now This is TeX, Version 3.14159 (Web2C 7.3.1) (192.168.1.4.tex LaTeX2e <1998/12/01> patch level 1 .... Output written on 192.168.1.4.dvi (1 page, 292 bytes). Transcript written on 192.168.1.4.log. Now an ls -l shows... -rw-r--r-- 1 www-data www-data 8 Oct 31 17:43 192.168.1.4.aux -rw-r--r-- 1 www-data www-data 292 Oct 31 17:43 192.168.1.4.dvi -rw-r--r-- 1 www-data www-data 2304 Oct 31 17:43 192.168.1.4.log -rw-r--r-- 1 www-data www-data 288 Oct 31 17:40 192.168.1.4.tex -rw-r--r-- 1 www-data www-data 195 Oct 31 17:40 chemlabel.log viewing the dvi file shows its all ok and as expected www-data was able to write the log file and the dvi file . But agian if I try to run it from the web browser firing off the cgi script then the chemlabel.log file shows a new date (which means it is being written to ok) but that mesasage that latex can't write on 192.168.1.4.log But www-data owns the file and should be able to write to it. -rw-r--r-- 1 www-data www-data 2304 Oct 31 17:43 192.168.1.4.log At a loss. Mike -- -------------------------------------------------------------------- Michael Lake Active caver, Linux enthusiast and interested in anything technical. Safety Convenor, Australian Speleological Federation Owner, Speleonics (Australia) <^~^::^~^> -------------------------------------------------------------------- -- SLUG - Sydney Linux User Group Mailing List - http://slug.org.au/ More Info: http://lists.slug.org.au/listinfo/slug