RAMDISK 分区没有被内核注册

Posted

技术标签:

【中文标题】RAMDISK 分区没有被内核注册【英文标题】:RAMDISK Partition not getting registered by the kernel 【发布时间】:2017-10-05 02:34:21 【问题描述】:

全部! 所以这两天我一直在调查这个问题。

我有一个 ramdisk,我尝试使用 partedfdisk 对其进行分区。我还尝试使用partprobekpartx 注册它。

lsblk 将我为cow_ram0 创建的分区显示为cow_ram0p1。但是,/dev/cow_ram0p1 文件不存在。

以前有人经历过吗?如果有,你是怎么解决的?

它甚至不必是特定于 ramdisk 的。有没有人在分区时没有出现/dev/ 文件?


现在,关于一些细节(不想被否决而被遗忘):

虚拟磁盘被称为cow_ram0。 所以我首先尝试了这个:fdisk /dev/cow_ram0 我为新分区点击n。 然后,我只需按两次 Enter 即可获得第一个扇区号 2048 和最后一个扇区号,无论最后一个扇区是什么。 然后我点击w 写下所有这些动作。

然后我打电话给lsblk。我没有看到 ramdisk 的分区。 所以我打电话给partprobe,然后是kpartx -u /dev/cow_ram0(因为partprobe没有用,所以我打电话给partprobe,而且哎呀......我正在调查一个问题,所以这不会去掌握......冗余不会伤害)。 现在lsblk 输出实际上包含cow_ram0p1。 所以我尝试挂载它,我得到一个/dev/cow_ram0p1 file doesn't exist 错误。 我用parted -a opt /dev/cow_ram0 -t ext4 primary 0% 100% 而不是上面的fdisk 重复上面的过程。结果相同。 有没有人经历过这种情况?

【问题讨论】:

错误的站点。您正在寻找Unix & Linux 或Super User。本网站是针对与编程相关的问题,而不是一般的操作系统或计算机支持。 道歉。我在 C 中这样做,但我想这没有什么区别。谢谢。 如果不包含代码,则不是编程问题。我在您的帖子中的任何地方都没有看到任何代码指示。看起来都是操作系统终端命令。我错过了什么吗? 你是对的!它是开源的。我会把它贴在 Unix&Linux 上,如果你有兴趣,这里是代码:github.com/utsaslab/crashmonkey/blob/master/code/harness/… 【参考方案1】:

好的。问题是我在插入内核模块时忘记在内核模块中设置一个标志(max_part)。希望你,读者,也犯了同样的错误。

【讨论】:

以上是关于RAMDISK 分区没有被内核注册的主要内容,如果未能解决你的问题,请参考以下文章

内核的ramdisk

内核与ramdisk到底是什么关系

保护SSD,设置Chrome浏览器临时文件夹到ramdisk分区

使用ramdisk内存分区给常用软件加速

自行编译内核,启动内核卡在“loading initial ramdisk”

使用ramdisk启动ubuntu文件系统