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(就是网上邻居功能)开启了。

Samba的作用

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

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

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

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

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

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

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

软链接与硬链接的区别

软链接与硬链接是什么?

  • 为解决文件的共享使用,Linux 系统引入了两种链接:硬链接 (hard link) 与软链接(又称符号链接,即 soft link 或 symbolic link)。

  • 链接为 Linux 系统解决了文件的共享使用,还带来了隐藏文件路径、增加权限安全及节省存储等好处。

原理与本质

  • 硬链接:
    由于linux下的文件是通过索引节点(Inode)来识别文件。
    硬链接实际上是同一文件系统中同一个文件的多个“入口”。每个硬链接指向的是同一个文件的inode(索引节点),所有硬链接共享相同的inode和数据块。这意味着,无论你通过哪个硬链接访问文件,实际上看到的都是同一份数据。当你修改其中一个硬链接对应的文件内容时,其他所有硬链接所指的文件内容也会随之改变。删除任意一个硬链接并不会影响其他硬链接或者文件本身,只有当所有硬链接都被删除(以及没有其他引用)时,文件内容才会真正被删除。

  • 软链接:
    软链接则是一个独立的特殊类型的文件,它存储的是目标文件或目录的路径。当你访问软链接时,系统会跟踪这个路径并解析到真正的目标文件。因此,软链接更像是一个指向目标文件的指针或快捷方式。如果原文件被删除或移动,软链接将失效,因为系统找不到其所指向的目标。
    相当于我们 Windows 中的快捷方式,即如果你软链接一个目录,只是一个目录的快捷方式到指定位置,操作系统找这个快捷方式会直接找到真实目录下的文件。

文件系统范围

  • 硬链接:只能在同一文件系统内部创建,不支持跨文件系统、跨分区、跨设备建立操作。

  • 软链接:可以跨越不同的文件系统、分区、设备建立操作,不受此限制。

目录链接

  • 硬链接:不支持对目录创建硬链接,虽然现代一些Linux版本允许对目录做硬链接,但在一般情况下并不推荐这样做,因为可能导致循环引用等问题。

  • 软链接:可以对文件或目录创建软链接,经常被用来链接目录。

删除源文件的影响

  • 硬链接:即使源文件(即其他硬链接所指向的文件)被删除,只要存在至少一个硬链接,文件内容仍能通过其它硬链接访问,不会消失。

  • 软链接:如果删除了软链接所指向的源文件,那么通过软链接尝试访问文件将会失败,因为软链接失去了有效的指向。

使用场景

  • 硬链接:通常用于确保重要的文件不会因误删或重命名而丢失,尤其适合备份和保护关键数据。

  • 软链接:更多地用于灵活的文件组织结构,例如提供程序的别名或创建易于维护的软件环境,因为它能够跟随源文件的移动和更改。

正文概览

需求

  • 在Windows系统上将NAS的文件夹挂载到本地任意文件夹内,映射为本地磁盘,而不是网络驱动器(如Z盘)。

原理

  • Windows本身并没有直接提供将Samba共享映射为本地磁盘的功能,因为Samba共享本质上仍然是通过网络协议(如SMB/CIFS)进行访问的。

  • 在Windows上,Samba共享通常会被映射为网络驱动器(如Z盘),而不是本地磁盘。
    1735180494874.jpg

演示环境

  • 黑群晖物理机

  • Windows11物理机

  • 同一局域网下

设置教程

  1. 例如我们需要映射群晖的docker文件夹

  2. 先在Windows电脑上按下win+R键,打开运行,输入你NAS的IP+需要访问的文件夹。

    # 将IP地址换成你自己NAS的IP
    # 将docker换成你自己的NAS文件夹
    
    \\172.16.19.200\docker

    image-mslz.png

  3. 访问NAS的文件夹(初次访问会提示输入有权限访问该文件夹的NAS账户,进行登录并记住账户。演示之前已经输入过了,不再复现。)

  4. 以管理员身份运行CMD

  5. 假设我们将NAS文件夹映射到D盘根目录内

  6. 在CMD窗口中执行下面的命令

    # 其中/d或者/D指的是软链接,对应的硬链接参数是/J或者/j。
    # D:\NAS 是映射到D盘根目录,映射成一个名为NAS的文件夹。
    # 将\\172.16.19.200\docker换成你自己的NAS文件夹路径
    
    mklink /D D:\NAS \\172.16.19.200\docker

    image-zlkn.png

  7. 打开Windows的D盘,可以看到文件夹已经挂载成功。

  8. 打开进入此文件夹就可以看到我们NAS上的文件了

  9. 如果要删除此文件夹,那么直接单击选中后点击删除即可。

参考文档

功德+1(狗子).gif

👇👇👇