Samba是什么?有什么作用?工作流程以及如何搭建

前言:

寒假在家学习Linux近一个月了,最近参加了嘉立创组织的泰山派训练营,从中了解到了现在Linux开发中很方便的一些开发方式和工具。例如:使用MobaXterm终端通过SSH登陆ubuntu服务器进行开发;安装一个FileZilla工具通过正规的SFTP方式来传输安装文件到虚机里,把虚拟机当做一个独立主机来对待去操作;通过VMware自带的VMware Tools将文件复制粘贴进虚拟机;或者使用Samba把虚拟机ubuntu中的文件目录映射到windows盘符下,这样你就可以和访问windows盘符目录一样去访问ubuntu系统里面的内容......本文主要介绍了Samba是什么,有什么作用,工作流程以及如何搭建

samba简介

Samba是一个能让Linux系统应用Microsoft网络通讯协议的软件,而SMB是Server Message Block的缩写,即为服务器消息块,SMB主要是作为Microsoft的网络通讯协议,后来Samba将SMB通信协议应用到了Linux系统上,就形成了现在的Samba软件。后来微软又把 SMB 改名为 CIFS(Common Internet File System),即公共 Internet 文件系统,并且加入了许多新的功能,这样一来,使得Samba具有了更强大的功能。

Samba最大的功能就是可以用于Linux与windows系统直接的文件共享和打印共享,Samba既可以用于windows与Linux之间的文件共享,也可以用于Linux与Linux之间的资源共享,由于NFS(网络文件系统)可以很好的完成Linux与Linux之间的数据共享,因而 Samba较多的用在了Linux与windows之间的数据共享上面。

使用samba和windows共享文件时候,请确保windows的NetBIOS(就是网上邻居功能)开启了。

注:

SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务。

SMB协议是C/S型协议,客户机通过该协议可以访问服务器上的共享文件系统、打印机及其他资源。

 

Samba 组成

Samba 由以下几个主要组成部分组成:

1. SMB协议:Samba 的核心是实现了 SMB(Server Message Block)协议,这是一种用于在局域网中共享文件、打印机和其他资源的网络协议。

2. SMB客户端:Samba 包含了用于访问远程 SMB/CIFS 资源的客户端工具,允许 Linux/Unix 系统与 Windows 系统进行文件共享和打印机共享。

3. SMB服务器:Samba 服务器允许像 Windows 一样共享文件和打印机,并提供了一种名为 smb.conf 的配置文件来配置共享资源、身份验证和访问控制等选项。

4. CIFS:Samba 也包含了对 CIFS(Common Internet File System)的支持,这是 SMB 协议在 Internet 上的一个扩展版本。

5. 工具和库:Samba 还提供了一些辅助工具和库,用于管理和配置 Samba 服务器,以及与 SMB 协议进行交互。

这些组成部分共同构成了 Samba 的基本功能,使其成为一个功能强大且灵活的文件共享解决方案。

Samba 服务器 :

Samba 服务器实际上包含了两个核心程序:smbd 和 nmbd。

smbd:作为 Samba 的核心,负责建立对话进程、验证用户身份,以及提供对文件系统和打印机的访问机制。只有启动了 smb 服务,文件共享功能才能实现。smbd 使用 TCP 445 端口。它是 Samba 服务器的主要工作进程,负责处理文件和打印机共享的请求。

nmbd:实现了“Network Browser”(网络浏览)功能,支持 NETBIOS(本地名称解析)。如果未启动该服务,客户端只能通过 IP 地址而非工作组名称来访问共享文件。nmbd 使用 UDP 137/138 和 TCP 139 端口。它负责处理局域网内计算机的名称解析和服务发现请求,使得 Windows 客户端能够在网络上发现和访问 Samba 服务器的共享资源。

此外,Samba 还包含了一些实用工具。例如,smbclient 是一个功能强大的 SMB 客户端工具,提供了类似于 shell 的用户界面,可用于访问和管理其他 SMB 服务器的资源,包括文件和打印机。

Samba 的作用

Samba 的作用非常广泛,主要包括以下几个方面:

1. 文件共享:Samba 允许不同操作系统的计算机之间共享文件和目录,特别是在混合网络环境中,比如让 Windows、Linux 和 macOS 系统之间能够无缝地共享文件。

2. 打印机共享:Samba 可以用于共享打印机,允许在网络上的各个计算机能够访问和使用共享的打印机资源。

3. 用户验证:Samba 可以作为域控制器,管理用户账号和权限,提供用户验证和授权服务,确保安全地访问共享资源。

4. 集成企业环境:Samba 可以与 Windows Active Directory 集成,使得 Linux 和其他非 Windows 系统能够无缝融入企业的 Windows 网络环境。

5. 网络浏览:Samba 还提供了网络浏览服务,通过 NETBIOS 和 WINS 解析功能,使得客户端能够在局域网内方便地发现和访问共享资源。

