在Linux中,如何使用NFS和Samba共享文件和目录?

简介: 在Linux中,如何使用NFS和Samba共享文件和目录?

在Linux中,NFS(Network File System)和Samba是两种常用的文件共享协议,分别用于在Unix-like系统之间以及跨Linux和Windows系统共享文件和目录。下面分别详细介绍如何使用它们:

1. 使用NFS共享文件和目录
  1. 安装NFS服务
    对于基于Debian/Ubuntu的系统:
sudo apt-get update
sudo apt-get install nfs-kernel-server
  1. 对于基于RHEL/CentOS的系统:
sudo yum install nfs-utils
  1. 配置NFS共享:编辑/etc/exports文件,添加要共享的目录及其相关选项。例如,将/home/shared目录共享给IP地址为192.168.1.0/24子网内的所有主机,只读访问:
/home/shared 192.168.1.0/24(ro,sync,no_subtree_check)
  1. 各项选项含义:
  • ro:只读访问
  • sync:同步写入磁盘,保证数据完整性
  • no_subtree_check:禁用子目录的检查,提高性能
  1. 应用配置更改并启动服务
sudo exportfs -a # 更新NFS共享列表
sudo systemctl start nfs-kernel-server # 启动服务
sudo systemctl enable nfs-kernel-server # 设置开机启动
# 对于RHEL/CentOS 7之前的版本,使用:
sudo service nfs restart
sudo service rpcbind start # 如果尚未启动rpcbind(portmapper)
  1. 客户端挂载NFS共享
    在客户端上,可以使用以下命令挂载NFS共享:
sudo mkdir /mnt/nfs_shared
sudo mount -t nfs server_ip:/home/shared /mnt/nfs_shared
2. 使用Samba共享文件和目录
  1. 安装Samba服务
    对于基于Debian/Ubuntu的系统:
