linux系统下共享文件夹可以通过多种工具实现,不同的共享方案适配不同的使用场景,用户可以根据自身需求选择合适的配置方式。

使用Samba实现跨系统共享
Samba是linux系统下常用的文件共享服务,支持和Windows、macOS等系统实现文件夹共享,配置完成后其他设备可以像访问本地文件夹一样访问linux的共享目录。
安装Samba服务
首先需要在linux系统中安装Samba相关组件,不同发行版的安装命令略有差异:
# Ubuntu/Debian系统安装命令 sudo apt update sudo apt install samba samba-common # CentOS/RHEL系统安装命令 sudo yum install samba samba-client samba-common
配置共享文件夹
安装完成后需要修改Samba的配置文件,添加共享目录的相关配置:
# 备份原始配置文件 sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.bak # 编辑配置文件 sudo vim /etc/samba/smb.conf
在配置文件末尾添加如下内容,其中share是共享名称,/data/share是要共享的文件夹路径:
[share] comment = Linux Share Folder path = /data/share browseable = yes writable = yes valid users = samba_user create mask = 0664 directory mask = 0775
创建Samba用户并设置权限
Samba的用户需要是系统已有的用户,同时需要单独设置Samba密码:
# 创建共享目录 sudo mkdir -p /data/share # 设置目录权限 sudo chmod 777 /data/share # 添加系统用户(如果已有可跳过) sudo useradd samba_user # 设置Samba用户密码 sudo smbpasswd -a samba_user
启动并验证服务
配置完成后启动Samba服务并设置开机自启:
# 重启Samba服务 sudo systemctl restart smbd nmbd # 设置开机自启 sudo systemctl enable smbd nmbd # 检查服务状态 sudo systemctl status smbd
Windows设备访问时,打开文件资源管理器输入\linux_ipshare即可访问,其中linux_ip是linux设备的局域网IP地址。
使用NFS实现linux设备间共享
如果共享的两端都是linux系统,使用NFS共享的效率更高,配置也更简单。
安装NFS服务
# Ubuntu/Debian系统 sudo apt install nfs-kernel-server nfs-common # CentOS/RHEL系统 sudo yum install nfs-utils nfs-utils-lib
配置NFS共享
编辑NFS的配置文件/etc/exports,添加共享目录配置:
sudo vim /etc/exports
在文件中添加如下内容,表示允许192.168.0.0/24网段的设备访问共享目录,拥有读写权限:
/data/share 192.168.0.0/24(rw,sync,no_root_squash)
启动NFS服务
# 重启NFS服务 sudo systemctl restart nfs-server # 设置开机自启 sudo systemctl enable nfs-server # 导出共享目录 sudo exportfs -r
客户端挂载共享目录
linux客户端需要安装NFS客户端组件,然后执行挂载命令:
# 安装客户端组件(Ubuntu/Debian) sudo apt install nfs-common # 创建挂载点 sudo mkdir -p /mnt/nfs_share # 挂载远程共享目录 sudo mount -t nfs 192.168.0.100:/data/share /mnt/nfs_share
其中192.168.0.100是NFS服务端的IP地址,挂载完成后客户端就可以在/mnt/nfs_share目录下读写服务端的共享文件。
常见问题解决
- 如果访问共享时提示权限不足,检查共享目录的系统权限和Samba/NFS配置中的权限设置是否匹配
- 如果局域网内无法发现共享设备,检查linux系统的防火墙是否放行了Samba或NFS的相关端口
- NFS挂载时提示连接超时,检查服务端的NFS服务是否正常启动,以及网段配置是否正确