使用 SMB 协议从win10电脑访问同网段ubuntu电脑文件

​​​​​​1.在 Ubuntu 上设置共享文件夹

在终端中运行以下命令安装 Samba:

复制代码
sudo apt update
sudo apt install samba

编辑 Samba 配置文件:

复制代码
sudo nano /etc/samba/smb.conf

在文件末尾添加以下内容(假设要共享 用户dy下的Downloads目录),path:需要共享的文件夹名称,writable:可写,browsable可被浏览,valid users指出有效的用户,即哪个Ubuntu用户可被共享,guest ok:访客访问这个共享。create mask用于设置新创建文件的权限,directory mask用于设置新创建文件夹的权限。在这里,0777是权限的八进制表示形式,这意味着新创建的文件和文件夹都将具有读、写、执行权限,对于所有者、所属组和其他用户都是开放的。

shared

comment = Shared Folder

path = /home/dy/Downloads

writable = yes

browsable = yes

valid users = dy

guest ok = yes

create mask = 0777

directory mask = 0777
2.添加 Samba 用户(这里的用户名为dy)并在弹出的窗口设置密码,注意:这里的用户名是Ubuntu系统已有的用户的名字,密码却是为samba共享文件单独设置的访问密码,并不是Ubuntu系统用户的登录密码:

复制代码
sudo smbpasswd -a dy
sudo systemctl restart smbd

3.windows系统的必要条件

.确保 Windows 防火墙没有阻止访问 Samba 共享

如果被防火墙阻止,打开 Windows 防火墙设置 。添加新的入站规则:允许 TCP 端口 137, 138, 139, 445和允许 UDP 端口 137, 138, 139, 445。

.确保 Windows 的网络发现和文件共享功能已启用

控制面板-->选择"网络和共享中心-->更改高级共享设置-->启用网络发现和文件共享。

.确保两台电脑处于同一网段

Windows获取本机IP地址的方法:命令行终端输入ipconfig回车

Ubuntu获取本机IP地址的方法:命令行终端输入ip addr show

4.使用

满足条件后,在Windows的浏览器地址栏输入:\\<ubuntu电脑的IP>\shared\,在弹出的窗口输入用户名和密码即可。例如:\\192.168.10.60\shared\。

5.一些基本操作和注意事项

smbpasswd命令

smbpasswd命令用于添加或修改 Samba 用户的密码。其基本语法是

复制代码
smbpasswd [选项] [用户名]

例如,如果修改用户名为dy的 Samba 用户密码,运行命令:

复制代码
sudo smbpasswd dy

然后系统会提示输入新密码,需要输入两次来确认密码。在输入密码时,出于安全考虑,密码不会显示在屏幕上。
选项说明

-a:用于添加新的 Samba 用户。例如,sudo smbpasswd -a new_user可以添加名为new_user的 Samba 用户,并会提示为这个新用户设置密码。

-d:禁用一个 Samba 用户。例如,sudo smbpasswd -d user_to_disable会禁用名为user_to_disable的用户,使其无法登录 Samba 共享服务。

-e:启用一个被禁用的 Samba 用户。与-d选项相反,sudo smbpasswd -e user_to_enable可以重新启用名为user_to_enable的用户。

pdbedit -L命令

pdbedit是一个用于管理 Samba 用户数据库的工具。pdbedit -L命令用于列出所有 Samba 用户的信息。这些信息包括用户名、用户 ID(UID)、组 ID(GID)和其他相关的账户细节。

复制代码
sudo pdbedit -L

注意: Samba 用户是基于系统用户创建的,也就是说,在添加 Samba 用户之前,需要确保该用户已经是系统用户。sudo smbpasswd -a new_user,如果尝试添加的用户在Ubuntu系统中不存在,就会出现添加失败的情况。

如果在成功访问之后,在Windows内保存了访问凭证,下次访问就可以不用输入用户名和密码。但是,在Ubuntu端修改过密码后,就会导致Windows内保存的凭证失效。那么就需要在Windows的控制面板-->凭据管理器-->Windows 凭据内找到已保存的凭据并编辑密码后保存:

或者将其删除,更彻底。重启Windows,就可以访问。

相关推荐
倔强的石头1065 小时前
【Linux指南】基础IO系列(八):实战衔接 —— 给微型 Shell 添加完整重定向功能
linux·运维·服务器
try2find5 小时前
打印ascii码报错问题
java·linux·前端
Ujimatsu6 小时前
虚拟机安装Ubuntu 26.04.x及其常用软件(2026.4)
linux·运维·ubuntu
一直会游泳的小猫9 小时前
homebrew
linux·mac·工具·包管理
寒秋花开曾相惜9 小时前
(学习笔记)4.2 逻辑设计和硬件控制语言HCL(4.2.1 逻辑门&4.2.2 组合电路和HCL布尔表达式)
linux·网络·数据结构·笔记·学习·fpga开发
狂奔的sherry9 小时前
一次由 mount 引发的 Linux 文件系统“错觉”
linux·运维·服务器
小黑要努力9 小时前
智能音箱遇到的问题(一)
linux·运维·git
ch3nyuyu9 小时前
静态库和动态库的制作
linux·运维·开发语言
豆浆煮粉10 小时前
Ubuntu虚拟机对USB设备无响应且Windows主机设备管理器显示警告
windows·ubuntu
一口Linux10 小时前
Linux C编程 | 从0实现telnet获取程序终端控制权
linux·运维·c语言