Comment 5 for bug 18661

Revision history for this message
John Moser (nigelenki) wrote : Re: Temporary /tmp and /var/tmp

I believe that you may find other issues. You can fill up / this way too; I use a several gigabyte / and a separarte /home, because I reinstall ubuntu a lot (due to me breaking it with hackery) and it does NOT SUPPORT WIPING SYSTEM DIRECTORIES BUT LEAVING /home ALONE. (we can ignore running 32/64 bit systems etc etc, the typical user may want to reinstall without backing up say a 400 gig hard drive?)

Interestingly this issue doesn't excatly have a solution. /tmp is designed to do what /tmp does; and linking /tmp/$USER to ~/.tmp or such and changing a variable (there is a pam tmpdir module! We should really get Ubuntu working with it some day) will only migrate the problem, ASSUMING the user even uses a separate /home (most ubuntu users won't because we don't tell them to).

I used a separate /tmp because 1) Ubuntu never clears /tmp on boot (so if it gets big it stays big; and it fills with junk); 2) stuff in /tmp may be stuff you want to die when the system is turned off (temporary cached mysql passwords..?); 3) It uses the swap file and RAM, so it's theoretically faster "by magic" than using the disk. We can deal with (1); (2) is really where you need tmpfs because a sudden system crash (power drop) won't clear sensitive data from /tmp (we can boot a livecd and...); (3) is a negligible non-issue that only picky people like me care about.

Considering the issue further, I make the following recommendations:

 - Do not make this a typical installer option. Perhaps a "power user" option or the like from the expert install (do we still have that?).
 - Consider creating a "Power User's Control Panel" for Ubuntu (I will file a bug on this), with this as an option.
 - In the mean time, WIPE /tmp on each boot AND shutdown. If we wipe it on shutdown, then wiping it on boot is a no-op; if the system goes down (power outage), we can get it on reboot.
 - /var/tmp is probably temporary as well, but I'm not honestly sure how temporary. I know /tmp is considered dead after application run ends. Possibly wipe this too anyway (rm -rf /tmp/* /var/tmp/*).
 - Figure a way for certain things-- meaning Nautilus CD burner-- to use pipes for CD/DVD burning and buffer the data to be burned before starting. We don't need / ballooning by 5 gigs at a time just because someone decided to burn a DVD, not to mention dual-layer DVDs (8 gigs).
 - When we support Video DVD burning these problems are going to pop up again; these decode the video and re-encode it to DVD size, so the space usage on disk doubles. Dual-layer DVD, 16 gigs space needed? Umm.

There's no one-size-fits-all here.