bcache-tools代码编译和bcache配置问题总结 - Linux内核之bcache 1.2

本文主要记录在bcache-tools编译和bcache配置过程中遇到的问题,有关bcache配置的方法请通过下面的链接:

编译和安装过程中问题记录。

问题 1: blkid.h: No such file

解决方法:

yum install libblkid-devel

问题 2: Package blkid was not found in the pkg-config search path.

解决方法:

yum install pkg-config

问题3: No package ‘libnih’ found

解决方法:
没有找到可以直接安装的软件,下载源码,编译安装:
http://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/source/SRPMS/l/libnih-1.0.2-12.fc23.src.rpm

问题4: 这个问题让我巨无语,其实包括三个,最后只解决了一个,然后放弃了。

/usr/bin/ld: cannot find -luuid
/usr/bin/ld: cannot find -lblkid
/usr/bin/ld: cannot find -lc
yum install -y uuid-devel.x86_64

解决方法:
之解决了最后一个,是缺少libc的静态编译库,安装就行了:

yum install glibc-static

另外两个,网上都说手动创建软链接就可以了,但是系统里面明明就有啊!?如果有哪位有其他的解决方法,烦请留言告知。

ln -sv lib/libuuid.so.1 bin/libuuid.so

配置bcache问题汇总

问题 1: device is busy。
问题原因: a.目标分区需要在使用前卸载并擦除文件系统;b.目标分区已经被其他bcache占用。
对于第一种情况,先擦除目标分区的文件系统,再进行链接。

#wipefs -a /dev/sd*

对于第二种情况,先注销原有的bcache解除占用再进行格式化,如果注销后仍然提示错误,可以通过–wipe-bcache参数强行格式化。

#make-bcache -C /dev/sdc --writeback --wipe-bcache

问题2: 配置bcache以后找不到bcache的节点

通常这个就是由于内核版本太低导致的,要么升级内核,要么单独更新bcache驱动代码编译模块然后加载。

其他问题:
基本都是内核版本太低或bcache-tools版本太低惹的祸,但是bcache-tools的dev分支编译问题太多,等以后在补充。

你可能感兴趣的:(Linux内核开发笔记,Linux环境编程笔记)