Linux

可以設置記憶體盤的大小嗎?

  • July 20, 2019

當我做

yum install MAKEDEV
MAKEDEV ram
fdisk -l /dev/ram

我知道它是16MB。

我正在使用 MAKEDEV 來獲取塊設備而不是 tmpfs。

問題

是否可以將其設置為例如 1GB?

用於 ramdisk 的塊設備驅動程序在驅動程序載入時設置了大小,使用參數指定分配給每個 ramdiskramdisk_size=的塊數(預設 blocksize = 1024 字節,另見)。ramdisk_blocksize=如果您將其作為模組載入,則可以在載入模組時使用該參數,否則如果它內置在核心中,則必須將該系統作為核心選項引導。

似乎在 2.6 中的某個時刻,ramdisk 驅動程序發生了更改,因此當您第一次訪問它時,ramdisk 的大小被永久設置(而不是使用核心選項)。

關於將其設置為 1GB,我認為這是可能的,但是一旦訪問了 ramdisk,它將佔用 RAM 中的所有 1GB 並且無法換出(與 tmpfs 不同,它可以在必要時進行交換)。也沒有辦法在不重新啟動的情況下解除安裝 ramdisk 並釋放記憶體。

引用自:https://serverfault.com/questions/461956