sudo apt-get update
sudo apt-get install samba samba-common-bin
对于基于RHEL/CentOS的系统:
```bash
   sudo yum install samba
  1. 配置Samba
  • 配置用户数据库(如果还没有配置的话,可以使用samba-tool user add <username>添加用户)。
  • 编辑Samba主配置文件 /etc/samba/smb.conf,添加或修改共享部分。例如:
[shared]
comment = Shared Folder for everyone
path = /home/shared
browseable = yes
read only = no
guest ok = no
create mask = 0775
directory mask = 0775
valid users = @users # 允许某个用户组访问,或者指定用户名代替
  1. 更新Samba配置并重启服务
sudo smbcontrol all reload-config # 更新配置(在较新版本的Samba中)
sudo systemctl restart smbd nmbd # 或者 service smbd restart && service nmbd restart
  1. 客户端挂载Samba共享
    在Windows客户端上,可以直接在文件资源管理器中输入 \\server_ip\shared 访问共享文件夹。在Linux客户端上,可以通过 cifs-utils 包提供的 mount 命令挂载:
sudo apt-get install cifs-utils # 安装cifs工具(如果尚未安装)
sudo mkdir /mnt/samba_shared
sudo mount -t cifs //server_ip/shared /mnt/samba_shared -o username=<username>,password=<password>
  1. 或者在 /etc/fstab 中添加持久挂载条目。

综上所述,在实际操作中,务必根据您的具体需求和安全性要求调整上述配置,包括但不限于权限控制、用户验证机制和加密选项等。此外,记得确保防火墙规则允许相应端口的通信。对于Samba,默认使用TCP 139和445端口。对于NFS,常用端口有UDP 111(rpcbind)、TCP/UDP 2049(nfs)。

相关文章
|
28天前
|
存储 Linux
Linux 目录名称
Linux系统目录结构简介:根目录(/)下包含各类功能目录,如/bin存放用户命令,/etc存储配置文件,/home为用户主目录,/var记录日志等可变数据,/usr存放用户工具,/tmp用于临时文件。各目录分工明确,保障系统有序运行。(238字)
167 5
|
7月前
|
Linux 定位技术
Linux系统中的cd命令:目录切换技巧
踏过千山,越过万水,人生就是一场不断前行的旅程,总充满了未知与挑战。然而,“cd”命令如同你的旅伴,会带你穿梭在如棋盘一般的文件系统中,探索每一处未知。希望你能从“cd”命令中找到乐趣,像是掌控了一种络新妙的魔法,去向未知进发,开始你的探索之旅。
273 24
|
8月前
|
监控 Linux
Linux基础:文件和目录类命令分析。
总的来说,这些基础命令,像是Linux中藏匿的小矮人,每一次我们使用他们,他们就把我们的指令准确的传递给Linux,让我们的指令变为现实。所以,现在就开始你的Linux之旅,挥动你的命令之剑,探索这个充满神秘而又奇妙的世界吧!
162 19
|
9月前
|
存储 Linux
linux中的目录操作函数
本文详细介绍了Linux系统编程中常用的目录操作函数,包括创建目录、删除目录、读取目录内容、遍历目录树以及获取和修改目录属性。这些函数是进行文件系统操作的基础,通过示例代码展示了其具体用法。希望本文能帮助您更好地理解和应用这些目录操作函数,提高系统编程的效率和能力。
327 26
|
8月前
|
Linux
Linux目录删除指南:彻底解决“Is a directory”错误
在 Linux 系统中遇到 `cannot remove &#39;xxx&#39;: Is a directory` 错误,是因为删除目录时未使用正确参数。解决方法包括:1) 使用 `rmdir` 删除空目录或 `rm -r` 删除非空目录;2) 检查并调整目录权限(如通过 `sudo` 提权);3) 处理特殊场景,例如文件属性异常、特殊字符或进程占用;4) 替代方法如 `find -delete` 或文件系统修复。操作前建议备份数据,并启用防误删功能(如 `alias rm=&#39;rm -i&#39;`)。掌握 `rm` 和 `rmdir` 的区别是关键。
652 1
|
9月前
|
Linux
Linux文件与目录的日常
目录的切换 一般使用(”pwd“)显示当前所在的目录 比如:当前目录是在home下面的,与用户名相同的文件夹,可以使用(”cd“)命令来切换目录; 进入下载目录(”cd home/a/下载“)这种从给目录开头的一长串路经”叫做绝对路径“; 进入图片目录(”cd .. /图片/“)".."代表当前路径的上级路径,相对于当前的目录而言的”叫做相对路径“,(”.“)代表当前路径; 如果,想快速切换,上一个所在目录可以(”cd - / cd..“); 如果,想快速切换,追原始的目录可以(”cd --“); 查看目录及文件
98 14
|
11月前
|
Ubuntu Unix Linux
Linux网络文件系统NFS:配置与管理指南
NFS 是 Linux 系统中常用的网络文件系统协议,通过配置和管理 NFS,可以实现跨网络的文件共享。本文详细介绍了 NFS 的安装、配置、管理和常见问题的解决方法,希望对您的工作有所帮助。通过正确配置和优化 NFS,可以显著提高文件共享的效率和安全性。
2273 7
|
11月前
|
Linux
linux查看目录下的文件夹命令,find查找某个目录,但是不包括这个目录本身?
通过本文的介绍,您应该对如何在 Linux 系统中查看目录下的文件夹以及使用 `find` 命令查找特定目录内容并排除该目录本身有了清晰的理解。掌握这些命令和技巧,可以大大提高日常文件管理和查找操作的效率。 在实际应用中,灵活使用这些命令和参数,可以帮助您快速定位和管理文件和目录,满足各种复杂的文件系统操作需求。
1109 8
|
12月前
|
运维 监控 网络协议
运维工程师日常工作中最常用的20个Linux命令,涵盖文件操作、目录管理、权限设置、系统监控等方面
本文介绍了运维工程师日常工作中最常用的20个Linux命令,涵盖文件操作、目录管理、权限设置、系统监控等方面,旨在帮助读者提高工作效率。从基本的文件查看与编辑,到高级的网络配置与安全管理,这些命令是运维工作中的必备工具。
870 3
|
12月前
|
分布式计算 Java Hadoop
linux中HADOOP_HOME和JAVA_HOME删除后依然指向旧目录
通过以上步骤,可以有效地解决 `HADOOP_HOME`和 `JAVA_HOME`删除后依然指向旧目录的问题。确保在所有相关的配置文件中正确设置和删除环境变量,并刷新当前会话,使更改生效。通过这些措施,能够确保系统环境变量的正确性和一致性。
205 1