总的来说,Samba 的主要作用是实现不同操作系统之间的文件和打印机共享,以及提供用户验证和网络浏览功能,使得多样化的计算机系统能够在网络中协同工作。

 Samba工作流程

1、客户端请求访问Samba服务器上的共项目录

2、Samba服务器接收到请求后,会查询主配置文件smb.conf,看是否共享了share目录,如果共享了则查询客户端是否有权限访问。

3、Samba服务器会把本次访问信息记录写在日志中,日志文件的名称和路径都需要我们设置。

4、如果客户端满足访问权限的设置,则允许客户端进行访问。

 

Samba搭建

为什么要使用Samba

把虚拟机ubuntu中的文件目录映射到windows盘符下,这样你就可以和访问windows盘符目录一样去访问ubuntu系统里面的内容。

安装

sudo apt-get install sambasudo apt-get install smbclient安装完成后执行 samba -V

配置

在Samba服务安装完毕之后,并不是直接可以使用Windows或Linux的客户端访问Samba服务器,我们还必须对服务器进行设置:告诉Samba服务器将那些目录共享出来给客户端进行访问。

sudo vi /etc/samba/smb.conf

写入配置

[EX_DISK_A]comment = share folderbrowseable = yespath = /home/wyw/tspivalid users = wyw, wywwrite list = wyw, wywinherit owner = yesbrowsable = yesadmin users = wyw, wywpublic = yeswritable = yescreate mask = 0755read only = Nodirectory mode = 0755

注意:

  • wyw是我的用户名,你需要换成你自己的

  • 这个是我的目录/home/wyw/tspi同样也要换成你自己的

  • 如下:

设置用户远程访问密码(wyw是我的同样也养设置成你自己的)

sudo smbpasswd -a wucaicheng

重启:

sudo /etc/init.d/samba restart

或者

sudo service smbd restart

