Ubuntu 共享文件夹给他人
方法一 图形界面快速共享 Samba(适合与 Windows 互通)
- 安装必要组件(首次使用需要):sudo apt update && sudo apt install samba
- 在文件管理器中右键目标文件夹 → 选择Properties(属性) → Share(共享);若提示安装共享服务,点击安装并重启会话。
- 勾选Share this folder(共享该文件夹);按需勾选**Allow others to create and delete files(允许他人创建和删除文件)与Guest access(访客访问)**以启用匿名读写。
- 其他 Ubuntu 电脑:在文件管理器选择**Browse Network(浏览网络)**查看共享;Windows 电脑:在资源管理器地址栏输入:\Ubuntu_IP\共享名(例如:\192.168.1.100\shared)。
方法二 命令行配置 Samba(可精细控制用户与权限)
- 安装与准备:
- sudo apt update && sudo apt install samba
- 创建共享目录并设定权限:mkdir -p /home/用户名/shared && chmod 775 /home/用户名/shared
- 编辑配置文件:
- 备份:sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.bak
- 在文件末尾添加(示例为仅指定用户可读写):
[shared]
path = /home/用户名/shared
browseable = yes
read only = no
valid users = 用户名
- 添加 Samba 账户并设置密码:sudo smbpasswd -a 用户名
- 使配置生效:sudo systemctl restart smbd nmbd
- 访问方式:
- Windows:\Ubuntu_IP\shared
- Linux 命令行测试:smbclient -L //localhost/shared
- 防火墙放行(如使用 UFW):sudo ufw allow samba。
方法三 NFS 共享(适合 Linux 与 Linux 之间)
- 服务端(Ubuntu 作为 NFS 服务器):
- 安装:sudo apt update && sudo apt install nfs-kernel-server cifs-utils
- 创建共享目录:sudo mkdir -p /path/to/shared
- 配置导出:在 /etc/exports 添加一行(示例允许局域网读写)
/path/to/shared 192.168.1.0/24(rw,sync,no_subtree_check,no_root_squash)
- 导出并重启:sudo exportfs -as && sudo systemctl restart nfs-kernel-server
- 客户端挂载(另一台 Linux):
- 安装工具:sudo apt install cifs-utils
- 挂载:sudo mount Ubuntu_IP:/path/to/shared /mnt/shared。
常见问题与排查
- 右键菜单没有“Local Network Share”:安装 nautilus-share 并重启文件管理器
- sudo apt install nautilus-share && nautilus -q
- 访问被拒绝或需要重复登录(Windows):
- 先在 Windows 命令行执行:net use * /del /y,再重新连接
- 配置语法检查与服务状态:
- 测试配置:testparm
- 重启服务:sudo systemctl restart smbd nmbd
- 防火墙与网络:
- 放行 Samba:sudo ufw allow samba
- 确保客户端与服务端在同一局域网网段,路由器未隔离客户端。