技术标签: linux系统nfs安装配置
Linux系统NFS的安装和配置
相关阅读:
1 安装
需要安装 portmap和nfs-utils这两个包,下载rpm包后用rpm安装或者直接用yum安装都可以。
rpm -ivh portmap-4.0-65.2.2.1.i386.rpm
rpm -ivh nfs-utils-1.0.9-50.el5.i386.rpm
2 配置
配置文件是/etc/exports,如果不存在需要自己创建。
/etc/exports文件内容格式:
[客户端1域名/IP(选项(访问权限,用户映射,其他))] [客户端2域名/IP 选项(访问权限,用户映射,其他)]
NFS主要的选项有3类:
A 访问权限选项
设置输出目录只读:ro
设置输出目录读写:rw
B 用户映射选项
all_squash:将远程访问的所有普通用户及所属组都映射为匿名用户或用户组(nfsnobody);
no_all_squash:与all_squash相反(默认设置);
root_squash:将root用户及所属组都映射为匿名用户或用户组(默认设置);
no_root_squash:与rootsquash相反;
anonuid=xxx:将远程访问的所有用户都映射为匿名用户,并指定该用户为本地用户(UID=xxx);
anongid=xxx:将远程访问的所有用户组都映射为匿名用户组账户,并指定该匿名用户组账户为本地用户组账户(GID=xxx);
C 其它选项
secure:限制客户端只能从小于1024的tcp/ip端口连接nfs服务器(默认设置);
insecure:允许客户端从大于1024的tcp/ip端口连接服务器;
sync:将数据同步写入内存缓冲区与磁盘中,效率低,但可以保证数据的一致性;
async:将数据先保存在内存缓冲区中,必要时才写入磁盘;
wdelay:检查是否有相关的写操作,如果有则将这些写操作一起执行,这样可以提高效率(默认设置);
no_wdelay:若有写操作则立即执行,应与sync配合使用;
subtree:若输出目录是一个子目录,则nfs服务器将检查其父目录的权限(默认设置);
no_subtree:即使输出目录是一个子目录,nfs服务器也不检查其父目录的权限,这样可以提高效率;
例如,我们在namenode1机器上配置做如下配置
/home/dfs/nfs_share_edits/ namenode2(rw)
这个配置是把namenode1上的/home/dfs/nfs_share_edits目录设置成共享,可以给namenode2来访问,访问权限是可读写。
3 启动
sudo service portmap start
sudo service nfs start
查询状态
service portmap status
service nfs status
停止服务
service nfs stop
service portmap stop
4 客户端挂载
命令格式
mount NFS服务器IP/域名:共享目录 本地挂载目录
例如,在namenode2机器上运行mount命令挂载namenode1的NFS共享目录
mkdir /home/dfs/nfs_share_edits
sudo mount namenode1:/home/dfs/nfs_share_edits /home/dfs/nfs_share_edits
这是把namenode2把namenode1的NFS共享目录挂载到本地,这样就可以访问远程的共享目录了,挂载前需要先创建本地的挂载目录。
挂载之后,可以用mount命令查看挂载状态
sudo mount | grep -i nfs
卸载命令
sudo umount namenode1:/home/dfs/nfs_share_edits
5 相关的守护进程
nfsd
它是基本的NFS守护进程,主要功能是管理客户端是否能够登录服务器;
mountd
它是RPC安装守护进程,主要功能是管理NFS的文件系统。当客户端顺利通过nfsd登录NFS服务器后,在使用NFS服务所提供的文件前,还必须通过文件使用权限的验证。它会读取NFS的配置文件/etc/exports来对比客户端权限。
portmap
主要功能是进行端口映射工作。当客户端尝试连接并使用RPC服务器提供的服务(如NFS服务)时,portmap会将所管理的与服务对应的端口提供给客户端,从而使客户可以通过该端口向服务器请求服务。
6 相关的命令
#查看配置
exportfs
#默认查看共享的服务
showmount -e
#查看已经与客户端连接上的目录信息
showmount -a
文章浏览阅读1.2k次,点赞21次,收藏25次。Rust环境配置,报错_error: linking with `x86_64-w64-mingw32-gcc` failed: exit code
文章浏览阅读1.1k次。Docker核心技术1.Docker的简介1)前提知识和课程定位2)什么是Docker3)Docker能干什么?(1)之前的虚拟机技术(2)容器虚拟化技术(3)开发/运维(DevOps)(4)企业级4)去哪下?Docker的安装前提说明CentOS Docker安装前提条件查看自己的内核Docker的基本组成Docker的安装步骤1)CentOS6.8的Docker的安装2)CentOS7安装Do..._docker技术核心
文章浏览阅读392次。这可能是 GitHub 上最全的编程相关书籍合集了,大概大家都在努力学习中。这个项目有多种语言版本,你可以选择中文或者你熟悉的语言来学习。
文章浏览阅读2.7w次,点赞28次,收藏48次。本文章是以prototype原型的方式,给string字符串类型添加方法,用于实现颜色值格式的转换。如果你不用原型方法,那么你只要借鉴实现方法就好了。RGB转换为16进制String.prototype.colorHex = function () { // RGB颜色值的正则 var reg = /^(rgb|RGB)/; var color = this;..._js将字符串转成16进制颜色的方法
文章浏览阅读1.2w次。对Virtualbox使用不是很熟悉,每次启动虚拟机都会被自动分配一个动态的IP地址(host-only),对我使用hadoop等很不方便,之前都是跳过了这个问题,今天花了半天时间终于解决了。具体处理方法如下:1. 启动Virtualbox,选着“管理”-->“全局设定”,在弹出的窗口中,选着“网络”,然后在右侧窗口中,选择“仅主机(Host-Only)网络”选项卡,如下图;如_virtualbox centos7 host-only
文章浏览阅读1.1w次,点赞2次,收藏4次。Codota 插件地址页面说明如下:翻译后重要的:Codota 现在是 Tabnine!好消息,我们发布了下一代 AI 代码完成 - Tabnine。Codota 即将停用 -我们建议安装 Tabnine 插件。在Tabnine.com上查看。Tabnine 支持所有语言并使用更强大的机器学习模型为您提供更好的代码完成。..._tabnine和codota哪个好用?
文章浏览阅读1.1w次,点赞2次,收藏24次。在以前的帖子中说过,要整理下ERwin由逻辑模型到物理模型的映射,一直没时间,今天终于整理了,如下: 项目的建模工具,用的较多的有PD、Rose,我学生时代,就没听说过ERwin,这个工具也是进入项目组之后才了解到的。ERwin中分为逻辑模型和物理模型两种。在创建逻辑模型时,我们都是通过中文设计,这样就更直观的显示模型的作用;物理模型,是直接对数据库进行关联,对数据库进行操作,_erwin物理模型转英文
文章浏览阅读10w+次,点赞21次,收藏83次。事务处理(多用户同时操作一条信息时是用-并发)在c/s或多层中,如果两个用户同时打开一条记录,修改后提交会产生更新冲突; 据说办法有二:1。打开同时锁定表的记录 2。浦获错误,撤消其中一个用户的修改,但是很少见到具体实现的代码;请大家告诉具体的代码怎么写: 1。打开时如何锁定一条记录? 2。如何扑获更新错误?在delphi中调试时会报“该记录读出后已经被再次修改”,而在运行时如_后台 不同的用户抢占同一数据怎么处理
文章浏览阅读1.3k次。 在GMF:示例Mindmap 练习一中我介绍了官方网站上的一个脑图示例第一步的练习,其中我们在第二步生成了一个图形定义模型(Graphical Definition Model)。图形定义模型包含一些图形元素信息,但是并没有直接与领域模型关联,它定义figures、nodes、links等显示在图形上的元素。 本篇介绍一下图形定义模型,后续学习过程中还会不断完善这几篇blog。三..._gmf层包含什么
文章浏览阅读392次。Celery使用场景异步任务: 将耗时操作任务提交给Celery异步执行, 比如发送短信/邮件, 消息推送, 音视频处理等等;定时任务: 类似于crontab, e.g. 每日数据统计.Celery基本结构Celery基本使用初始化celery实例# coding = utf-8from celery import Celeryapp = Celery("..._celery 执行批量任务 chunks
文章浏览阅读2.4k次。第一步在components文件夹中新建myLoad.vue组件<template> <div class="loading" v-show="msg.show"> <div>{{msg.title}}</div> </div></template><script>export default { props: { msg: Object, _vue3封装全局loading
文章浏览阅读1.7w次,点赞20次,收藏187次。在进行电机开发时需要知道手中电机的参数,不同无刷电机的参数不一样,在进行FOC算法驱动时,电机参数的正确性尤为重要。一般这些参数在买电机时厂家会提供,如果厂家不提供,可以通过以下方法去测量。主要测量以下参数:1.电机的极对数。2.电阻。3.电感。4.反向电动势。5.霍尔偏移角度。1.电机电阻(Rs): 相电阻Rs:万用表测电机两相电阻RL,可以算出RS=R...