Linux a-t-il un répertoire temporaire standard à usage général, comme le C:\Temp
dossier Windows ? Si oui, où est-il situé? J'ai trouvé une question SO sur la recherche d'un tmp
répertoire par programme , mais je souhaite définir un emplacement temporaire dans un fichier de configuration XML à l'avance.
63
/tmp
, mais elles étaient ambiguës quant à savoir si c'était standard pour Linux ou juste une convention commune.C:\Temp
n'est certainement pas standard. Windows 95 avait déjà%TEMP%
pointé versC:\WINDOWS\Temp
.Réponses:
La version 3.0 de la hiérarchie des systèmes de fichiers indique:
De plus , le La base Open Group Spécifications numéro 7, les variables d' environnement mentionne ce qui suit:
la source
C'est une vieille question donc aujourd'hui il y a une autre option disponible. Les distributions Linux reposant sur
systemd
(90% d'entre elles) peuvent désormais utiliser un$XDG_RUNTIME_DIR
répertoire ( XDG Base Directory Specification ) pour stocker certains types de fichiers temporaires. Il est généralement situé à/run/user/$uid
. Il s’agit d’un répertoire par utilisateur doté d’700
autorisations offrant une meilleure sécurité. Ceci est untmpfs
montage qui offre des performances. L'inconvénienttmpfs
est qu'il ne devrait être utilisé que pour conserver de petits fichiers et des sockets.Je le considère comme un mariage de
/tmp
et/var/run
.la source
Oui / tmp est à usage général. Voir ici et ici sur le système de hiérarchie des systèmes de fichiers.
Avec plus de détails énumérés dans le PDF.
la source
Vous ne pouvez pas choisir un seul nom de répertoire temporaire à l'avance qui fonctionnera sur n'importe quel système Linux. En fait, vous ne pouvez pas le faire sous Windows non plus. Selon l' article de Wikipedia sur les dossiers temporaires , le répertoire temporaire sous Windows est déterminé par la variable d'environnement TEMP. Si vous utilisiez simplement
c:\Temp
un répertoire temporaire sur un système Windows pour définir TEMP sur quelque chose d'autre, tout programme utilisant votre fichier XML pour choisir un répertoire temporaire échouerait.En bref, le répertoire temporaire du système est déterminé par l'environnement de tous les systèmes d'exploitation modernes que je connais, y compris Windows et tout système de type UNIX. La définition d’un seul chemin statique en tant que répertoire temporaire ne fonctionnera que tant que les valeurs par défaut n’ont pas été modifiées.
Quoi qu'il en soit, le répertoire temporaire standard d'un système Linux typique est
/tmp
. C'est l'équivalent deC:\Temp
dans le sens où c'est seulement le répertoire temporaire par défaut, pas universel. Même si/tmp
est disponible, si un utilisateur (ou le système) a défini la variable d'environnement TEMP, la valeur de cette variable doit être utilisée à la place.Vous pouvez essayer de choisir un répertoire temporaire par rapport au répertoire de base de l'utilisateur, que vous pouvez créer.
la source
TMPDIR
variable d'environnement./tmp
préside la variable temporaire?La question initiale était: Linux a-t-il un répertoire temporaire standard? Si oui, où est-il situé? Le (s) dossier (s) tmp se trouvent dans: Système de fichiers / tmp et Système de fichiers / var / tmp. Le contenu de / tmp peut être supprimé - si vous savez quels fichiers / dossiers sont requis / non requis par diverses applications sur une "selon les besoins" base. Les fichiers non requis sont généralement ceux téléchargés par une application afin de faciliter l'application elle-même à ce moment-là, donc plus nécessaire après l'exécution de l'application. Le dossier / var / tmp ne doit absolument pas être touché.
la source