本文主要记录在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
问题 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分支编译问题太多,等以后在补充。