Come creare un Ramdisk in Linux

Come creare un Ramdisk in Linux
Un Ramdisk è uno spazio di archiviazione volatile definito nella memoria RAM. L'uso di questa funzione aumenta le prestazioni di elaborazione dei file dieci volte rispetto ai migliori dischi rigidi SSD. L'implementazione di un Ramdisk è molto vantaggioso per gli utenti le cui attività richiedono quantità significative di risorse hardware. Inoltre, i redattori e i giocatori dei media possono godere di questa implementazione.

Un Ramdisk è uno spazio volatile, tutte le informazioni memorizzate in esso andranno perse se il dispositivo viene spento o si riavvia.

In Linux, i Ramdisks possono essere creati utilizzando il monte di comando e i filesystems TMPFS e RAMFS. Questo tutorial mostra come creare un Ramdisk in Linux usando entrambi.

TMPFS e RAMFS:

TMPFS: TMPFS è un file system temporaneo memorizzato nella memoria RAM (e/o nella memoria di scambio). Specificando questo file system con l'argomento -T del comando montare, È possibile assegnare risorse di memoria limitate a un file system temporaneo. Di conseguenza, le applicazioni archiviate in questo filesystem funzionano più volte più velocemente di quanto farebbero sui dispositivi di archiviazione convenzionali, inclusi i dispositivi CSSD.

Ramfs: RAMFS è simile a TMPFS, ma l'utente non può garantire un limite e la risorsa allocata cresce in modo dinamico. Se l'utente non controlla il consumo di RAMFS, RAMFS continuerà a utilizzare tutta la memoria fino a quando non si blocca o si blocca il sistema.

Tmpfs vs. Ramfs: Non vi è alcuna differenza notevole tra le prestazioni di TMPF e il suo predecessore RAMFS. Il motivo per cui i RAMF vengono sostituiti da TMPFS è il rischio di consumo di RAM illimitato da RAMFS che può portare a un crash di sistema.

Un altro vantaggio di TMPF su RAMFS è la possibilità di utilizzare lo spazio di swap mentre i RAMF sono limitati alla memoria hardware.

Come creare un Ramdisk in Linux usando TMPFS:

Innanzitutto, vediamo la memoria libera che possiamo usare prima di creare un punto di montaggio TMPFS. Per controllare la RAM e lo scambio disponibili, è possibile utilizzare il comando gratuito. Per stampare i risultati in gigabyte, è possibile aggiungere l'argomento -giga, come mostrato nell'esempio seguente:

gratuito --giga

Come puoi vedere nell'output sopra, ho due GB fisici e due nello spazio di scambio.

Ora, crea un punto di montaggio sotto la directory /mnt usando il comando mkdir come mostrato nell'esempio seguente. La scelta del nome del punto di montaggio è arbitraria. Se hai intenzione di utilizzare il Ramdisk per un'applicazione specifica, puoi nominare il punto di montaggio dopo di esso. Nell'esempio seguente lo chiamo /mnt/tmp:

sudo mkdir /mnt /tmp

Ora puoi creare il Ramdisk usando il comando monte. L'esempio seguente mostra come creare un Ramdisk usando TMPFS su 2 GB di RAM/SWAP, sul punto di montaggio/MNT/TMP.
L'argomento -t (tipo) consente di specificare il file system (in questo caso, TMPFS). L'argomento -o (opzioni) viene utilizzato per definire lo spazio per il ramdisk.

Mount -t Tmpfs -O size = 2G TMPFS /MNT /TMP

Il Ramdisk è stato creato in /MNT /TMP.

SSD vs. TMPFS:

Ho copiato un'immagine Ubuntu dalla directory home di un utente alla directory principale nella seguente screenshot.

Usando il tempo di comando per visualizzare i tempi, è possibile vedere il processo di copia ha preso 0:55.290s

Time CP/Home/LinuxHint/Downloads/Ubuntu-20.04.1-Desktop-AMD64.iso .

Nella seguente screenshot, puoi vedere come la copia della stessa immagine Ubuntu ISO a Ramdisk prende 0: 9.424s:

Time CP Ubuntu-20.04.1-Desktop-AMD64.ISO/MNT/TMP/

Come puoi vedere, la differenza è Titanic e il Ramdisk è molto vantaggioso per le attività con grandi quantità di file.

Per rimuovere il Ramdisk, slegalo eseguendo il seguente comando e sostituendo TMP con il punto di montaggio:

umount /mnt /tmp

Creazione di un Ramdisk in Linux usando Ramfs:

La procedura per creare un Ramdisk usando Ramfs è la stessa di TMPFS. Il comando seguente creerà un ramdisk dinamico sul punto di montaggio /MNT /TMP.

Mount -t Ramfs -o size = 4 Ramfs /MNT /TMP

Tmpfs vs. Ramfs:

Ora testiamo le prestazioni RAMFS contro TMPFS e vediamo cosa succede quando ogni tipo Ramdisk raggiunge il limite definito.

Nel primo esempio, creerò un Ramdisk da 2 GB usando TMPFS e proverò a copiare un ISO più grande all'interno:

Mount -t Tmpfs -O size = 2G TMPFS /MNT /TMP
Time CP Ubuntu-20.04.1-Desktop-AMD64.ISO /MNT /TMP

Come puoi vedere, il CP ha restituito un errore perché lo spazio Ramdisk non è sufficiente per l'immagine ISO. Ho assegnato solo 2 GB per il Ramdisk.

Ora, vedi cosa succede quando faccio la stessa procedura usando Ramdisk:

Mount -t Ramfs -o size = 2G Ramfs /MNT /TMP
Time CP Ubuntu-20.04.1-Desktop-AMD64.ISO /MNT /TMP

Come puoi vedere, i RAMF hanno continuato a scrivere in /MNT /TMP anche se ho definito un limite di 2 GB. Questo è uno svantaggio RAMFS perché può appendere un sistema consumando tutta la sua memoria RAM. Al contrario, TMPFS è limitato all'importo della memoria definiamo.

Puoi anche vedere nell'output che l'attività di copia è stata eseguita entro 0: 9.624s, quasi le stesse prestazioni mostrate da TMPFS nel test contro SSD.

Nota: è stata utilizzata la stessa immagine ISO.

Conclusione

La creazione di un Ramdisk è un processo di un minuto con vantaggi significativi per qualsiasi utente che deve elaborare grandi file. L'aumento della velocità di lettura e della scrittura aumenta esponenzialmente sui migliori dischi rigidi sul mercato. Il software portatile può essere eseguito da un Ramdisk, sebbene le modifiche non saranno persistenti. Questa implementazione è molto apprezzata dai redattori dei media i cui compiti richiedono lunghi periodi di conversione dei media.

L'uso di RAMFS può essere rischioso se il sistema si esaurisce le risorse. Ecco perché TMPFS è diventato il primo metodo.

Spero che questo tutorial per creare un Ramdisk in Linux sia stato utile. Continua a seguire il suggerimento Linux per ulteriori suggerimenti e tutorial Linux.