Ubuntu20.04安装和配置Samba实现Win11下共享文件夹

Samba是在Linux和UNIX系统上实现 SMB / CIFS 协议的开源软件,主要用于局域网内的文件共享和打印服务。Samba通过SMB/CIFS协议实现跨平台资源共享,支持匿名用户和本地用户访问共享目录,客户端主要为Windows系统。其核心进程包括:

  1. ‌smbd‌:负责共享目录权限控制、文件传输(TCP端口139/445)。
  2. ‌nmbd‌:基于 NetBIOS 协议进行主机名解析(UDP端口137/138)。

sambd安装及配置

1.安装sambd:

bash 复制代码
# 更新软件包列表
sudo apt update

# 安装 Samba 服务
sudo apt-get install samba samba-common

# 检查安装是否成功,出现active (running)表示已启动服务
sudo systemctl status smbd nmbd

2.创建共享文件夹

bash 复制代码
mkdir /home/my_name/win-share
sudo chmod 777 /home/my_name/win-share

3.修改samba配置文件

bash 复制代码
#备份
sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.bak

#编辑
sudo vim /etc/samba/smb.conf

文件末尾输入:

bash 复制代码
[share]
    comment = Shared folder between Ubuntu and Windows
    path = /home/my_name/win-share
    browsable = yes
    writable = yes
    valid users = my_name
    force user = my_name
    force group = my_name
    available = yes
    read only = no
    guest ok = no
;    public = yes
    create mask = 0777
    directory mask = 0777

share\]:Windows 中显示的共享名称。 comment:共享描述 path:共享目录的绝对路径 browsable:是否允许在 Windows 网络中被发现 writable:是否允许用户对共享目录进行写入操作(创建 / 修改 / 删除文件) valid users:限制只有指定用户可以访问该共享,多个用户用逗号分隔(如user1,user2) force user:强制将所有访问该共享的操作都以用户的身份执行 force group:强制将所有访问该共享的操作归属到用户组 available:该共享资源是否可用 read only:与writable作用类似,no表示关闭只读模式(允许写入),通常与writable = yes配合使用。 guest ok:是否允许匿名访问 public:等价于guest ok(注释未使用) create mask:定义在共享目录中新建文件的默认权限 directory mask:定义在共享目录中新建文件夹的默认权限 验证配置文件语法 ```bash # 输出Loaded services file OK. 表示配置语法正确 testparm ``` ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/9509c2e0fef54e68a5739928c9e15982.png) 4.设置密码认证 ```bash # 设置密码 sudo smbpasswd -a my_name # 启用用户 sudo smbpasswd -e my_name ``` ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/4b06dee3e3644a0aa719a02a7078576b.png) 5.重启Samba ```bash sudo service smbd restart 或 sudo systemctl restart smbd ``` 6.Windows下映射网络驱动器 ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/b290f83b1dcf42db88ca9f8fa72b8735.png) IP为Ubuntu的IP地址,share为smb.conf文件中增加的\[\]中名称。 ### Ubuntu设置静态IP 防止DHCP改变IP的情况下需要重新映射网络驱动器。 ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/34ea56109f034a9d842b90aafcace02a.png) DNS必须设置,禁用IPV6,设置好后重启生效。 ### 其他相关命令 1.新安装Ubuntu默认防火墙是关闭的,不需要设置 ```bash # 允许 Samba 服务通过防火墙 sudo ufw allow samba # 重启防火墙使配置生效 sudo ufw reload # 验证规则是否添加成功 sudo ufw status ``` 2.设置开机自启 ```bash sudo systemctl enable smbd ``` 3.删除samba用户 ```bash sudo smbpasswd -x 用户名 ``` ### Win11版本 24H2可能的错误0x80070035和0x80070043 管理员身份运行PowerShell: ```bash Set-SmbClientConfiguration -RequireSecuritySignature $false Set-SmbServerConfiguration -RequireSecuritySignature $false ``` ![请添加图片描述](https://i-blog.csdnimg.cn/direct/f8223058f6ef4a38a4343a5e63155d24.png) 控制面板→程序→启用或关闭Windows功能→勾选SMB 1.0/CIFS 文件共享支持。 ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/1e238ede1f204774ba17d0e4f31c25dd.png)

相关推荐
喵了meme5 分钟前
Linux学习日记24:Linux网络编程基础
linux·网络·学习
whlqjn_121119 分钟前
linux下使用SHC对Shell脚本进行封装和源码隐藏
linux·centos
weixin_462446231 小时前
K8s 集群部署基础:Linux 三节点 SSH 互信(免密登录)配置指南
linux·kubernetes·ssh
Hard but lovely1 小时前
Linux: 线程同步-- 基于条件变量 &&生产消费模型
linux·开发语言·c++
m0_738120722 小时前
应急响应——知攻善防靶场Linux-1详细应急过程
linux·运维·服务器·网络·web安全·ssh
Guistar~~2 小时前
【Linux驱动开发IMX6ULL】WS73 驱动移植的详细教程基于USB协议--WIFi网卡、蓝牙BLE、星闪SLE
linux·驱动开发
GHL2842710902 小时前
无法连接服务端socket
linux·服务器·网络
阿华hhh2 小时前
项目(购物商城)
linux·服务器·c语言·c++
摸鱼仙人~2 小时前
大模型文章生成的风格个性化与多文体写作:一套可落地的方法论
linux·运维·服务器
煤球王子2 小时前
浅学文件系统4(页面缓存)
linux