j'aimerai passer mon '/tmp' et mon '/var/tmp' en tmpfs. Je me suis donc
créé une partition de swap de 2Go et j'ai lu le fichier tmpfs.txt de la
documentation du noyau (je sais j'aurais mieux fait de commencer par ça
mais bon...) .
Je pensais donc qu'il suffisait de remplacer la ligne
tmpfs /dev/shm tmpfs defaults 0 0
de mon '/etc/fstab' par celle-ci
tmpfs /tmp tmpfs defaults 0 0
puis de changer le répertoire '/var/tmp' en lien vers '/tmp'.
Première question : Pensez-vous que cette façon de faire soit correcte ?
En lisant la doc je suis aussi tombé sur ces lignes :
######
tmpfs has three mount options for sizing:
size: The limit of allocated bytes for this tmpfs instance. The
default is half of your physical RAM without swap. If you
oversize your tmpfs instances the machine will deadlock
since the OOM handler will not be able to free that memory.
nr_blocks: The same as size, but in blocks of PAGE_CACHE_SIZE.
nr_inodes: The maximum number of inodes for this instance. The default
is half of the number of your physical RAM pages, or (on a
a machine with highmem) the number of lowmem RAM pages,
whichever is the lower.
######
Si je comprends bien l'auteur déconseille de surdimensionner une
instance tmpfs sous peine de planter la machine. Alors avant de faire
une boulette j'aimerais savoir ce que vous en pensez.
Précision : je suis sur une Debian 3.1 (sarge), j'ai 392Mo de RAM et je
pensais consacrer une partion de 2Go au swap et au tmpfs.
Je pensais donc qu'il suffisait de remplacer la ligne
tmpfs /dev/shm tmpfs defaults 0 0
Non, il te faut le /dev/shm (bien que je ne connaisse aucune application qui s'en serve, en pratique). En revanche, le dimensionner à tout petit ne pose pas grand problème.
tmpfs /tmp tmpfs defaults 0 0
Il faut ajouter une ligne comme ça, pas remplacer la précédente.
puis de changer le répertoire '/var/tmp' en lien vers '/tmp'.
Ça, ça peut se faire sans trop de problème.
Si je comprends bien l'auteur déconseille de surdimensionner une instance tmpfs sous peine de planter la machine. Alors avant de faire une boulette j'aimerais savoir ce que vous en pensez.
Je n'ai jamais eu de problème avec ça. Il faudrait vérifier auprès de lkml si c'est encore d'actualité.
batyann811 wrote in message <4303544a$0$3126$8fcfb975@news.wanadoo.fr>:
Je pensais donc qu'il suffisait de remplacer la ligne
tmpfs /dev/shm tmpfs defaults 0 0
Non, il te faut le /dev/shm (bien que je ne connaisse aucune application qui
s'en serve, en pratique). En revanche, le dimensionner à tout petit ne pose
pas grand problème.
tmpfs /tmp tmpfs defaults 0 0
Il faut ajouter une ligne comme ça, pas remplacer la précédente.
puis de changer le répertoire '/var/tmp' en lien vers '/tmp'.
Ça, ça peut se faire sans trop de problème.
Si je comprends bien l'auteur déconseille de surdimensionner une
instance tmpfs sous peine de planter la machine. Alors avant de faire
une boulette j'aimerais savoir ce que vous en pensez.
Je n'ai jamais eu de problème avec ça. Il faudrait vérifier auprès de lkml
si c'est encore d'actualité.
Je pensais donc qu'il suffisait de remplacer la ligne
tmpfs /dev/shm tmpfs defaults 0 0
Non, il te faut le /dev/shm (bien que je ne connaisse aucune application qui s'en serve, en pratique). En revanche, le dimensionner à tout petit ne pose pas grand problème.
tmpfs /tmp tmpfs defaults 0 0
Il faut ajouter une ligne comme ça, pas remplacer la précédente.
puis de changer le répertoire '/var/tmp' en lien vers '/tmp'.
Ça, ça peut se faire sans trop de problème.
Si je comprends bien l'auteur déconseille de surdimensionner une instance tmpfs sous peine de planter la machine. Alors avant de faire une boulette j'aimerais savoir ce que vous en pensez.
Je n'ai jamais eu de problème avec ça. Il faudrait vérifier auprès de lkml si c'est encore d'actualité.
batyann811
Non, il te faut le /dev/shm (bien que je ne connaisse aucune application qui s'en serve, en pratique). En revanche, le dimensionner à tout petit ne pose pas grand problème.
D'accord.
Il faut ajouter une ligne comme ça, pas remplacer la précédente.
En précisant une taille avec l'option size je suppose vu que sans cela la taille par défaut est de 50% de la RAM.
Ça, ça peut se faire sans trop de problème.
Ok.
Je n'ai jamais eu de problème avec ça. Il faudrait vérifier auprès de lkml si c'est encore d'actualité.
Par curiosité tu as été jusqu'ou comme taille de tmpfs ?
Merci de tes réponses.
Non, il te faut le /dev/shm (bien que je ne connaisse aucune application qui
s'en serve, en pratique). En revanche, le dimensionner à tout petit ne pose
pas grand problème.
D'accord.
Il faut ajouter une ligne comme ça, pas remplacer la précédente.
En précisant une taille avec l'option size je suppose vu que sans cela
la taille par défaut est de 50% de la RAM.
Ça, ça peut se faire sans trop de problème.
Ok.
Je n'ai jamais eu de problème avec ça. Il faudrait vérifier auprès de lkml
si c'est encore d'actualité.
Par curiosité tu as été jusqu'ou comme taille de tmpfs ?
Non, il te faut le /dev/shm (bien que je ne connaisse aucune application qui s'en serve, en pratique). En revanche, le dimensionner à tout petit ne pose pas grand problème.
D'accord.
Il faut ajouter une ligne comme ça, pas remplacer la précédente.
En précisant une taille avec l'option size je suppose vu que sans cela la taille par défaut est de 50% de la RAM.
Ça, ça peut se faire sans trop de problème.
Ok.
Je n'ai jamais eu de problème avec ça. Il faudrait vérifier auprès de lkml si c'est encore d'actualité.
Par curiosité tu as été jusqu'ou comme taille de tmpfs ?
Merci de tes réponses.
Nicolas George
batyann811 wrote in message <43036d88$0$884$:
En précisant une taille avec l'option size je suppose vu que sans cela la taille par défaut est de 50% de la RAM.
Oui.
Par curiosité tu as été jusqu'ou comme taille de tmpfs ?
J'ai 1 Go de RAM, 1,5 Go de swap, et j'ai mis jusqu'à 1,2 Go de /tmp. En utilisation, je suis sûr que j'ai déjà eu un remplissage au delà de 900 Mo, mais je ne me rappelle pas plus précisément.
batyann811 wrote in message <43036d88$0$884$8fcfb975@news.wanadoo.fr>:
En précisant une taille avec l'option size je suppose vu que sans cela
la taille par défaut est de 50% de la RAM.
Oui.
Par curiosité tu as été jusqu'ou comme taille de tmpfs ?
J'ai 1 Go de RAM, 1,5 Go de swap, et j'ai mis jusqu'à 1,2 Go de /tmp. En
utilisation, je suis sûr que j'ai déjà eu un remplissage au delà de 900 Mo,
mais je ne me rappelle pas plus précisément.
En précisant une taille avec l'option size je suppose vu que sans cela la taille par défaut est de 50% de la RAM.
Oui.
Par curiosité tu as été jusqu'ou comme taille de tmpfs ?
J'ai 1 Go de RAM, 1,5 Go de swap, et j'ai mis jusqu'à 1,2 Go de /tmp. En utilisation, je suis sûr que j'ai déjà eu un remplissage au delà de 900 Mo, mais je ne me rappelle pas plus précisément.
Matthieu Moy
batyann811 writes:
Il faut ajouter une ligne comme ça, pas remplacer la précédente.
En précisant une taille avec l'option size je suppose vu que sans cela la taille par défaut est de 50% de la RAM.
Ça ne me parait pas stupide. De toutes façons, si tu met vraiment plus et que tu l'utilises, ça va swapper à mort, et tu n'auras rien gagné par rapport à un /tmp sur le disque.
Par ailleurs, une barette de 512 coûte à peu près 45 EUR en ce moment. Le gain de performance et de longévité du disque vaut bien ça AMA.
-- Matthieu
batyann811 <batyann811@wanadoo.fr> writes:
Il faut ajouter une ligne comme ça, pas remplacer la précédente.
En précisant une taille avec l'option size je suppose vu que sans cela
la taille par défaut est de 50% de la RAM.
Ça ne me parait pas stupide. De toutes façons, si tu met vraiment plus
et que tu l'utilises, ça va swapper à mort, et tu n'auras rien gagné
par rapport à un /tmp sur le disque.
Par ailleurs, une barette de 512 coûte à peu près 45 EUR en ce moment.
Le gain de performance et de longévité du disque vaut bien ça AMA.
Il faut ajouter une ligne comme ça, pas remplacer la précédente.
En précisant une taille avec l'option size je suppose vu que sans cela la taille par défaut est de 50% de la RAM.
Ça ne me parait pas stupide. De toutes façons, si tu met vraiment plus et que tu l'utilises, ça va swapper à mort, et tu n'auras rien gagné par rapport à un /tmp sur le disque.
Par ailleurs, une barette de 512 coûte à peu près 45 EUR en ce moment. Le gain de performance et de longévité du disque vaut bien ça AMA.
-- Matthieu
lhabert
batyann811 :
puis de changer le répertoire '/var/tmp' en lien vers '/tmp'.
Par exemple. Une autre solution est de faire un mount -o bind /tmp /var/tmp , ce qui a essentiellement le même effet que le symlink mais de manière invisible, ce qui peut éviter certains désagréments avec certains programmes (genre, tu édites un fichier dans /var/tmp, l'éditeur déréférence le symlink à la main et te montres que tu édites un fichier dans /tmp, ce qui n'est pas forcément ce que tu veux).
batyann811 :
puis de changer le répertoire '/var/tmp' en lien vers '/tmp'.
Par exemple. Une autre solution est de faire un
mount -o bind /tmp /var/tmp
, ce qui a essentiellement le même effet que le symlink mais de manière
invisible, ce qui peut éviter certains désagréments avec certains
programmes (genre, tu édites un fichier dans /var/tmp, l'éditeur déréférence
le symlink à la main et te montres que tu édites un fichier dans /tmp, ce
qui n'est pas forcément ce que tu veux).
puis de changer le répertoire '/var/tmp' en lien vers '/tmp'.
Par exemple. Une autre solution est de faire un mount -o bind /tmp /var/tmp , ce qui a essentiellement le même effet que le symlink mais de manière invisible, ce qui peut éviter certains désagréments avec certains programmes (genre, tu édites un fichier dans /var/tmp, l'éditeur déréférence le symlink à la main et te montres que tu édites un fichier dans /tmp, ce qui n'est pas forcément ce que tu veux).
Nicolas George
Matthieu Moy wrote in message :
Ça ne me parait pas stupide. De toutes façons, si tu met vraiment plus et que tu l'utilises, ça va swapper à mort, et tu n'auras rien gagné par rapport à un /tmp sur le disque.
C'est faux. Ça ne s'applique que quand /tmp est fortement utilisé, ce qui sur une machine personnelle est assez rare. En temps normal, tout tiendra très largement en RAM, et dans ce cas le gain est notable par rapport à un filesystem sur disque : les données ne sont simplement pas flushées sur disque au bout du timeout standard. Dans les cas d'utilisation intense, eh bien ça ne sera évidemment pas mieux qu'un /tmp sur disque, mais ce ne sera pas pire non plus.
De plus, tmpfs a nettement moins d'exigences qu'un filesystem pour disque. En particulier, il n'a pas besoin de chercher à assurer la cohérence au delà d'un reboot intempestif. La fragmentation n'est pas non plus un problème (c'est un problème quand ça swappe, mais c'est le problème du swap, pas de tmpfs). Tout ceci permet à tmpfs d'être nettement plus léger et rapide pour les opérations courantes.
Matthieu Moy wrote in message <vpq7jeka3xf.fsf@ecrins.imag.fr>:
Ça ne me parait pas stupide. De toutes façons, si tu met vraiment plus
et que tu l'utilises, ça va swapper à mort, et tu n'auras rien gagné
par rapport à un /tmp sur le disque.
C'est faux. Ça ne s'applique que quand /tmp est fortement utilisé, ce qui
sur une machine personnelle est assez rare. En temps normal, tout tiendra
très largement en RAM, et dans ce cas le gain est notable par rapport à un
filesystem sur disque : les données ne sont simplement pas flushées sur
disque au bout du timeout standard. Dans les cas d'utilisation intense, eh
bien ça ne sera évidemment pas mieux qu'un /tmp sur disque, mais ce ne sera
pas pire non plus.
De plus, tmpfs a nettement moins d'exigences qu'un filesystem pour disque.
En particulier, il n'a pas besoin de chercher à assurer la cohérence au delà
d'un reboot intempestif. La fragmentation n'est pas non plus un problème
(c'est un problème quand ça swappe, mais c'est le problème du swap, pas de
tmpfs). Tout ceci permet à tmpfs d'être nettement plus léger et rapide pour
les opérations courantes.
Ça ne me parait pas stupide. De toutes façons, si tu met vraiment plus et que tu l'utilises, ça va swapper à mort, et tu n'auras rien gagné par rapport à un /tmp sur le disque.
C'est faux. Ça ne s'applique que quand /tmp est fortement utilisé, ce qui sur une machine personnelle est assez rare. En temps normal, tout tiendra très largement en RAM, et dans ce cas le gain est notable par rapport à un filesystem sur disque : les données ne sont simplement pas flushées sur disque au bout du timeout standard. Dans les cas d'utilisation intense, eh bien ça ne sera évidemment pas mieux qu'un /tmp sur disque, mais ce ne sera pas pire non plus.
De plus, tmpfs a nettement moins d'exigences qu'un filesystem pour disque. En particulier, il n'a pas besoin de chercher à assurer la cohérence au delà d'un reboot intempestif. La fragmentation n'est pas non plus un problème (c'est un problème quand ça swappe, mais c'est le problème du swap, pas de tmpfs). Tout ceci permet à tmpfs d'être nettement plus léger et rapide pour les opérations courantes.
batyann811
Par exemple. Une autre solution est de faire un mount -o bind /tmp /var/tmp , ce qui a essentiellement le même effet que le symlink mais de manière invisible, ce qui peut éviter certains désagréments avec certains programmes (genre, tu édites un fichier dans /var/tmp, l'éditeur déréférence le symlink à la main et te montres que tu édites un fichier dans /tmp, ce qui n'est pas forcément ce que tu veux).
Merci. Je viens de le faire et ça semble bien fonctionner parfaitement.
Par exemple. Une autre solution est de faire un
mount -o bind /tmp /var/tmp
, ce qui a essentiellement le même effet que le symlink mais de manière
invisible, ce qui peut éviter certains désagréments avec certains
programmes (genre, tu édites un fichier dans /var/tmp, l'éditeur déréférence
le symlink à la main et te montres que tu édites un fichier dans /tmp, ce
qui n'est pas forcément ce que tu veux).
Merci. Je viens de le faire et ça semble bien fonctionner parfaitement.
Par exemple. Une autre solution est de faire un mount -o bind /tmp /var/tmp , ce qui a essentiellement le même effet que le symlink mais de manière invisible, ce qui peut éviter certains désagréments avec certains programmes (genre, tu édites un fichier dans /var/tmp, l'éditeur déréférence le symlink à la main et te montres que tu édites un fichier dans /tmp, ce qui n'est pas forcément ce que tu veux).
Merci. Je viens de le faire et ça semble bien fonctionner parfaitement.
batyann811
J'ai 1 Go de RAM, 1,5 Go de swap, et j'ai mis jusqu'à 1,2 Go de /tmp. En utilisation, je suis sûr que j'ai déjà eu un remplissage au delà de 900 Mo, mais je ne me rappelle pas plus précisément.
Ok. Et bien je viens de mettre 2Go de swap et 1.5Go de /tmp avec /var/tmp monté avec l'option --bind au même endroit (conseil de Luc Habert). J'ai rempli le /tmp à hauteur de 1.2Go avec un gros fichier.
Tout semble très bien fonctionner depuis environ 1h30 heure.
Merci.
J'ai 1 Go de RAM, 1,5 Go de swap, et j'ai mis jusqu'à 1,2 Go de /tmp. En
utilisation, je suis sûr que j'ai déjà eu un remplissage au delà de 900 Mo,
mais je ne me rappelle pas plus précisément.
Ok. Et bien je viens de mettre 2Go de swap et 1.5Go de /tmp avec
/var/tmp monté avec l'option --bind au même endroit (conseil de Luc
Habert). J'ai rempli le /tmp à hauteur de 1.2Go avec un gros fichier.
Tout semble très bien fonctionner depuis environ 1h30 heure.
J'ai 1 Go de RAM, 1,5 Go de swap, et j'ai mis jusqu'à 1,2 Go de /tmp. En utilisation, je suis sûr que j'ai déjà eu un remplissage au delà de 900 Mo, mais je ne me rappelle pas plus précisément.
Ok. Et bien je viens de mettre 2Go de swap et 1.5Go de /tmp avec /var/tmp monté avec l'option --bind au même endroit (conseil de Luc Habert). J'ai rempli le /tmp à hauteur de 1.2Go avec un gros fichier.
Tout semble très bien fonctionner depuis environ 1h30 heure.
Merci.
John doe
batyann811 wrote in message <4303544a$0$3126$:
Je pensais donc qu'il suffisait de remplacer la ligne
tmpfs /dev/shm tmpfs defaults 0 0
Non, il te faut le /dev/shm (bien que je ne connaisse aucune application qui s'en serve, en pratique). En revanche, le dimensionner à tout petit ne pose pas grand problème.
/dev/shm est, par exemple, utilisé par qemu...
tmpfs /tmp tmpfs defaults 0 0
Il faut ajouter une ligne comme ça, pas remplacer la précédente.
puis de changer le répertoire '/var/tmp' en lien vers '/tmp'.
Ça, ça peut se faire sans trop de problème.
Si je comprends bien l'auteur déconseille de surdimensionner une instance tmpfs sous peine de planter la machine. Alors avant de faire une boulette j'aimerais savoir ce que vous en pensez.
Je n'ai jamais eu de problème avec ça. Il faudrait vérifier auprès de lkml si c'est encore d'actualité.
batyann811 wrote in message <4303544a$0$3126$8fcfb975@news.wanadoo.fr>:
Je pensais donc qu'il suffisait de remplacer la ligne
tmpfs /dev/shm tmpfs defaults 0 0
Non, il te faut le /dev/shm (bien que je ne connaisse aucune application qui
s'en serve, en pratique). En revanche, le dimensionner à tout petit ne pose
pas grand problème.
/dev/shm est, par exemple, utilisé par qemu...
tmpfs /tmp tmpfs defaults 0 0
Il faut ajouter une ligne comme ça, pas remplacer la précédente.
puis de changer le répertoire '/var/tmp' en lien vers '/tmp'.
Ça, ça peut se faire sans trop de problème.
Si je comprends bien l'auteur déconseille de surdimensionner une
instance tmpfs sous peine de planter la machine. Alors avant de faire
une boulette j'aimerais savoir ce que vous en pensez.
Je n'ai jamais eu de problème avec ça. Il faudrait vérifier auprès de lkml
si c'est encore d'actualité.
Je pensais donc qu'il suffisait de remplacer la ligne
tmpfs /dev/shm tmpfs defaults 0 0
Non, il te faut le /dev/shm (bien que je ne connaisse aucune application qui s'en serve, en pratique). En revanche, le dimensionner à tout petit ne pose pas grand problème.
/dev/shm est, par exemple, utilisé par qemu...
tmpfs /tmp tmpfs defaults 0 0
Il faut ajouter une ligne comme ça, pas remplacer la précédente.
puis de changer le répertoire '/var/tmp' en lien vers '/tmp'.
Ça, ça peut se faire sans trop de problème.
Si je comprends bien l'auteur déconseille de surdimensionner une instance tmpfs sous peine de planter la machine. Alors avant de faire une boulette j'aimerais savoir ce que vous en pensez.
Je n'ai jamais eu de problème avec ça. Il faudrait vérifier auprès de lkml si c'est encore d'actualité.
l'indien
On Wed, 17 Aug 2005 15:30:03 +0000, Nicolas George wrote:
batyann811 wrote in message <4303544a$0$3126$:
Je pensais donc qu'il suffisait de remplacer la ligne
tmpfs /dev/shm tmpfs defaults 0 0
Non, il te faut le /dev/shm (bien que je ne connaisse aucune application qui s'en serve, en pratique).
Il parait que la glibc en dépend. Je ne sais pas pour quoi faire...
[...]
On Wed, 17 Aug 2005 15:30:03 +0000, Nicolas George wrote:
batyann811 wrote in message <4303544a$0$3126$8fcfb975@news.wanadoo.fr>:
Je pensais donc qu'il suffisait de remplacer la ligne
tmpfs /dev/shm tmpfs defaults 0 0
Non, il te faut le /dev/shm (bien que je ne connaisse aucune application qui
s'en serve, en pratique).
Il parait que la glibc en dépend. Je ne sais pas pour quoi faire...