关于统信UOS不能使用“modprobe brd”创建内存盘的问题

本文介绍了如何在统信UOS系统中,由于内核限制导致的内存盘容量问题,通过修改启动参数GRUB_CMDLINE_LINUX_DEFAULT中的ramdisk_size,实现8个内存盘文件大小的扩展,避免频繁编译内核。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

我自用的电脑内存都比较大,因此很早就养成了使用内存做临时盘的习惯

内存盘的好处很多,比如将系统临时文件夹、浏览器缓存文件等设置到内存盘,不仅可以提升速度,还可以减少对固态硬盘的写入,提升固态盘的使用寿命。。

问题

在大多数Linux系统中,可以使用下面这条命令来创建内存盘:

#创建一个最大2G的内存盘
sudo modprobe brd rd_nr=1 rd_size=2048000

命令执行成功后,会生成一个文件:/dev/ram0  将它格式化、挂载即可使用。

统信UOS不知从哪个版本开始,开机后会自动生成ram0-ram7 8个文件,而上面那条命令执行后没有反应。这8个文件,每个文件最大只有32M,根本不实用。。

探索

执行命令:

sudo blockdev --report

可以看到它们的一些信息:

但是blockdev命令修改不了它们的大小。

将它们删除,再执行sudo modprobe brd命令也不会有任何作用。

查看了一下统信的内核编译参数,看到了两个参数:

CONFIG_BLK_DEV_RAM_COUNT=8
CONFIG_BLK_DEV_RAM_SIZE=32768

显然就是它们,原来ram0-ram7的文件是由内核生成的。

如果要修改它们的大小,难不成要重新编译内核?

改一次大小,就要编译一次内核,这显然是不科学的!

解决

既然是内核的东西,那是否可以通过调整启动参数来改变?

答案是肯定的!

使用文本编辑器修改 /etc/default/grub 文件:

sudo deepin-editor /etc/default/grub  #注意,deepin-editor 是统信、深度才有的编辑器,其它系统请修改

找到 GRUB_CMDLINE_LINUX_DEFAULT 开头的一行,在它后面的参数中加入:

#单位为KB
ramdisk_size=2048000

如图:

保存文件后,执行命令:

sudo update-grub

重完成后重启电脑。

再用blockdev命令查看一下:

发现ram0-ram7的大小都变成了2097152000(2G)

大功告成,将它们格式化后挂载即可使用。

答疑

问题1:8个内存盘文件都是2G大小,那是否开机内存就会被占用16G?

答:这是不会的!ram文件的大小,决定的是它们的上限。如果你不使用它们,那它们是不会占内存的!如果只使用其中一个,那它最多就占2G..

问题2:ram文件的数量是否也可以使用参数修改?

答:按道理、逻辑说是可以的,文心一言告诉我一个参数:ramdisk_count  ,而chatGPT说没有参数可以修改。实际测试发现 ramdisk_count 参数并不能修改...

目前来看,想要修改数量,需要重新编译内核

问题3:modprobe brd命令还能用吗?

答:我的目的只是使用内存盘,既然系统已经帮我创建好了,我又何必去纠结它呢?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

skyyx2002

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值