Soluzione 1:
Non sono sicuro che l'applet java esamini effettivamente le variabili d'ambiente prima di avviarsi, ma cosa puoi fare modifica /etc/profile e aggiungi le seguenti righe:
if [[ -O /home/$USER/tmp && -d /home/$USER/tmp ]]; then
TMPDIR=/home/$USER/tmp
else
# You may wish to remove this line, it is there in case
# a user has put a file 'tmp' in there directory or a
rm -rf /home/$USER/tmp 2> /dev/null
mkdir -p /home/$USER/tmp
TMPDIR=$(mktemp -d /home/$USER/tmp/XXXX)
fi
TMP=$TMPDIR
TEMP=$TMPDIR
export TMPDIR TMP TEMP
Per renderlo una vera directory tmp (poiché i file scompaiono al termine della sessione, ti consigliamo di modificare il .bash_logout dell'utente e lo scheletro .bash_logout (/etc/skel/.bash_logout) per includere quanto segue :
if [ -O $TMPDIR && -d $TMPDIR ]; then
rm -rf $TMPDIR/*
fi
La parte di logout è pericolosa se la variabile non viene impostata e hai effettuato l'accesso come root! Non lo aggiungerei all'account root oa chiunque sia membro del gruppo wheel! Procedi con le tue precauzioni.
Soluzione 2:
Il file che stai cercando è:
/etc/environment
Devi impostare la variabile TEMP come:
TEMP=/home/user/tmp
Soluzione 3:
Se vuoi /home/user/tmp
da pulire al riavvio, ti suggerisco di aggiungere un @reboot
job al crontab
personale dell'utente .