[GRASS-user] GRASS temp directory...

Hamish hamish_b at yahoo.com
Thu Aug 21 02:34:09 EDT 2008

Jonathan wrote:
> I'm curious -- where does GRASS write its temporary files,

GRASS session variables go into /tmp/grass6-$USER-$PID/gisrc
This is a very small file.

There is a bit in lib/init/init.sh that sets that, but the ability to
change to $TMPDIR istead of /tmp/ has been commented out. (some mutli-user
systems use a per-user tmp directory instead of a common one)


It is commented out because:
  "revert $TMPDIR capability (instead of /tmp) until
   lib/gis/unix_socks.c can be updated to use $TMPDIR too."

ISTR there was some discussion about that on the GRASS-dev mailing list
at the time, check the Feb 2005 archives for more.


Module runtime temp files go into $MAPSET/.tmp/$HOSTNAME/
The idea is that the user will always have write permission to the
$MAPSET dir, and /tmp/ is often a rather small partition so in danger
of filling up when processing large datasets. $MAPSET/.tmp/ is flushed
every time you start and exit GRASS.

r.terraflow uses the STREAM_DIR= dir for temp files (default=/var/tmp).
r.terraflow gets special treatment because it can create multi-gigabyte
tmp files depending on the region size and the memory= setting. What the
default for that should be though could be up for debate, but for files
of that size it is nice to have the flexibility of where they go.

> and how would I change this if I wanted to?

"manual intervention in the source code"



More information about the grass-user mailing list