源码编译安装 ganesha
源码编译安装 ganesha
简介
- 系统环境:CentOS 7.5
- ceph:luminous
- nfs-ganesha:v2.6 stable
安装步骤
安装依赖
- 首先需要安装编译会用到的公共库
|
|
如果是使用 Ubuntu 系统,主要有以下几个包不同
gcc-c++->g++libuuid-devel->uuid-devnfs-utils->nfs-kernel-server
- 如果要生成
FSAL_RGW模块,需要安装librgw2-devel
|
|
- 如果要生成
FSAL_CEPH模块,需要安装libcephfs1-devel
|
|
源码下载
克隆源码到本地
|
|
编译
cmakenfs-ganesha源码- 如果需要生成
FSAL_RGW模块,则在编译选项中添加:-DUSE_FSAL_RGW=ON - 如果需要生成
FSAL_CEPH模块,则在编译选项中添加:-DUSE_FSAL_CEPH=ON
- 如果需要生成
|
|
cmake的过程中会有以下输出
|
|
请确保 -- USE_FSAL_CEPH 为 ON ,以及 -- USE_FSAL_RGW 为 ON
- 在
build目录下进行编译和安装
|
|
PS: 在
make install生成的输出中,可以看到:– Up-to-date: /usr/share/doc/ganesha/config_samples/rgw.conf … – Up-to-date: /usr/share/doc/ganesha/config_samples/ceph.conf
这两个文件就是配置将
RGW和CephFS配置为ganesha-nfs的配置模板
配置 service
将 nfs-ganesha 源码目录下的 nfs-ganesha/src/scripts/systemd 目录下的 service 文件复制到系统 /usr/lib/systemd/system/ 目录下,将 nfs-ganesha 配置为系统服务让 systemd 接管,然后设置开机自启
|
|
The DBUS Interface
配置系统 DBUS 服务(编译安装需要手动执行这个过程)
- 将文件
src/scripts/ganeshactl/org.ganesha.nfsd.conf复制到该目录/etc/dbus-1/system.d/。需要重新启动 DBus 服务(messagebus)才能加载此文件
|
|
- 重启
nfs-ganesha服务,因为与 DBus 服务器的连接只在服务初始化时执行,所以如果之前忘了复制org.ganesha.nfsd.conf文件就需要重启nfs-ganesha服务
|
|
- 可查看
nfs-ganesha日志观察服务是否正常启动运行,通常是/var/log/ganesha/ganesha.log
|
|
编辑配置文件
其实这一步可以略过的,只是为了后面 Check Export 能检测到一个挂载点而已,如果这一步不配置,
manila也会通过 SSH 连接到主机对每个 share 进行单独的配置文件的添加
编辑 /etc/ganesha/ganesha.conf 文件,写入以下内容
|
|
启动 nfs-ganesha 服务
- 编译安装有个坑,就是少了个
nfs-ganesha-ceph包,导致manila传递过来的命令无法正常执行,需要单独使用yum命令进行安装(因为我没找到源码地址,也没法自己编译安装了,所以编译安装nfs-ganesha还不如直接用添加源的方式进行安装···)
经测试这步可以省略:
|
|
- 执行以下命令重新启动
nfs-ganesha
|
|
- 使用以下命令查看
nfs-ganesha服务是否正常运行
|
|
Check Export
使用以下命令检测挂载点
|
|
参考链接
- https://segmentfault.com/a/1190000012348558
- https://github.com/nfs-ganesha/nfs-ganesha/wiki/Dbusinterface
- https://docs.openstack.org/manila/queens/contributor/ganesha.html
源码编译安装 ganesha的更多相关文章
- SSH/SSL 源码编译安装简易操作说明
环境:CentOS 6.7 安全加固需求,由于某盟扫描系统主机有SSL系列漏洞,客户要求必须修复: 解决方案:将SSH/SSL升级到最新版本,删除SSL旧版本(实测不删除旧版本某盟扫描无法通过). 当 ...
- 源码编译安装 MySQL 5.5.x 实践
1.安装cmakeMySQL从5.5版本开始,通过./configure进行编译配置方式已经被取消,取而代之的是cmake工具.因此,我们首先要在系统中源码编译安装cmake工具. # wget ht ...
- 烂泥:mysql5.5数据库cmake源码编译安装
本文由秀依林枫提供友情赞助,首发于烂泥行天下. 以前也写过一篇有关mysql5.0源码编译的文章,该文章为<烂泥:mysql5.0数据库源码编译安装>.但是MySQL自5.5版本以后,就开 ...
- Centos7.X 源码编译安装subversion svn1.8.x
说明:SVN(subversion)的运行方式有两种:一种是基于Apache的http.https网页访问形式:还有一种是基于svnserve的独立服务器模式.SVN的数据存储方式也有两种:一种是在B ...
- centos6.5环境源码编译安装mysql5.6.34
centos6.5环境源码编译安装mysql5.6.34 源码下载地址http://dev.mysql.com/downloads/mysql/5.6.html#downloads 选择Generic ...
- centos 6.5源码编译安装subversion 1.8.10
一.简介 CentOS 6.5的yum源可以安装的SVN客户端版本太低了,1.6.11,所以需要升级到1.8.10,而官网有没有找到1.8.10的安装包,只能选择源码编译安装. 二.安装步骤 参考官网 ...
- Linux环境PostgreSQL源码编译安装
Linux环境PostgreSQL源码编译安装 Linux版本: Red Hat 6.4 PostgreSQL版本: postgresql-9.3.2.tar.gz 数据存放目录: /var/post ...
- 总结源码编译安装mysql
最近在学习源码编译安装LAMP.LNMP时,一直遇到一个难题,就是就是mysql无论怎么源码编译安装,到最后启动服务都提示"Starting MySQL.The server quit wi ...
- Linux下源码编译安装rpy2
R(又称R语言)是一款开源的跨平台的数值统计和数值图形化展现工具.rpy2是Python直接调用R的第三方库,它可以实现使用python读取R的对象.调用R的方法以及Python与R数据结构转换等.这 ...
随机推荐
- dubbo中出现can not be invoked any more
具体错误示例如下 从错误看,是客户方发起调用时,dubbo会去检查本地的invoker instance,如果发现invoker已经是destroy status,则直接抛出上面的异常,下面先来说下平 ...
- docker swarm 过滤器affinity 限制副本不会出现在同一个节点上
affinity:container!=容器服务名称(可以是正则) 举个例子:stack_ds.yaml # cat stack_dsc.yaml version: '3.0' services: t ...
- C++中对封装的语法支持——this指针
this指针 1.this概念 (1) This指针就是用于成员函数区分调用对象. (2) This指针由编译器自动传递,无须手动传递,函数内部隐藏了this指针参数,本类类型的指针. (3) 编译器 ...
- Geometry 判断几何是否被另一个几何/线段分割成多段
如下图,如何判断几何多边形A被多边形B,切割为多段几何? 几何A被几何B切割 1. 获取几何A与几何B的交集C var intersectGeometry = new CombinedGeometry ...
- linux日常笔记(1)
1.SELlinux SELinux是 美国国家安全局 (NSA) 对于 强制访问控制的实现 =>可以使root受限的权限 关闭SELinux=>修改配置文件,永久生效; sed -i ' ...
- PHP 向数组头部插入数据
PHP 向数组头部插入数据 函数: array_unshift() 示例: $s = array('a' => 0, 'b' => 3); array_unshift($s, '5'); ...
- mysql数据库E-R图
学会绘制E-R图 绘制E-R图首先要了解什么是实体,什么是属性,什么是联系. 1.首先实体是指现实世界中具有区分其他事物的特征或属性与其他实体有联系的实体,针对于数据库中的表而言实体是指表中一行一行特 ...
- .Net Core 使用NPOI导入数据
一.搭建环境 1.新建ASP.NET Core Web 应用程序 2.选择API 3.引用Swashbuckle.AspNetCore NuGet 包进行安装. Swashbuckle.AspNetC ...
- PostgreSQL各数据类型的内置函数
参考<PostgreSQL实战> 3.1.2 数字类型操作符和数学函数 PostgreSQL 支持数字类型操作符和丰富的数学函数 例如支持加.减.乘.除.模取取余操作符 SELECT 1+ ...
- su root
1. 命令行方式 ansible zabbix_agents --become --become-method=su -K -m shell -a 'whoami' 2. 变量方式 [zabbix_a ...