Как загрузить рамдиск сейчас?
Последние ядра сделали модули ramdisk:
CONFIG_BLK_DEV_RAM = т
Какой модуль и где его найти.
Загружается ли во время загрузки из initramfs?
У меня был root на программном RAID1 с SSD и Ramdisk (/dev/ram1)
с записью - в основном на SSD.
CONFIG_BLK_DEV_RAM в исходном ядре является логическим, теперь является модулем?!?!
Есть ли основания для этого изменения?
Благодарю вас
1 ответ
Блок ramdisk модуль называется brd и может быть загружен следующим образом:
sudo modprobe brd rd_size=100000
где rd_size это количество блоков. После этого шага у вас есть устройство /dev/ram0 что вы можете поместить файловую систему в:
sudo mkfs /dev/ram0
и смонтировать.
Другой вариант для RAM-дисков - zram. Когда вы помещаете файл на zram RAM-диск, файл быстро сжимается во время передачи и прозрачно распаковывается во время извлечения. Это может быть полезно в обстоятельствах, когда в вашей системе недостаточно оперативной памяти, необходимой для вашего RAM-диска.
Вот как создать Zram RAM-диск:
Создайте папку, в которую вы будете монтировать RAM-диск:
sudo mkdir /tmp/ramdisk
Измените владельца этой папки, чтобы у вашего пользователя был полный доступ к RAM-диску, когда мы позже его смонтируем:
sudo chown -R yourUserName:yourGroupName /tmp/ramdisk
Сделайте папку неизменной, чтобы случайно не заполнить раздел ОС данными, предназначенными для RAM-диска:
sudo chattr +i /tmp/ramdisk
Загрузите модуль zram:
sudo modprobe zram
Создайте RAM-диск объемом 1 ГБ:
sudo zramctl --find --size 1G
Приведенная выше команда выведет путь к устройству созданного вами RAM-диска. Скорее всего, это будет
/dev/zram0, и это то, что мы предполагаем в будущем.
Отформатируйте RAM-диск в EXT4:
sudo mke2fs -t ext4 -O ^has_journal -L "zram device" /dev/zram0
Смонтируйте RAM-диск в созданную нами неизменяемую папку точки монтирования:
sudo mount /dev/zram0 /tmp/ramdisk
Теперь вы сможете перемещать файлы на RAM-диск, расположенный по адресу
/tmp/ramdisk/.
Если вы закончили играть с ним, размонтируйте его:
sudo umount /tmp/ramdisk/
Наконец, давайте уничтожим RAM-диск и освободим всю используемую память:
sudo zramctl --reset /dev/zram0
Если вы также хотите удалить папку
/tmp/ramdisk, сначала сделайте его изменяемым:
sudo chattr -i /tmp/ramdisk
Теперь вы можете удалить папку:
rm -rf /tmp/ramdisk