Perché / tmp non usa tmpfs?


17

Ho un sacco di RAM e ne uso pochissimo. Ho anche registrato alcuni screencast con gtk-recordmydesktop, che per impostazione predefinita salva /tmpdurante la registrazione. Ho pensato che avrebbe significato archiviare nella RAM il più possibile, ma poi ho effettivamente verificato e scoperto che /tmpnon è montato con tmpfs. Perché?


Risposte:


16

Penso che tu ti sia risposto da solo. Molti programmi usano /tmpper archiviare file temporanei e possono essere enormi.

Ad esempio, Brasero utilizza per impostazione predefinita quella directory per memorizzare un file di immagine di un CD / DVD, che può avere una dimensione di 4,7 GB. Non vale la pena rischiare un grave rallentamento (o un blocco del sistema) in una situazione di memoria insufficiente se la RAM e lo scambio sono pieni.

Per utenti esperti non è un problema cambiare le impostazioni predefinite di alcune applicazioni e montarle /tmpcome tmpfs. Per un uso generale non vale la pena rischiare.


1
E, penso che potresti arrabbiarti un po 'e maledire gli sviluppatori se registrassi alcuni grandi screencast e poi, dopo un'interruzione di corrente o un problema con il sistema, li perdessi tutti. ;)
organizzare il

E le cose in / tmp potrebbero persino risiedere nella RAM e non toccare mai il disco se usi ext4.
LasseValentini,

@Fraekkert: cosa intendi? Perché ext4? Perché mai? Puoi elaborare per favore?
organizzare il

1
Non è univoco per ext4, ma è a causa dell'allocazione ritardata . In sostanza significa che i file non sono necessariamente scritti su disco solo perché un programma dice al SO di farlo. Invece è conservato nella ram per un rapido accesso. Se in seguito il file viene eliminato relativamente rapidamente, non raggiungerà mai il disco. Dai un'occhiata a Wikipedia se hai bisogno di maggiori informazioni.
Lasse Valentini,

1
Per riferimento, ecco un commento che spiega in dettaglio l'argomento 5/30 secondi: bugs.launchpad.net/ubuntu/+source/linux/+bug/317781/comments/45
lxgr

10

Che dire della compressione zram?

Lo spazio disponibile è superiore a 256 Mbyte, dipende dal tipo di file.

modprobe zram num_devices=1 
# max ram usage = 256 Mbytes
echo 262144 > /sys/block/zram0/disksize
mke2fs -q -m 0 -b 4096 -O sparse_super -L zram /dev/zram0
mount -o relatime,noexec,nosuid /dev/zram0 /tmp

Questa è in realtà un'idea piuttosto interessante ... lo proverò :)
Piskvor il

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.