Risposte:
La tecnologia è integrata nel kernel, non hai bisogno di strumenti extra. In effetti, hai già alcuni dischi RAM (che non dovresti usare, sono riservati per il sistema), che puoi vedere facendo
grep -w tmpfs /proc/mounts
Per configurare un disco RAM da 2 GB montato /ramdisk, aggiungere la seguente riga a /etc/fstab:
ramdisk /ramdisk tmpfs mode=1777,size=2g
Quindi montare il disco con il comando mount /ramdisk(questo verrà fatto automaticamente al riavvio).
La dimensione indicata è massima, il disco utilizza solo la quantità di memoria dei file in essa contenuti.
È possibile cambiare /tmpper essere un disco RAM. Nella /etc/fstabriga sopra, inserisci /tmpinvece di /ramdisk, quindi riavvia.
La prima volta che si riavvia dopo /tmpessere passati a un disco RAM, i file presenti /tmpverranno nascosti. È innocuo, tranne per il fatto che stanno sprecando un po 'di spazio su disco. Puoi pulirli ( dopo aver riavviato con /tmpsul disco RAM) facendo
mount --bind / /mnt
rm -r /mnt/tmp/* /mnt/tmp/.*
umount /mnt
Il mount --bindcomando crea /mntuna vista duplicata del filesystem di root; ma mentre il disco RAM ora oscura /tmpnella vista radice, nulla è oscuro /mnt/tmp.
AGGIUNTO : è possibile passare /tmpa un disco RAM senza riavviare, è solo un po 'più complicato. Aggiungi la riga /etc/fstabcome sopra, quindi esegui i seguenti comandi:
mkdir /tmp.old
mount --bind /tmp /tmp.old
mount /tmp
cd /tmp
ln -s /tmp.old/* /tmp/.* .
Quindi elimina /tmp.olddopo il tuo prossimo riavvio.
La ragione per cui non puoi semplicemente spostare i file da /tmp.olda /tmpè che alcuni programmi critici hanno file aperti /tmp, ad esempio su /tmp/.X11-unix/X0cui il server X è in ascolto e ogni programma GUI si apre all'avvio. Spostare un file in un diverso filesystem significa copiarlo ed eliminare quello vecchio, quindi si finirebbe con il server X ancora in ascolto /tmp.old/.X11-unix/X0ma i client X contattano /tmp/.X11-unix/X0invano. Su un server, potresti fare una mossa se stai attento.
/tmpa tmpfs. Non è necessario e ho modificato la mia risposta per spiegare come farlo, ma è più complicato. Non è mkfscoinvolto perché non c'è spazio di archiviazione sottostante da preparare, il kernel gestisce tutto.
/tmpsul disco aumenta la frequenza delle sincronizzazioni), ma questa è un'impressione soggettiva inaffidabile. Non ho mai provato a fare un benchmark.