如何设置Linux共享目录 NFS服务配置与权限管理
发布时间 - 2025-08-01 00:00:00 点击率:次在linux中配置nfs共享目录需先安装服务并设置共享规则,再处理客户端挂载与权限控制。1. 安装nfs-utils并启动nfs-server;2. 编辑/etc/exports定义共享目录及访问权限如rw、sync、no_subtree_check;3. 客户端安装nfs-utils后使用mount命令挂载,或配置/etc/fstab实现开机自动挂载;4. 权限问题可通过no_root_squash、root_squash或指定anonuid/anongid解决,确保用户映射正确以避免访问限制。
在Linux系统中,设置共享目录最常用的方法之一是使用NFS(Network File System)。它允许不同的主机通过网络挂载远程目录并像本地文件一样操作。配置起来不算太复杂,但权限管理稍不注意就容易出问题。下面我从配置流程和权限控制两个方面讲讲怎么做。
一、安装并启用NFS服务
首先要确保你的系统上已经安装了NFS相关的软件包。大多数主流发行版都自带支持,只需要安装nfs-utils即可。
-
Ubuntu/Debian:
sudo apt update && sudo apt install nfs-kernel-server
-
CentOS/RHEL:
sudo yum install nfs-utils
安装完成后,启动NFS服务并设置开机自启:
sudo systemctl start nfs-server sudo systemctl enable nfs-server
这一步完成后,NFS服务就已经准备好了,接下来需要配置要共享的目录。
二、配置共享目录 /etc/exports 文件
NFS的共享规则主要靠
/etc/exports文件来定义。这个文件里每一行代表一个共享目录及其访问规则。
比如你想把
/data/share这个目录共享给局域网内IP为
192.168.1.0/24的所有机器,并且允许读写访问,可以这样写:
/data/share 192.168.1.0/24(rw,sync,no_subtree_check)
这里几个参数说明一下:
rw
:表示可读写,如果是只读的话用ro
sync
:数据同步写入磁盘,相对更安全(推荐)no_subtree_check
:禁用子树检查,提升性能的同时也减少一些限制
配置完之后记得重启服务生效:
sudo exportfs -r sudo systemctl restart nfs-server
三、客户端挂载 NFS 共享目录
服务器端配置好后,客户端就可以挂载了。同样先安装nfs-utils(如果还没装),然后执行挂载命令。
比如将上面那个共享目录挂载到本地的
/mnt/nfs_share:
sudo mount 192.168.1.10:/data/share /mnt/nfs_share
其中
192.168.1.10是NFS服务器的IP地址。
如果你想开机自动挂载,可以把这条记录加到
/etc/fstab:
192.168.1.10:/data/share /mnt/nfs_share nfs defaults 0 0
不过要注意的是,fstab里的NFS挂载可能会导致系统启动卡住,建议加上
_netdev参数防止这个问题:
192.168.1.10:/data/share /mnt/nfs_share nfs defaults,_netdev 0 0
四、权限控制与常见问题
权限方面最容易出问题的地方在于用户ID(UID)和组ID(GID)的映射。默认情况下,NFS会把远程用户的请求映射成
nobody:nogroup,这就可能导致即使你设置了777权限也无法写入的问题。
解决办法是在服务器端配置时加上
no_root_squash或者指定具体的映射关系:
/data/share 192.168.1.0/24(rw,sync,no_subtree_check,no_root_squash)
no_root_squash
表示root用户可以直接以root身份访问共享目录(适合内部可信网络)- 如果你不希望root拥有这么高权限,可以用
root_squash
(默认行为)
另外,也可以通过
anonuid和
anongid指定特定用户或组来替代匿名访问者,比如:
/data/share 192.168.1.0/24(rw,sync,no_subtree_check,anonuid=1000,anongid=1000)
这样的话,所有匿名访问都会被当作uid为1000的用
户处理。
基本上就这些。NFS配置本身不难,关键是理解清楚各个参数的作用,特别是权限控制部分,不然很容易出现“看起来能访问,但实际上不能写”的情况。
# linux
# centos
# ubuntu
# debian
# 客户端
# 子树
# 的是
# 先安装
# 几个
# 是在
# 还没
# 一是
# 可以用
# 你想
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
深圳网站制作平台,深圳市做网站好的公司有哪些?
JS弹性运动实现方法分析
如何在不使用负向后查找的情况下匹配特定条件前的换行符
Linux网络带宽限制_tc配置实践解析【教程】
INTERNET浏览器怎样恢复关闭标签页_INTERNET浏览器标签恢复快捷键与方法【指南】
Laravel控制器是什么_Laravel MVC架构中Controller的作用与实践
Laravel怎么实现搜索功能_Laravel使用Eloquent实现模糊查询与多条件搜索【实例】
Java遍历集合的三种方式
zabbix利用python脚本发送报警邮件的方法
Laravel如何实现本地化和多语言支持_Laravel多语言配置与翻译文件管理
Laravel如何实现数据库事务?(DB Facade示例)
ChatGPT回答中断怎么办 引导AI继续输出完整内容的方法
湖南网站制作公司,湖南上善若水科技有限公司做什么的?
iOS中将个别页面强制横屏其他页面竖屏
MySQL查询结果复制到新表的方法(更新、插入)
html文件怎么打开证书错误_https协议的html打开提示不安全【指南】
成都品牌网站制作公司,成都营业执照年报网上怎么办理?
香港网站服务器数量如何影响SEO优化效果?
如何用AI一键生成爆款短视频文案?小红书AI文案写作指令【教程】
Android自定义控件实现温度旋转按钮效果
简历在线制作网站免费版,如何创建个人简历?
武汉网站设计制作公司,武汉有哪些比较大的同城网站或论坛,就是里面都是武汉人的?
Laravel怎么实现API接口鉴权_Laravel Sanctum令牌生成与请求验证【教程】
如何自定义建站之星模板颜色并下载新样式?
Laravel如何设置自定义的日志文件名_Laravel根据日期或用户ID生成动态日志【技巧】
javascript基于原型链的继承及call和apply函数用法分析
为什么php本地部署后css不生效_静态资源加载失败修复技巧【技巧】
php增删改查怎么学_零基础入门php数据库操作必知基础【教程】
北京网站制作费用多少,建立一个公司网站的费用.有哪些部分,分别要多少钱?
Swift中swift中的switch 语句
详解Nginx + Tomcat 反向代理 负载均衡 集群 部署指南
如何在服务器上配置二级域名建站?
打开php文件提示内存不足_怎么调整php内存限制【解决方案】
Laravel如何清理系统缓存命令_Laravel清除路由配置及视图缓存的方法【总结】
lovemo网页版地址 lovemo官网手机登录
免费网站制作appp,免费制作app哪个平台好?
Laravel如何实现模型的全局作用域?(Global Scope示例)
实现点击下箭头变上箭头来回切换的两种方法【推荐】
潮流网站制作头像软件下载,适合母子的网名有哪些?
小米17系列还有一款新机?主打6.9英寸大直屏和旗舰级影像
高性能网站服务器配置指南:安全稳定与高效建站核心方案
SQL查询语句优化的实用方法总结
头像制作网站在线观看,除了站酷,还有哪些比较好的设计网站?
宙斯浏览器视频悬浮窗怎么开启 边看视频边操作其他应用教程
Laravel定时任务怎么设置_Laravel Crontab调度器配置
Laravel如何实现全文搜索_Laravel Scout集成Algolia或Meilisearch教程
Android中AutoCompleteTextView自动提示
PHP 500报错的快速解决方法
Laravel怎么创建自己的包(Package)_Laravel扩展包开发入门到发布
JS中对数组元素进行增删改移的方法总结

