On 16/12/2014 20:05, walt wrote:
> On 12/15/2014 11:17 PM, Alan McKinnon wrote:
>> On 16/12/2014 02:17, walt wrote:
>>> I confess I've never thought much about why /tmp exists, but today I was
>>> inconvenienced when an end-user utility (uudeview) ran out of space on /tmp
>>> while doing an ordinary end-user task processing very large end-user files.
>>>
>>> Why is an end-user program using a "system" directory like /tmp in the first
>>> place?
>>>
>>> I suspect that the need for /tmp is now gone, but I'm prepared to be wrong 
>>> :)
>>>
>>>
>>>
>>
>>
>> /tmp was always intended to be used exactly the way you are using it:
>>
>> yes, it is a "system directory" because it's located in / but you have
>> permissions to use it. The mode is 1777 so everyone can
>> read/write/execute the contents but it's also sticky (the 1) so only you
>> can delete what you put there. It's a general-use scratch pad area that
>> everyone can use safely, unfortunately in these days of huge cheap disks
>> some apps abuse it by writing gigantic files there and you run out of space.
>>
>> How have you set /tmp up? Is it on-disk or a tmpfs? You might need to
>> make it bigger.
> 
> systemd puts /tmp on a tmpfs by default, and this ancient machine has a mere
> 4GB of ram :)  I didn't know about the TMPDIR environment (thanks, redwolfe)
> so I worked around the problem by rebooting with openrc, which uses my 
> original
> /tmp on the hard drive.  (Exactly the excuse I need to buy more RAM :)
> 
> 
>> /tmp is still very much in use and very much needed, it isn't going
>> anywhere soon. The FHS has something interesting to say about /tmp,
>> along the lines of:
>>
>> "A general use scratch pad area where files written are not expected to
>> survive successive invocations of the program that wrote them". That's
>> interesting as it means the sysadmin can delete everything in /tmp at
>> any time for any reason,
> 
> bofh can delete them for no reason at all while you're still using them :)

Exactly :-)

And as long as the app doesn't close the file descriptor, everything
will continue to work just fine. I used to do this for fun about once a
week or so on a many multiuser host, then tell users to tell upstream to
fix the stupid bugs in any apps that broke. I've calmed down since then,
must have something to do with the onset of senility...




-- 
Alan McKinnon
alan.mckin...@gmail.com


Reply via email to