在Linux中如果需要挂载EFS文件系统,如果直接指定 -t efs ,那么需要先安装 EFS客户端,否则会收到如下报错:
mount: /tmp/efs: unknown filesystem type 'efs'.
在 Amazon Linux 2 和 Amazon Linux 上安装 amazon-efs-utils 可以直接使用如下的命令即可
yum install -y amazon-efs-utils
如果你不想从亚马逊 Linux 或亚马逊 Linux 2 AMI 软件包存储库获取该软件包,也可以在上获得GitHub。amazon-efs-utils
克隆软件包后,您可以amazon-efs-utils使用以下方法之一进行构建和安装,具体取决于 Linux 发行版支持的软件包类型:
本文同样合适于:亚马逊 Linux、亚马逊 Linux 2 和 OpenSUSE 或 SLES 以外的 Linux 发行版进行构建和安装(笔者这里是用到Redhat 8.x 操作系统上)
1、需要先安装 git 命令,用以从github上拉取代码
yum -y install git
2、从GitHub使用以下命令,将amazon-efs-utils克隆到本地
git clone https://github.com/aws/efs-utils
接下来就是需要生成和安装 amazon-efs-utils
RPM 软件包
3、安装生成 rpm 软件包的先决依赖环境软件包
yum -y install make yum -y install rpm-build
4、进入到amazon-efs-utils程序包的目录,生成amazon-efs-utils的rpm软件包
[root@qq-5201351 ~]# cd efs-utils/ [root@qq-5201351 efs-utils]# make rpm
最后就可以在 build 目录中看到 amazon-efs-utils-1.35.0-1.el8.noarch.rpm 软件包了(文件名根据版本不同会略有差异),将这个安装到系统就可以了
5、最后挂载:可以挂载整个文件系统,也可以挂载,接入点(Access points),文件系统,是会包含接入点的
mount -t efs -o tls fs-0bccb49e710ec976e:/ /usr/data
mount -t efs -o tls,accesspoint=fsap-0df464b4f03235096 fs-0bccb49e710ec976e:/ /usr/app/trans
注意:要能挂载到文件系统,还需要为 【文件系统】--> 【网络】为每一个可用区的目标,创建一个安全组,需要放行 2049/TCP 端口
如果是挂载接入点,可能需要在创建接入点时,配置 根目录创建权限 - (可选) ,否则可能会看到如下报错
b'mount.nfs4: access denied by server while mounting 127.0.0.1:/'
补充:至此,已经能使用efs正常挂载EFS系统了,但更是建议后续如下的完善操作
尊重别人的劳动成果 转载请务必注明出处:https://www.cnblogs.com/5201351/p/17665465.html
作者:一名卑微的IT民工
出处:https://www.cnblogs.com/5201351
本博客所有文章仅用于学习、研究和交流目的,欢迎非商业性质转载。
由于博主的水平不高,文章没有高度、深度和广度,只是凑字数,不足和错误之处在所难免,希望大家能够批评指出。
博主是利用读书、参考、引用、复制和粘贴等多种方式打造成自己的文章,请原谅博主成为一个卑微的IT民工!