it-swarm.it

Buon filesystem per / tmp?

Sto pensando di avere/tmp sulla sua stessa partizione ... quale sarebbe un buon filesystem con cui formattarlo?

Il motivo per cui lo chiedo è perché i dati archiviati in/tmp non sono permanenti, quindi non ho bisogno di journaling, un indice di fantasia o altro.

31
Nathan Osman

A volte trovo che spostare /tmp su ram (tmpfs) sia la soluzione migliore (specialmente sulle mie configurazioni che usano molta roba intensiva su disco IO - MySQL, ecc.) Se hai abbastanza RAM per alimentarlo.

27
Marco Ceppi

Ci sono diverse buone scelte qui:

  1. tmpfs: è un filesystem che archivia i suoi file nella RAM. Questo non significa che il filesystem consumerà tutta la tua RAM. Invece prende solo quella quantità di cui ha davvero bisogno. Di solito sono necessari solo alcuni MB. Se lo utilizzerai, aggiungi una riga come: none /tmp tmpfs size=64M,mode=1777 0 0 al tuo /etc/fstab. È possibile modificare size in un valore che ti piace. Se pensi che ad un certo punto sia troppo basso, puoi usare mount per aumentare la dimensione: mount -t tmpfs tmpfs /tmp -o size=128M,mode=1777,remount. Le dimensioni verranno aumentate in posizione senza eliminare i file esistenti.
  2. ext2/: Nella tua domanda hai detto che non hai bisogno di funzioni fantasiose. Tuttavia consiglierei di usare un diario. Perché se usi ext2 e hai un /tmp abbastanza grande, ci vorrebbe del tempo per controllarlo. ext3 si avvia molti casi più velocemente. Pertanto suggerirei l'uso del journaling.
  3. ext4, reiserfs etc .: Alcuni software usano /tmp per archiviare grandi quantità di piccoli file. Quindi in alcuni casi non ci sono più blocchi liberi e il filesystem è pieno. ext4 e reiserfs memorizzano i file in modo diverso. Quindi potrebbe essere una buona scelta usare quelli per il tuo /tmp.

Se il tuo computer funziona a lungo, è una buona idea eliminare i file non utilizzati in /tmp. tmpreaper è una soluzione che lo fa per te.

Tuttavia la mia prima scelta sarebbe usare tmpfs.

25
qbi

Se non lo desideri, probabilmente mangia RAM, Lo eseguivo come ext2. Non c'è motivo di mangiare il piccolo successo prestazionale del journaling per un filesystem di cui i dati non ti interessano (non dovrebbero interessarti) durante i riavvii.

In realtà, grattalo, probabilmente dovresti usare ext4 e disabilitare il suo journal, dovrebbe essere più veloce di ext2. Formattalo ext4 e incollalo in fstab con l'opzione mount data=writeback.

7
Nicholas Knight

L'uso di tmpfs dovrebbe andare bene per le tue esigenze, a condizione che tu abbia installato RAM adeguato .

Detto questo ... qualcosa che dovrebbe essere considerato riguardo all'uso di un ramdisk per /tmp (questo tratto da un post precedente altrove ):

  • / Tmp dovrebbe trovarsi su un'area del disco reale o essere implementato fondamentalmente sull'area SWAP (o tmpfs)?

Quando è molto usato, questa è una tentazione: "inseriremo/tmp in un disco RAM, accelererà l'accesso e quando il sistema si riavvierà/spegnerà, non c'è nulla da ripulire" . Tuttavia, se stai pensando di implementare lo spazio temporaneo come un disco RAM che verrà scambiato, prenderei in considerazione le ramificazioni dell'uso dello spazio di scambio del tuo sistema da parte di altri programmi. Se lo swap è presente come una forma di "overflow di emergenza" per quando il sistema è in gravi difficoltà e ne ha bisogno, l'ultima cosa di cui hai bisogno è avere lo spazio di swap consumato da un processo in fuga/tmp, consumando memoria, causando pressione sul VM sottosistema per passare al disco. Tra l'attività di scambio e lo streaming I/O aggiuntivo nel disco RAM (che a sua volta può far sì che ulteriori page-in soddisfino un seek()) il sistema diventerà rapidamente associato a I/O.

6
Avery Payne

L'uso di ext4 con opzioni di mount specifiche dovrebbe andare bene. Utilizzare le seguenti opzioni di montaggio:

barrier=0 : Significantly improves file write operations in some scenarios
noatime : Don't update file last access time, you don't need this on /tmp files and it should help with write operations performance.
5
João Pinto

Sono contento di ext4. Puoi giocare con alcune opzioni di mount se ti piace modificare o usare tmpfs se hai un sacco di RAM.

3
Michał Šrajer

In risposta a quelli che chiedono perché vorresti una partizione/tmp separata, sono sicuro che ci sono molti motivi, come alcuni hanno già affermato, ma uno che trovo particolarmente rilevante oggi è che se stai eseguendo/su un SSD, vuoi minimizzare le scritture su quell'unità, quindi spostare/tmp è una buona idea poiché è un'area del filesystem che tende a cambiare molto.

2
Matt Smith

Penso che tmpfs possa essere una pessima opzione perché di solito/tmp è scrivibile dal mondo, quindi chiunque può riempirlo e se si riempie occuperà tutta la tua memoria e il tuo server rallenterà

0