当前位置: 首页 > news >正文

Ubuntu 24.04 LTS 开启 SMB 服务,并通过 windows 访问

  • Ubuntu 24.04 LTS

背景资料

  • Ubuntu服务器折腾集
  • Ubuntu linux 文件权限
  • Ubuntu 空闲硬盘挂载到 文件管理器的 other locations

    Ubuntu开启samba和window共享文件

Ubuntu 配置 SMB 服务

安装 Samba

确保 Samba 已安装。如果未安装,运行以下命令进行安装:

sudo apt update
sudo apt install samba

创建 Samba 用户

为你的 Linux 用户创建一个 Samba 账户share:

sudo smbpasswd -a share

输入并确认密码。
这个用户名和密码就是之后从windows登录需要用的

创建共享目录的权限

我已经把我的闲置硬盘挂载到了/media/mydisk 目录,下面依照 Ubuntu linux 文件权限设置文件夹权限。

sudo chown -R share:share /media/mydisk
sudo chmod -R 775 /media/mydisk

上面代码把我要共享的文件夹/media/mydisk设置owner为 share,所属group为share,并把这个文件夹的所有者和所属组设置 读写执行权限,其他用户有读、执行权限。

设置文件夹所属组

我想ubuntu本地用户 AAA 对这个/media/mydisk文件夹有读写执行权限,只需要把 AAA 这个用户加入到 share 这个组.

sudo usermod -aG share AAA

要验证 AAA 用户是否已加入 share 组,可以使用以下命令:

groups AAA

如果 share 出现在输出中,说明用户 AAA 已成功加入该组。

配置 Samba

编辑 Samba 的配置文件:

sudo vim /etc/samba/smb.conf

在文件末尾/添加以下内容:

[SMB_Shared]path = /media/mydiskbrowseable = yeswritable = yesread only = noguest ok = yesvalid users = share

path: 要共享的目录路径。
valid users: 限制访问的用户(如:myuser,可替换为你的用户名)。
如果允许匿名访问,将 guest ok 设置为 yes,并删除 valid users 行。

重启 Samba 服务

重启 Samba 服务以应用配置更改:

sudo systemctl restart smbd
sudo systemctl enable smbd

配置防火墙(如适用)

如果启用了防火墙,需要允许 Samba 端口:

sudo ufw allow samba
sudo ufw reload

windows 登录

在windows文件管理器地址栏输入 \\ubuntu的ip地址或者\\ubuntu的ip地址\SMB_Shared\就能看到,其中 SMB_Shared 是在smb.conf中定义的

遇到问题

windows 连接 ubuntu 共享文件夹报错 Multiple connections to a server or shared resource by the same user, using more than one user name, are not allowed. Disconnect all previous connections to the server or shared resource and try again

原因是我之前windows登录过ubuntu同样IP下的共享文件夹,但是当初文件权限问题设置有问题,重装SMB后,没有重启windows电脑.

内网穿透远程访问

Ubuntu 安装 tailscale 并访问 SMB共享文件夹

http://www.lryc.cn/news/523926.html

相关文章:

  • 使用Websocket进行前后端实时通信
  • vue2使用flv.js在浏览器打开flv格式视频
  • OpenCV相机标定与3D重建(61)处理未校准的立体图像对函数stereoRectifyUncalibrated()的使用
  • [cg] glProgramBinary
  • LeetCode hot 力扣热题100 二叉树的最大深度
  • 速通Docker === 网络
  • 【MySQL — 数据库基础】深入解析MySQL常用数据类型
  • Linux高级--3.3.1 C++ spdlog 开源异步日志方案
  • 电梯系统的UML文档05
  • 如何使 LLaMA-Factory 支持 google/gemma-2-2b-jpn-it 的微调
  • MySQL中日期和时间戳的转换:字符到DATE和TIMESTAMP的相互转换
  • HarmonyOS NEXT开发进阶(十):UIAbility 组件交互
  • 深入探索Math.NET:开启高效数值计算之旅
  • AI编程工具横向评测--Cloudstudio塑造完全态的jupyter notebook助力数据分析应用开发
  • 【2024 CSDN博客之星】技术洞察类:从DeepSeek-V3的成功,看MoE混合专家网络对深度学习算法领域的影响(MoE代码级实战)
  • Linux——入门基本指令汇总
  • 54,【4】BUUCTF WEB GYCTF2020Ezsqli
  • 【Leetcode 热题 100】45. 跳跃游戏 II
  • C/C++ 时间复杂度(On)
  • 【STM32-学习笔记-10-】BKP备份寄存器+时间戳
  • React 中hooks之 React.memo 和 useMemo用法总结
  • 日志收集Day001
  • 机器人“大脑+小脑”范式:算力魔方赋能智能自主导航
  • python程序跑起来后,然后引用的数据文件发生了更新,python读取的数据会发生变化吗
  • VSCode最新离线插件拓展下载方式
  • 算法题目总结-栈和队列
  • IO进程----进程
  • 【机器学习实战高阶】基于深度学习的图像分割
  • 「免填邀请码」赋能各类APP,提升转化率与用户体验
  • 基于海思soc的智能产品开发(视频的后续开发)