在Ubuntu下安装samba实现和Windows系统文件共享

一、安装

bash 复制代码
 apt install -y samba samba-client

Samba is not being run as an AD Domain Controller: Masking samba-ad-dc.service

Please ignore the following error about deb-systemd-helper not finding those services.

(samba-ad-dc.service masked)

Created symlink /etc/systemd/system/multi-user.target.wants/nmbd.service → /lib/systemd/system/nmbd.service.

Failed to preset unit: Unit file /etc/systemd/system/samba-ad-dc.service is masked.

/usr/bin/deb-systemd-helper: error: systemctl preset failed on samba-ad-dc.service: No such file or directory

Created symlink /etc/systemd/system/multi-user.target.wants/smbd.service → /lib/systemd/system/smbd.service.

samba-ad-dc.service is a disabled or a static unit, not starting it.

|---------------------------------------------------|
| ++报屏蔽Samba-AD-dc.service,不会启动,忽略错误即可,不需要处理!++ |

二、配置

1、配置用户/用户组

添加一个新的用户,-m参数指定创建用户时同时创建用户的目录

bash 复制代码
sudo useradd -m sambauser

设置访问系统的密码

bash 复制代码
sudo passwd sambauser

设置新用户进行samba访问时用的密码

bash 复制代码
sudo smbpasswd -a sambauser

2、创建共享文件夹 或者指定已有文件夹

bash 复制代码
mkdir /share

赋予权限

bash 复制代码
 chmod -R 777 /share/

如果只是简单浏览文件,可以不给权限;但需要操作修改时,必须要给权限!

3、编辑smb.conf文件

bash 复制代码
vim /etc/samba/smb.conf

增加以下内容

bash 复制代码
# 工作区名称(共享文件夹的名字)
[share]
   # 文件夹注释
   comment = 共享文件夹
   # 共享文件夹路径
   path = /share
   # 是否可浏览
   browseable = yes
   # 是否可写入
   writeable = yes
   # 是否为(只读模式)
   read only = no
   # 允许访客(匿名用户),同时需注释掉valid user才有效
   guest ok = yes
   # 可登入用户
   valid users = sambauser
   # 创建文件时强制指定某个所属组
   # force group = groupname
   # 创建文件权限掩码
   create mask = 0775
   # 创建目录权限掩码
   directory mask = 0775
   # 允许的ip列表
   hosts allow = 192.168.10.0/24

测试配置文件语法

bash 复制代码
testparm /etc/samba/smb.conf

打印返回

|------------------------------------------------------------------------------------------------------------------------------------|
| Loaded services file OK. Weak crypto is allowed Server role: ROLE_STANDALONE Press enter to see a dump of your service definitions |

按回车键可以看到生效的配置文件内容

配置完成,重启samba服务

bash 复制代码
sudo systemctl restart smbd

4、开机启动samba服务

bash 复制代码
sudo systemctl enable smbd

5、更新防火墙规则

bash 复制代码
ufw allow samba

打印返回

|--------------------|
| 防火墙规则已更新 规则已更新(v6) |

三、Windows网络发现

需要配合wsdd服务才能再windows的网络上发现

bash 复制代码
sudo apt install wsdd

四、Windows上的使用

1、方式一

在windows的文件管理器的地址栏输入\ip地址\share,回车打开

share是共享文件夹的名称

2、方式二

也可以在网络中找到自己Linux系统的主机名称,前提安装的wsdd服务(第三步)

3、方式三

在此电脑右键,添加一个网络位置,进行配置

输入 \ip地址\share

五、可能出现的问题

|---------------------------------------------------------------------------------------------------------------------------------------|
| 参考下一篇: ++🔗解决在window资源管理器的地址栏中输入\\192.168.x.x\sambashare之后显示无法访问++ |

相关推荐
郝学胜-神的一滴28 分钟前
Linux系统函数link、unlink与dentry的关系及使用注意事项
linux·运维·服务器·开发语言·前端·c++
Pota-to成长日记38 分钟前
2025/10/14 redis断联 没有IPv4地址 (自用)
linux·运维·服务器
樱木...40 分钟前
Linux 查询目录下文件大小引发的内存溢出问题
linux·运维
.小墨迹41 分钟前
linux删除通过源码安装的库
linux·运维·chrome
~黄夫人~1 小时前
Ubuntu系统快速上手命令(详细)
linux·运维·笔记·ubuntu·postgresql
发光的沙子1 小时前
FPGA----petalinux的Ubuntu文件系统移植
linux·运维·ubuntu
lili-felicity1 小时前
解决VMware Workstation Pro 17中Ubuntu 24.04无法复制粘贴
linux·运维·ubuntu
Lzc7741 小时前
Linux网络的应用层自定义协议
linux·应用层自定义协议与序列化
虚伪的空想家2 小时前
HUAWEI A800I A2 aarch64架构服务器鲲鹏920开启虚拟化功能
linux·运维·服务器·显卡·npu·huawei·鲲鹏920
winkel_wang2 小时前
关闭电脑的“快速启动”功能
windows