架设Samba服务器实现Linux用户与Windows用户共享资源

2023-11-08 19:20

本文主要是介绍架设Samba服务器实现Linux用户与Windows用户共享资源,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1、安装Samba服务器

a)  首先检查Linux系统是否安装了Samba服务器

rpm -qa|grep samba

若出现类似以下信息,说明已经安装

samba-common-libs-4.10.16-24.el7_9.x86_64
samba-libs-4.10.16-24.el7_9.x86_64
samba-client-4.10.16-24.el7_9.x86_64
samba-common-4.10.16-24.el7_9.noarch
samba-client-libs-4.10.16-24.el7_9.x86_64

b)  一般情况,在安装Linux时自带Samba服务器,若未安装,可使用以下命令进行安装

sudo yum install samba

2、检查Windows能否与Linux通信

在Windows中,打开cmd使用以下命令测试连接。

ping IP地址

IP地址:可在Linux中使用ifconfig命令查看,地址可能有多个,使用ens33这项的IP地址即可。若出现类似于“请求超时”这种情况,请进行以下步骤。若正常接收,请跳过。

a)  使用ifconfig命令查看Linux的所有网络接口及相关信息

[root@qianuo ~]# ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.72.130  netmask 255.255.255.0  broadcast 192.168.72.255
        inet6 fe80::8885:5bca:d3b4:868d  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:20:95:cc  txqueuelen 1000  (Ethernet)
        RX packets 391  bytes 247700 (241.8 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 310  bytes 26053 (25.4 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

virbr0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        inet 192.168.122.1  netmask 255.255.255.0  broadcast 192.168.122.255
        ether 52:54:00:f7:18:5c  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

说明:

ens33:物理网卡 (注意:不同的设备,ens后面的数字可能不同)      

Io:本地回环接口,用于本地主机通信的虚拟网络接口

virbr0:由libvirt创建的默认虚拟网络接口,提供虚拟机网络连接的功能

在这里我们只需要关注ens33,它用于与其他设备进行通信

b)  查看ens33的相关信息。

  • 如果在以上信息中没有显示ens33,使用以下命令启用
ifconfig ens33 up
  • 查看ens33的连接状态,两种方法:
    1、使用ifconfig命令查看ens33设备的相关信息,在相关信息中,若出现RUNING或UP说明设备正在工作,否则不在工作状态。
    2、使用以下方法检查ens33的连接状态

        

  • 若未连接或不在工作,则使用以下命令连接该设备,使设备能够正常通信。
numcli d connect ens33

c)    将虚拟机的网络从桥接模式设置为NAS模式

在VMware上方的选项卡中,选择虚拟机 -----> 选择设置 -----> 切换到网络适配器 -----> 在网络连接模块中,选择NAT模式 -----> 单击确定即可

d)  在Windows使用cmd测试连接

C:\Users\20137>ping 192.168.72.130

正在 Ping 192.168.72.130 具有 32 字节的数据:
来自 192.168.72.130 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.72.130 的回复: 字节=32 时间=1ms TTL=64
来自 192.168.72.130 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.72.130 的回复: 字节=32 时间<1ms TTL=64

192.168.72.130 的 Ping 统计信息:
    数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
    最短 = 0ms,最长 = 1ms,平均 = 0ms

 若出现以上的信息,说明Windows与Linux能正常通信了。

3、开始架设Samba服务器

        a) 创建smb用户组

groupadd smb

        b)  创建smb用户,设置用户密码

useradd zh
passwd zh

        c)  将smb用户加入到smb用户组

gpasswd -a zh smb

        d)  创建共享目录

mkdir /tmp/share

        e)  打开并修改smb.conf配置文件

打开smb.conf
vim /etc/samba/smb.conf修改的内容:
[home]workgroup = smb    #设工作组security = user    #设置安全级别为用户添加的内容:
[share]path = /tmp/share  #设置共享目录writable = yes     #设置目录可写browseable = yes   #设置目录可浏览guest ok = yes     #必要设置,否则会出现访问不通过的情况

        f)  重启smb服务

systemctl restart smb

        g)  关闭防火墙

