这官方用户文档懒得说它的bcache
结构和安装方式。.ko
使用 构建后,源根目录中没有文件make
。我推测它是官方内核树的一部分。
CONFIG_BCACHE=y
在自定义构建中设置后,.config
没有bcache.ko
内核模块/lib/modules/4.1-rc7/
,因此bcache
无法工作(或者它应该在没有此类模块的情况下工作 - 然而 - 但根本就不行,但这又只是猜测)。
我有bcache-tools
用于用户空间和缓存操作的。然而,我需要一个内核模块来使缓存工作。
答案1
来自主页:
Bcache已合并到主线Linux内核中;对于最新的稳定 bcache 版本,请使用最新的 3.10 或 3.11 稳定内核。
对于用户空间工具,
git clone <http://evilpiepirate.org/git/bcache-tools.git>
如果您使用的是 3.11 或更高版本,则您已经拥有 bcache (除非在您的发行版版本中禁用)。
Agrep BCACHE /boot/config-$(uname -r)
应该足以知道它是否已启用。
答案2
Bcache 可以配置为模块,也可以内置到内核映像中。在文件中.config
,如果您看到CONFIG_BCACHE=y
,则表示该功能已内置到内核映像中。如果您看到CONFIG_BCACHE=m
,则表示 bcache 可用作模块,因此编译将生成一个.ko
需要加载才能使用该功能的文件。如果您看到CONFIG_BCACHE=n
或CONFIG_BCACHE
根本没有,则表示该功能根本没有编译。
在您的情况下,您有CONFIG_BCACHE=y
,因此该功能包含在内核映像中。不涉及模块文件。
该文档没有提及任何有关内核代码安装的信息,因为除了您已经完成的在内核配置中启用它之外,没有任何必需的安装步骤。
如果启动内核时 bcache 功能不起作用,那就是一个问题,但您没有在问题中提供任何有助于解决该问题的信息。确保您启动了正确的内核。如果您确定这一点,请提出一个新问题,解释您做了什么以及什么不起作用。加载该功能本身不会执行任何操作,您需要使用用户空间工具配置设备并注册它。