映射到win10(samba服务器客户端的配置

我们可以使用两种不同的方法,在windows客户端和linux客户端之间进行登录samba服务器

在这里使用windows客户端访问Samba共享目录:

  • Windows按键(键盘最下面第二个按键)+R弹出对话框,输入\\加ip地址

  • 映射网络驱动器

  • 映射到文件夹,我这选择Z盘

  • 输入你自己的账户和密码

  • 网络文件夹中找到我们刚刚映射的文件,我映射到的是Z盘后面就可以当做一个盘符来使用非常方便

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/693218.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

定制线缆厂家推荐:赋能科技互联,精工电联的集成线缆定制服务(小批量、多品类产品高效解决方案)

定制线缆 精工电联:赋能科技互联,精工电联的集成线缆定制服务(小批量、多品类产品高效解决方案) 随着科技的飞速发展,人们对数据传输速度和稳定性的需求日益增强。精工电联作为高科技智能化产品及自动化设备专用连接线…

第二证券:汽车产业链股爆发,中通客车涨停,星源卓镁等大涨

轿车产业链股21日盘中强势拉升,截至发稿,华阳变速涨超29%,星源卓镁涨超15%,德迈仕涨逾10%,中捷精工、中通客车、合力科技、圣龙股份等涨停。 行业方面,中国轿车工业协会近来公布数据显示,1月&a…

【快速搞定Webpack5】介绍及基本使用(一)

webpack 是一个静态资源打包工具。 他会以一个或多个文件作为打包的入口,将我们整个项目所有文件编译组合成一个或多个文件输出出去。 输出的文件就是编译好的文件,就可以在浏览器端运行了。 我们将 webpack 输出的文件叫做 bundle 。 (将浏览器不识别的…

wo-gradient-card是一款采用uniapp实现的透明辉光动画卡片

采用uniapp-vue3实现,透明辉光动画卡片,卡片内容包含标签、标题、副标题、图片 支持H5、微信小程序(其他小程序未测试过,可自行尝试) 可用于参考学习 可到插件市场下载尝试: https://ext.dcloud.net.cn/plu…

【Swift】NSSearchField用法和示例

1.简介 NSSearchField 是 macOS 中用于搜索的文本输入框控件,通常用于实现搜索功能。用户可以在 NSSearchField 中输入搜索关键字,然后触发搜索操作。NSSearchField 可以显示搜索图标和清除按钮,还可以设置占位符文本等属性。 2.常用方法 …

学习鸿蒙基础(5)

一、honmonyos的page路由界面的路径 新建了一个page,然后删除了。运行模拟器的时候报错了。提示找不到这个界面。原来是在路由界面没有删除这个page。新手刚接触找了半天才找到这个路由。在resources/base/profile/main_pages.json 这个和微信小程序好类似呀。 吐槽&#xf…

(3)(3.5) 遥测无线电区域条例

文章目录 前言 1 支持不同国家/地区 前言 本专题列出了每个国家/地区可用的主要频率,并列出了无线电设备。 !Note 合规是你的责任。检查无线电是否符合所在地区/国家的频率、跳频信道和功率级别规定。 !Tip 我们很乐意在此表中添加更多…

初探富文本之文档diff算法

初探富文本之文档diff算法 当我们实现在线文档的系统时,通常需要考虑到文档的版本控制与审核能力,并且这是这是整个文档管理流程中的重要环节,那么在这个环节中通常就需要文档的diff能力,这样我们就可以知道文档的变更情况&#…

力扣精选算法100道——提莫攻击(模拟专题)

目录 🚩题目解析 🚩算法原理 🚩实现代码 🚩题目解析 输入:timeSeries [1,4], duration 2 输出:4 解释:提莫攻击对艾希的影响如下: - 第 1 秒,提莫攻击艾希并使其立即…

图片怎么转换格式jpg?轻松转换图片格式

图片怎么转换格式jpg?在数字化时代,图片作为信息传递的重要载体,其格式转换显得尤为重要。JPG作为一种广泛使用的图片格式,具有压缩比高、兼容性好等特点,深受用户喜爱。那么,如何将其他格式的图片轻松转换…

阿里云服务器安装MySQL、Apache、PHP

节日期间突然想要自己搭建一个个人网站,于是在阿里云申请了一个可以免费使用3个月的服务器,申请的云市场产品Wordpress平台( ALinux3 LNMP PHP7.4)。官方教程使用的CentOs系统,和我申请的ALinux3操作有一些差异&#x…

Oracle使用exp和imp命令实现数据库导出导入

Oracle和MySQL在SQL语法和一些数据库特性上有一些差异,以下是一些常见的差异: 数据类型: Oracle和MySQL支持的数据类型有所不同。例如,Oracle支持NUMBER、DATE、VARCHAR2等类型,而MySQL支持INT、DATE、VARCHAR等类型。字符串比较: 在 Oracle 中,字符串比较默认是区分大小…

【41 Pandas+Pyecharts | 全国星巴克门店数据分析可视化】

文章目录 🏳️‍🌈 1. 导入模块🏳️‍🌈 2. Pandas数据处理2.1 读取数据2.2 查看数据信息2.3 计算营业时长2.4 营业时长区间 🏳️‍🌈 3. Pyecharts数据可视化3.1 各省星巴克门店数量柱状图3.2 各省星巴克门…

【力扣hot100】刷题笔记Day7

前言 身边同学已经陆陆续续回来啦,舍友都开始投简历了,我也要加油啦!刷完hot100就投! 73. 矩阵置零 - 力扣(LeetCode) 标记数组:空间复杂度O(mn) class Solution:def setZeroes(self, matrix:…

【日常聊聊】计算机专业必看的电影

🍎个人博客:个人主页 🏆个人专栏:日常聊聊 ⛳️ 功不唐捐,玉汝于成 目录 前言 正文 方向一:电影推荐 方向二:技术与主题 方向三:职业与人生 结语 我的其他博客 前言 计算机…

flink operator 1.7 更换日志框架log4j 到logback

更换日志框架 flink 1.18 1 消除基础flink框架log4j 添加logback jar 1-1 log4j log4j-1.2-api-2.17.1.jar log4j-api-2.17.1.jar log4j-core-2.17.1.jar log4j-slf4j-impl-2.17.1.jar 1-2 logback logback-core-1.2.3.jar logback-classic-1.2.3.jar slf4j-api-1.7.25.jar2 …

Linux环境安装Git(详细图文)

说明 此文档Linux环境为:Ubuntu 22.04,本文档介绍两种安装方式,一种是服务器能联网的情况通过yum或apt命令下载,第二种采用源码方式安装。 一、yum/apt方式安装 1.yum方式安装Git 如果你的服务器环境是centos/redhot&#xff…

最新Unity游戏主程进阶学习大纲(2个月)

过完年了,很多同学开始重新规划自己的职业方向,找更好的机会,准备升职或加薪。今天给那些工作了1~5年的开发者梳理”游戏开发客户端主程”的学习大纲,帮助大家做好面试准备。适合Unity客户端开发者。进阶主程其实就是从固定的几个方面搭建好完整的知识体…

HarmonyOS—@Observed装饰器和@ObjectLink嵌套类对象属性变化

Observed装饰器和ObjectLink装饰器:嵌套类对象属性变化 概述 ObjectLink和Observed类装饰器用于在涉及嵌套对象或数组的场景中进行双向数据同步: 被Observed装饰的类,可以被观察到属性的变化;子组件中ObjectLink装饰器装饰的状…

蒙特卡洛法批量计算期权希腊值

一般计算期权的希腊值会用中心差分的办法,比如Delta就需要分别计算标的涨跌1%的估值。再加上其他希腊值,我们就需要运行多次蒙特卡洛,时间效率不高。 由于cuda最多支持3个维度,所以我们可以利用这一特点一次性把这些值都算出来。…