systemctl stop firewalld.service

4、在Windows访问Linux的共享目录

        a)  win + r 打开 运行,输入以下信息后确定。

\\IP地址

        b) 使用创建的smb用户登录

        c)  登入后的页面

         

     

这篇关于架设Samba服务器实现Linux用户与Windows用户共享资源的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/371947

相关文章

Linux系统性能检测命令详解

《Linux系统性能检测命令详解》本文介绍了Linux系统常用的监控命令(如top、vmstat、iostat、htop等)及其参数功能,涵盖进程状态、内存使用、磁盘I/O、系统负载等多维度资源监控,... 目录toppsuptimevmstatIOStatiotopslabtophtopdstatnmon

c++ 类成员变量默认初始值的实现

《c++类成员变量默认初始值的实现》本文主要介绍了c++类成员变量默认初始值,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录C++类成员变量初始化c++类的变量的初始化在C++中,如果使用类成员变量时未给定其初始值,那么它将被

Qt使用QSqlDatabase连接MySQL实现增删改查功能

《Qt使用QSqlDatabase连接MySQL实现增删改查功能》这篇文章主要为大家详细介绍了Qt如何使用QSqlDatabase连接MySQL实现增删改查功能,文中的示例代码讲解详细,感兴趣的小伙伴... 目录一、创建数据表二、连接mysql数据库三、封装成一个完整的轻量级 ORM 风格类3.1 表结构

基于Python实现一个图片拆分工具

《基于Python实现一个图片拆分工具》这篇文章主要为大家详细介绍了如何基于Python实现一个图片拆分工具,可以根据需要的行数和列数进行拆分,感兴趣的小伙伴可以跟随小编一起学习一下... 简单介绍先自己选择输入的图片,默认是输出到项目文件夹中,可以自己选择其他的文件夹,选择需要拆分的行数和列数,可以通过

Python中将嵌套列表扁平化的多种实现方法

《Python中将嵌套列表扁平化的多种实现方法》在Python编程中,我们常常会遇到需要将嵌套列表(即列表中包含列表)转换为一个一维的扁平列表的需求,本文将给大家介绍了多种实现这一目标的方法,需要的朋... 目录python中将嵌套列表扁平化的方法技术背景实现步骤1. 使用嵌套列表推导式2. 使用itert

Python使用pip工具实现包自动更新的多种方法

《Python使用pip工具实现包自动更新的多种方法》本文深入探讨了使用Python的pip工具实现包自动更新的各种方法和技术,我们将从基础概念开始,逐步介绍手动更新方法、自动化脚本编写、结合CI/C... 目录1. 背景介绍1.1 目的和范围1.2 预期读者1.3 文档结构概述1.4 术语表1.4.1 核

在Linux中改变echo输出颜色的实现方法

《在Linux中改变echo输出颜色的实现方法》在Linux系统的命令行环境下,为了使输出信息更加清晰、突出,便于用户快速识别和区分不同类型的信息,常常需要改变echo命令的输出颜色,所以本文给大家介... 目python录在linux中改变echo输出颜色的方法技术背景实现步骤使用ANSI转义码使用tpu

Python使用python-can实现合并BLF文件

《Python使用python-can实现合并BLF文件》python-can库是Python生态中专注于CAN总线通信与数据处理的强大工具,本文将使用python-can为BLF文件合并提供高效灵活... 目录一、python-can 库:CAN 数据处理的利器二、BLF 文件合并核心代码解析1. 基础合

Python使用OpenCV实现获取视频时长的小工具

《Python使用OpenCV实现获取视频时长的小工具》在处理视频数据时,获取视频的时长是一项常见且基础的需求,本文将详细介绍如何使用Python和OpenCV获取视频时长,并对每一行代码进行深入解析... 目录一、代码实现二、代码解析1. 导入 OpenCV 库2. 定义获取视频时长的函数3. 打开视频文

linux hostname设置全过程

《linuxhostname设置全过程》:本文主要介绍linuxhostname设置全过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录查询hostname设置步骤其它相关点hostid/etc/hostsEDChina编程A工具license破解注意事项总结以RHE