| Sly Angel |
ping a écrit a écrit :
hum... j'ai lu le thread en diagonale, alors je réponds juste à Sly, même si j'ai vu des énormitées dans un ou deux posts...
*/ concernant le vidage auto de /tmp, ENORMEMENT d'Unix font ca... ils se basent sur le atime en général, mais certains sont un peut plus malins que ca. C'est normal. /tmp, comme son nom l'indique est pour les fichiers temporaires, donc ... _volatiles_ ;)
*/ déjas, /tmp, c une atrocitée... Entre les race conditions, et autres... Donc dans un premier temps, avis à la populasse, foutez moi un bit sticky sur /tmp, et tous les reps de ce genre (/var/run, ...). De toute facon, le mieux c'est que le tmp de chaque user soit séparré de celui des autres (~/tmp par exemple) et surtout que /tmp ne serve pas à un programme/daemon/script/cequevousvoullez à créer des fichiers...
*/ hum... /tmp en ram, c'est bourin, tout le monde à les droits sur /tmp, je peux te saturer ta ram (en accès, pas en taille) même si tu m'as foutu des limitations (setrlimit par exemple...) asser facilement...
*/ fouttre un truc en ram, ca sert juste si tu accède souvent à des fichiers du disque... Si c'est des binaires, anyway quand ils sont lancés ils sont chargés en ram.
Mon conseil : */ si c'est pour toi, pour des fichiers -> tu te créé un ~/ram_tralala_pwetpwet chargé en ram, tu fout tes fichiers dedans...
*/ si c'est un daemon ou une appli lancée continuelement -> ca sert à rien
*/ si c'est une appli lancée fréquement ->
**/ si tu en est l'auteur -> tu créé une sorte de daemon qui reste en mémoire et qui contiens/charge/map la majorité des chaoses
**/ sinon bah tu la fout dans un ramdisk, monté de préférence dans ~/ram/foo_bar
Pour tout le monde :
*/ fouttez des sticky bits dans les reps où tout le monde à les droits d'écriture
*/ utilisez ~/tmp au lieu de /tmp (caca) sauf pour l'échange de fichiers, et encore...
*/ si vous codez faites gaffes si votre appli doit gérer des fichiers temp... pour vous en convaincre, jettez un oeuil sur eliott par exemple...
vala, ct le coup de geule du mec qu'en a marre que tout le monde fasse n'importe quoi.
|
- Machine complétement dédiée à ce qui est utilisé dans le /tmp donc pas de problème, un seul user réel existe sur la machine
- Ce ne sont pas des binaries, effectivement aucun intérêt de mettre un binaire en RAM, ce sont plutôt des fichiers accédés comme des bases par exemple
- ~tmp c'est bien beau mais sachant que comme je l'ai dis plus haut il n'y a pas qu'un daemon qui utilise cet espace, c'est un peu lourd, dans les cas un ~ est pas gérable dans mon cas de figure ( je veux justement que cet espace soit partagé à tous les fichiers de tous les daemons potentiellement )
- Il faut voir que déjà au départ beaucoup d'applis utilisent /tmp pour mettre leurs fichiers de travail ( notamment mon premier exemple en tête sera Zend Accelerator ), partant de là je préfère ajouter des choses en /tmp qui me sont utilise dans un but assez similaire par rapport à ce que Zend fait et mettre le /tmp en RAM plutot que de modifier la config de Zend Accelerator ou tout autre programme du même genre à chaque fois que j'en installe un. Enfin c'est des choses que j'avais déjà précisé mais bon ;)
J'ai aussi dis il me semble que je ne prétendais pas faire quelque chose de super normal en utilisant /tmp pour ça. |