fuse的手动编译安装

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_37788558/article/details/84373885

本文是   “大量数据迁移到对象存储服务过程中使用联合文件系统的迁移方案” 的附属文章,用于记录。

首先介绍下fuse:

       FUSE(用户空间文件系统)作为类UNIX系统平台上可加载的内核模块,允许非特权用户创建功能完备的文件系统,而不需要重新编译内核。FUSE模块仅仅提供kernel模块的接入口,而本身的主要实现代码位于用户空间中。对于读写虚拟文件系统来说,FUSE是个很好的选择。

       FUSE起初是为了研究AVFS(A Virtual Filesystem)而设计的,而现在已经成为SourceForge的一个独立项目,目前适用的平台有Linux, FreeBSD, NetBSD, OpenSolaris和Mac OS X。官方的linux kernel版本到2.6.14才添加了FUSE模块,因此2.4的内核模块下,用户如果要在FUSE中创建一个文件系统,需要先安装一个FUSE内核模块,然后使用FUSE库和API来创建。

详细信息可参考:https://github.com/libfuse/libfuse

运维同学提供的服务器系统版本较低,yum安装有问题,很多依赖也没有安装,部分安装失败通过查阅需要安装的依赖已解决,部分通过跟换yum源后解决了,但fuse一直安装失败(fuse-dev成功),最终通过查阅进行编译安装(未斟酌fuse的版本选择)。

安装依赖

yum install automake  gcc-c++ git libcurl-devel libxml2-devel make openssl-devel

安装 fuse

# yum remove -y fuse
# wget https://github.com/libfuse/libfuse/releases/download/fuse_2_9_4/fuse-2.8.4.tar.gz
# tar -zxvf fuse-2.8.4.tar.gz
# cd fuse-2.8.4
# ./configure
# make
# make install
# export PKG_CONFIG_PATH=/usr/lib/pkgconfig:/usr/lib64/pkgconfig/:/usr/local/lib/pkgconfig
# modprobe fuse
# echo "/usr/local/lib" >> /etc/ld.so.conf
# ldconfig
# pkg-config --modversion fuse   
2.8.4   //看到版本表示安装成功

猜你喜欢

转载自blog.csdn.net/qq_37788558/article/details/84373885