在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)。

相关文章
|
5月前
|
Linux 定位技术
Linux系统中的cd命令:目录切换技巧
踏过千山,越过万水,人生就是一场不断前行的旅程,总充满了未知与挑战。然而,“cd”命令如同你的旅伴,会带你穿梭在如棋盘一般的文件系统中,探索每一处未知。希望你能从“cd”命令中找到乐趣,像是掌控了一种络新妙的魔法,去向未知进发,开始你的探索之旅。
221 24
|
10月前
|
Linux
在 Linux 系统中,“cd”命令用于切换当前工作目录
在 Linux 系统中,“cd”命令用于切换当前工作目录。本文详细介绍了“cd”命令的基本用法和常见技巧,包括使用“.”、“..”、“~”、绝对路径和相对路径,以及快速切换到上一次工作目录等。此外,还探讨了高级技巧,如使用通配符、结合其他命令、在脚本中使用,以及实际应用案例,帮助读者提高工作效率。
643 3
|
10月前
如何修改NFS分享的目录?
如何修改NFS分享的目录?
314 2
|
10月前
|
存储 Linux Windows
linux常用目录
/sbin s就是super User的意思,这里存放的是系统管理员使用的系统管理程序。 /home 存放普通用户的主目录,在Linux中每个用户都有一个自己的目录,一版该目录名是以用户的账号命名的。 /root 该目录为系统管理员,也称为超级权限者的用户主目录。 /lib 系统开机所需要最基本的动态连接共享库,其作用类似于windows里的DLL文件。几乎所有的应用程序都需要用到这些共享库。 /etc 所有的系统管理所需要的配置文件和子目录。 /usr 这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于windows下的program fies目录。 /bo
181 2
|
6月前
|
监控 Linux
Linux基础:文件和目录类命令分析。
总的来说,这些基础命令,像是Linux中藏匿的小矮人,每一次我们使用他们,他们就把我们的指令准确的传递给Linux,让我们的指令变为现实。所以,现在就开始你的Linux之旅,挥动你的命令之剑,探索这个充满神秘而又奇妙的世界吧!
128 19
|
7月前
|
存储 Linux
linux中的目录操作函数
本文详细介绍了Linux系统编程中常用的目录操作函数,包括创建目录、删除目录、读取目录内容、遍历目录树以及获取和修改目录属性。这些函数是进行文件系统操作的基础,通过示例代码展示了其具体用法。希望本文能帮助您更好地理解和应用这些目录操作函数,提高系统编程的效率和能力。
306 26
|
6月前
|
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` 的区别是关键。
474 1
|
7月前
|
Linux
Linux文件与目录的日常
目录的切换 一般使用(”pwd“)显示当前所在的目录 比如:当前目录是在home下面的,与用户名相同的文件夹,可以使用(”cd“)命令来切换目录; 进入下载目录(”cd home/a/下载“)这种从给目录开头的一长串路经”叫做绝对路径“; 进入图片目录(”cd .. /图片/“)".."代表当前路径的上级路径,相对于当前的目录而言的”叫做相对路径“,(”.“)代表当前路径; 如果,想快速切换,上一个所在目录可以(”cd - / cd..“); 如果,想快速切换,追原始的目录可以(”cd --“); 查看目录及文件
81 14
|
9月前
|
Ubuntu Unix Linux
Linux网络文件系统NFS:配置与管理指南
NFS 是 Linux 系统中常用的网络文件系统协议,通过配置和管理 NFS,可以实现跨网络的文件共享。本文详细介绍了 NFS 的安装、配置、管理和常见问题的解决方法,希望对您的工作有所帮助。通过正确配置和优化 NFS,可以显著提高文件共享的效率和安全性。
1804 7
|
9月前
|
Linux
linux查看目录下的文件夹命令,find查找某个目录,但是不包括这个目录本身?
通过本文的介绍,您应该对如何在 Linux 系统中查看目录下的文件夹以及使用 `find` 命令查找特定目录内容并排除该目录本身有了清晰的理解。掌握这些命令和技巧,可以大大提高日常文件管理和查找操作的效率。 在实际应用中,灵活使用这些命令和参数,可以帮助您快速定位和管理文件和目录,满足各种复杂的文件系统操作需求。
902 8