El estándar de jerarquía del sistema de archivos versión 3.0 dice:
/tmp :Archivos temporales
El /tmp
El directorio debe estar disponible para los programas que requieren archivos temporales.
Los programas no deben asumir que ningún archivo o directorio en /tmp
se conservan entre invocaciones del programa.
Justificación
El estándar IEEE POSIX.1-2008 enumera requisitos similares a la sección anterior. Aunque los datos almacenados en /tmp
pueden eliminarse de manera específica del sitio, se recomienda que los archivos y directorios ubicados en /tmp
se eliminará cada vez que se inicie el sistema.
FHS agregó esta recomendación sobre la base de precedentes históricos y prácticas comunes, pero no la convirtió en un requisito porque la administración del sistema no está dentro del alcance de esta norma.
/var/tmp:archivos temporales conservados entre reinicios del sistema
El /var/tmp
El directorio está disponible para programas que requieren archivos temporales o directorios que se conservan entre reinicios del sistema. Por lo tanto, los datos almacenados en /var/tmp
es más persistente que los datos en /tmp
.
Archivos y directorios ubicados en /var/tmp
no debe eliminarse cuando se inicia el sistema. Aunque los datos almacenados en /var/tmp
normalmente se elimina de una manera específica del sitio, se recomienda que las eliminaciones ocurran en un intervalo menos frecuente que /tmp
.
También The Open Group Base Specifications Issue 7, Environment Variables menciona lo siguiente:
TMPDIR
Esta variable representará un nombre de ruta de un directorio disponible para programas que necesitan un lugar para crear archivos temporales.
Esta es una vieja pregunta por lo que hoy hay otra opción disponible. Distribuciones de Linux que se basan en systemd
(que es el 90% de ellos) ahora pueden usar $XDG_RUNTIME_DIR
(Especificación de directorio base XDG) para almacenar ciertos tipos de archivos temporales. Generalmente se encuentra en /run/user/$uid
. Este es un directorio por usuario con 700
permisos que proporciona una mejor seguridad. Este es un tmpfs
montura que proporciona rendimiento. La desventaja de tmpfs
es que solo debe usarse para guardar pequeños archivos y sockets.
Lo veo como un matrimonio de /tmp
y /var/run
.
Sí /tmp es para uso general. Consulte aquí y aquí Sobre el estándar de jerarquía del sistema de archivos.
/tmp/ Archivos temporales (ver también /var/tmp). A menudo no se conserva entre reinicios del sistema.
Con algunos detalles más enumerados en el PDF.