GNU/Linux >> Tutoriels Linux >  >> Linux

Comment puis-je modifier la quantité et la taille des disques RAM Linux (/dev/ram0 - /dev/ram15) ?

Temps de compilation du noyau

Il existe deux options de configuration du noyau que vous pouvez définir dans votre .config fichier :

CONFIG_BLK_DEV_RAM_COUNT=1
CONFIG_BLK_DEV_RAM_SIZE=10485760

Cela a configuré mon noyau pour créer un disque RAM de 10 Go au démarrage.

Remarques :

  • CONFIG_BLK_DEV_RAM_SIZE est en Ko.
  • N'indiquez pas plus de mémoire que vous n'en avez réellement sur votre ordinateur.
  • En menuconfig regardez sous Pilotes de périphériques-> Bloquer les périphériques.

Temps de démarrage

Vous pouvez spécifier la taille des disques RAM que vous créez via le paramètre de démarrage du noyau ramdisk_size . Par exemple :

kernel /vmlinuz-2.6.32.24 ro root=LABEL=/ rhgb quiet ramdisk_size=10485760

Maintenant, je peux démarrer ma machine et y créer un système de fichiers, le monter et l'utiliser exactement comme un périphérique bloc.

# mkfs.xfs /dev/ram0
# mount /dev/ram0 /mnt/ramdisk

Origine :

  1. http://www.vanemery.com/Linux/Ramdisk/ramdisk.html [mort]
  2. https://www.kernel.org/doc/Documentation/blockdev/ramdisk.txt

Vous devriez utiliser tmpfs pour cela à la place.

mount -t tmpfs -o size=10g none /mnt/point

Pour créer un disque RAM volumineux après le démarrage sans modifier les paramètres du noyau. Utilisez tmpfs, créez un fichier, montez-le via une boucle et montez-le via un système de fichiers :

mount -t tmpfs -o size=200M tmpfs temp/
cd temp/
dd if=/dev/zero of=disk.img bs=1M count=199
losetup /dev/loop0 disk.img
mkfs.ext4 /dev/loop0
cd ..
mount /dev/loop0 temp2/

Probablement un peu de pénalité de performance en passant par plusieurs couches différentes... mais au moins ça marche.


Linux
  1. Linux :Différence entre /dev/console , /dev/tty et /dev/tty0 ?

  2. Quelle est la portabilité de /dev/stdin, /dev/stdout et /dev/stderr ?

  3. Linux – Que signifie la lettre « u » dans /dev/urandom ?

  4. Comment mapper les périphériques /dev/sdX et /dev/mapper/mpathY à partir du périphérique /dev/dm-Z

  5. Que sont les fichiers /dev/zero et /dev/null sous Linux

tty (/dev/tty ) vs pts (/dev/pts) sous Linux

Quand utiliser /dev/random contre /dev/urandom ?

Quand dois-je utiliser /dev/shm/ et quand dois-je utiliser /tmp/?

Linux :Différence entre /dev/console , /dev/tty et /dev/tty0

noyau :désactiver /dev/kmem et /dev/mem

Différences entre /dev/sda et /dev/sda1