1 |
-----BEGIN PGP SIGNED MESSAGE----- |
2 |
Hash: SHA256 |
3 |
|
4 |
On 17/12/14 08:32, Mike Edenfield wrote: |
5 |
>>>> "A general use scratch pad area where files written are not |
6 |
>>>> expected to survive successive invocations of the program |
7 |
>>>> that wrote them". That's interesting as it means the sysadmin |
8 |
>>>> can delete everything in /tmp at any time for any reason, |
9 |
>> |
10 |
>> And as long as the app doesn't close the file descriptor, |
11 |
>> everything will continue to work just fine. I used to do this for |
12 |
>> fun about once a week or so on a many multiuser host, then tell |
13 |
>> users to tell upstream to fix the stupid bugs in any apps that |
14 |
>> broke. I've calmed down since then, must have something to do |
15 |
>> with the onset of senility... |
16 |
> |
17 |
> Then I discovered that ssh-agent decided that a good default place |
18 |
> to put its domain socket was /tmp/ssh-XXXXXXXXXXXXXXXXXX and |
19 |
> deleting it breaks ssh key forwarding, among other things :\ |
20 |
|
21 |
I think a key point has been missed here, and that is use of the words |
22 |
"successive invocation". |
23 |
|
24 |
To me, /tmp is an area where files that are /not meant to be |
25 |
permanent/ are able to be written without contaminating the file |
26 |
system and without requiring open permissions in other more sensitive |
27 |
areas like /usr/share or /etc/randomdir. |
28 |
|
29 |
A single invocation of a program having its /tmp contents removed and |
30 |
then acting abnormally isn't something that I would consider a bug. |
31 |
It's when a _subsequent_ run fails because it's expecting a file that |
32 |
is, at least by it's location, _temporary_. |
33 |
|
34 |
One analogy may be that in driving a car, you expect that the engine |
35 |
is running, but it is only required whilst the car is being driven |
36 |
(therefore temporary - only required for that specific invocation). If |
37 |
you suddenly stop the engine when you're halfway to where you're |
38 |
going, within that invocation, you're going to have a bad time. |
39 |
|
40 |
If a program is expecting a dynamically generated file that isn't in |
41 |
the "normal" file system hierarchy, then that file should probably be |
42 |
stored in somewhere like /var or /usr, rather than /tmp. |
43 |
|
44 |
Well, that's my loose change worth. Also, it's early for me - please |
45 |
excuse any bad analogies. :-) |
46 |
|
47 |
- -- |
48 |
wraeth <wraeth@×××××××××.au> |
49 |
GnuPG Key: B2D9F759 |
50 |
-----BEGIN PGP SIGNATURE----- |
51 |
Version: GnuPG v2 |
52 |
|
53 |
iF4EAREIAAYFAlSQr1YACgkQXcRKerLZ91kh2AD9HrxjihW5NqY673Af+GRCq6Bj |
54 |
kKsyiBUMJAVTkz96fJoA/2P6y3U5drh5Yma5uFRfK+l1YOdrsKj5LPVHBIa7Egpx |
55 |
=HmpB |
56 |
-----END PGP SIGNATURE----- |