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

samba服务器的安装

一、网络配置

🚀 VMware 虚拟机 NAT 模式配置步骤

1. 准备主机网络信息

首先,打开VMware的编辑>虚拟网络编辑器

  • 选中VMnet8(NAT模式)。

  • 记下这三项关键信息,稍后配置时会用到:

    • 子网 IP(例如192.168.xx.0

    • 子网掩码(例如255.255.255.0

    • 网关 IP(点击"NAT设置"按钮查看,通常是192.168.xx.2

  • 📌 注意:若使用静态IP,建议取消勾选“使用本地 DHCP 服务”。

2. 在 CentOS 7 内配置网络

现在进入 CentOS 7 虚拟机内部进行操作。

  • 确认网卡名称:使用ip addrifconfig命令,查看你的网卡名称(如ens33ens32)。

  • 编辑网卡配置文件

    • 执行命令vi /etc/sysconfig/network-scripts/ifcfg-ens33(将ens33换成你的实际网卡名)。

    • 确保以下参数配置正确:

    参数项配置值说明
    BOOTPROTOstatic设为静态IP,若用DHCP自动获取则填dhcp
    ONBOOTyes确保系统启动时激活此网卡
    IPADDR192.168.xx.100自定义静态IP,必须与VMnet8子网在同一网段
    NETMASK255.255.255.0与VMnet8子网掩码保持一致
    GATEWAY192.168.xx.2必须与VMnet8的网关地址一致
    DNS1114.114.114.114国内通用DNS服务器,也可填8.8.8.8
    DNS2223.5.5.5备用DNS服务器(阿里)

    关于配置方法

    • 静态IP(推荐):按照上表填写,需确保IPADDR未被局域网内其他设备占用。

    • 动态IP(DHCP):将BOOTPROTO设为dhcp,并注释掉或删除IPADDRNETMASKGATEWAY这几行即可。

  • 重启网络服务:保存文件并退出编辑器后,执行systemctl restart network使配置生效。

3. 验证网络连通性

最后,进行连通性测试:

  • 测试网关ping <你的网关IP>,例如ping 192.168.xx.2

  • 测试外网ping www.baidu.com。如果ping不通但能ping8.8.8.8,说明DNS解析可能有问题,请检查/etc/resolv.conf文件。

二、yum源的安装配置

基础:

1)yum源的文件地址存放:/etc/yun.repos.d/centOS-Base.repo
2)查看当前已启用的yum源:

yum repolist # 列出所有已启用的源 yum repolist all # 包括已禁用的源

3)配置文件的基本参数
1、官方源文件内容:

[base] name=CentOS-$releasever - Base baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/ gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 enabled=1

4)每个.repo文件的作用

文件名默认 enabled用途
CentOS-Base.repo1核心软件包源:base、updates、extras(日常安装/更新软件)
CentOS-Debuginfo.repo0(默认禁用)调试符号包,一般用户不需要
CentOS-Sources.repo0源码包(SRPM),普通用户无需启用
CentOS-CR.repo0Continuous Release,滚动更新(很少用)
CentOS-fasttrack.repo0快速跟踪更新(部分软件提前发布)
CentOS-Media.repo0本地光盘/ISO 作为源
CentOS-Vault.repo0归档旧版本软件包(CentOS 7 停止维护后,可启用此源)
CentOS-x86_64-kernel.repo0特殊内核版本源

结论:默认情况下,只有CentOS-Base.repo启用的,其他都是enabled=0。因此更换阿里云源时,只需要替换这一个生效的源文件。其他文件即使存在,也不会影响 Yum 的行为。

2、配置参数:

  • [仓库ID]:唯一标识符
  • name:仓库描述
  • baseurl:软件包所在的 URL 或本地路径
  • mirrorlist:镜像列表 URL(与 baseurl 二选一)
  • enabled=1:启用该仓库
  • gpgcheck=1:开启 GPG 校验
  • gpgkey:GPG 公钥的位置

一、本地yum源的安装
1、虚拟机上勾选连接,确保光盘在系统上
2、使用df -h命令查看光盘是否挂载
3、使用cd进入yum源的配置文件,将本地源进行备份为backup文件
4、用vim命令创建一个名为local.repo的配置文件将参数写入文本中
5、清理并重建缓存
二、阿里云源的更换(下载阿里云源)
更换源的本质:修改.repo文件,让 Yum 指向另一个提供相同软件包(但可能更快、更稳定)的服务器。
步骤
1、备份原本的镜像源

mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

2、下载阿里云CentOS7的镜像源配置文件

curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

或使用wget(如若下载了该工具包):
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
3、清除并重建镜像源缓存
4、验证源是否生效

修正:

Yum源的更换分为两种方式:手动配置和脚本一键自动配置
一、手动更换为阿里的yum源
在前置任务(网络的配置)完成的情况下,我们进入/etc/yum.repos.d/目录下用ls查看已有的.repo文件并在该目录下创建备份文件并对其进行备份(可单一文件、或所有文件)

# 进入yum源配置目录 cd /etc/yum.repos.d/ # 创建备份文件夹,并将所有.repo文件移入备份 mkdir -p backup && mv *.repo backup/

接着用curl命令下载阿里云的镜像源地址:

curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo

下载完成后清理缓存,并重新建立源缓存:

clean all yum makecache

最后验证是否更换成功:

yum repolist

注意:如果显示yum的源缓存建立完毕,说明阿里源生效了!

三、samba服务的搭建步骤

1. 查看服务器 IP 地址

bash

ip addr show # 或 ifconfig # 需要 net-tools 包

原理ip addr显示所有网络接口的 IP 地址、MAC、状态。用于后续客户端访问。

2. 确定 samba 是否安装,未安装则安装

bash

rpm -qa | grep samba # 查询已安装的 samba 相关包 yum install -y samba samba-client samba-common

原理rpm -qa列出所有已安装包,通过grep过滤。yum会自动解决依赖。

3. 查看 samba 服务状态,若未启动则启动

bash

systemctl status smb nmb # 查看状态 systemctl start smb nmb # 启动服务 systemctl enable smb nmb # 设置开机自启

原理smb为核心文件共享服务,nmb为 NetBIOS 名称解析服务(让 Windows 能通过主机名找到服务器)。

4. 备份 samba 配置文件

bash

cp /etc/samba/smb.conf /etc/samba/smb.conf.bak

原理:备份原始配置,避免配置错误无法恢复。

5. 创建用户 smbuser 及共享目录

bash

useradd -M -s /sbin/nologin smbuser # 创建系统用户,无家目录,禁止登录 smbpasswd -a smbuser # 设置 samba 密码(与系统密码独立) mkdir -p /home/smbuser/share chown smbuser:smbuser /home/smbuser/share chmod 755 /home/smbuser/share

原理:Samba 用户必须对应一个系统用户,但通常设为不可登录(nologin)增强安全。smbpasswd -a将该用户添加到 samba 密码数据库(/var/lib/samba/private/passdb.tdb)。目录权限755表示所有者可读写执行,组和其他可读执行。

6. 按照要求配置 samba 服务(编写配置文件)

编辑/etc/samba/smb.conf,在末尾添加:

ini

[smbshare] comment = Share for smbuser path = /home/smbuser/share valid users = smbuser writable = yes browseable = yes create mask = 0644 directory mask = 0755

参数解释

  • [smbshare]:共享名,客户端看到的文件夹名。

  • valid users:只允许 smbuser 访问。

  • writable = yes:允许上传、修改、删除文件。

  • create mask / directory mask:新建文件的权限掩码。

7. 校验配置文件是否正确

bash

testparm

原理testparm会解析smb.conf,检查语法错误并输出最终生效的配置。建议每次修改后都运行。

8. 重启 samba 服务

bash

systemctl restart smb nmb

原理:使新配置生效。

9. 配置防火墙与 SELinux(实验要求可直接关闭)

关闭防火墙(仅实验环境):

bash

systemctl stop firewalld systemctl disable firewalld

关闭 SELinux

bash

setenforce 0 # 临时关闭 sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config # 永久关闭

原理:防火墙会拦截 Samba 端口(139,445,137,138),SELinux 会限制 samba 进程对目录的访问。关闭可简化实验,但生产环境应放行服务而非关闭。

10. 使用 Windows 系统测试 samba 服务

测试要求实现方法

  • 要求1:在 Linux 中创建学号文件,内容为班级+姓名(缩写)

    bash

    echo "班级:软件工程1班 姓名:张三" > /home/smbuser/share/2024001.txt

    然后在 Windows 资源管理器地址栏输入\\<Linux服务器IP>,输入用户名smbuser和 samba 密码,打开共享smbshare,即可看到该文件。

  • 要求2:在 Windows 共享目录中右键新建文本文件,命名为你的中文名字(如李四.txt),内容写学号和班级。保存后回到 Linux:

    bash

    cat /home/smbuser/share/李四.txt

    应能看到内容。

http://www.cnnetsun.cn/news/1820713.html

相关文章:

  • GitHub汉化插件终极指南:5分钟打造全中文开发环境
  • 终极指南:如何在Windows 10/11上快速安装开源Android子系统WSABuilds
  • GTE-Base-ZH与卷积神经网络结合:多模态内容理解初探
  • AIGlasses_for_navigation开发环境配置:Node.js安装及后端服务框架搭建
  • 2026年揭秘!日照那些让你放心吃海鲜,绝不宰客的宝藏店铺
  • OpenClaw 新手部署教程:WSL2 静默自启 + Windows 浏览器访问
  • 3D游戏开发实战:Unity中快速计算点到直线距离的两种高效方法
  • 昨天还在说没对象,今天工作都没了。 那我有什么?有房贷啊,还有一身过劳的臭毛病
  • ClawdBot惊艳效果:模糊车牌图片→OCR识别→中英双语翻译+校验
  • AI论文写作哪个好?2026年精选6款AI写论文软件排行榜,AI率精准控制无压力!
  • Defender Control:彻底掌控Windows安全防护的3种实用方法
  • CUDA driver error: invalid argument问题修改
  • ChatGLM-6B GPU资源监控教程:nvidia-smi实时观测显存与计算利用率
  • 终极指南:5步掌握Blender与ZBrush无缝桥接插件GoB的完整安装与使用教程
  • 3分钟搞定!Windows 11任务栏拖放功能一键修复指南 [特殊字符]
  • Topit:重塑数字注意力流,Mac端智能视觉层管理终极方案
  • 如何高效备份微信聊天记录:5个实用技巧指南
  • AIGlasses_for_navigation惊艳效果:便利店货架中红牛与AD钙奶并排摆放识别特写
  • 告别重复点击疲劳:MouseClick鼠标连点器完整指南
  • MedGemma医疗助手使用指南:如何提问才能获得更专业的医学建议?
  • 告别地理数据处理烦恼:Mapshaper开源工具的终极解决方案
  • USB安全弹出神器:告别“设备正在使用“烦恼的终极解决方案
  • 如何快速掌握BlenderKit:3个简单秘诀让你成为3D创作高手
  • Wan2.1-umt5开发环境搭建:从操作系统重装到Anaconda环境配置全流程
  • 抖音内容批量下载神器:零基础也能轻松掌握的免费工具
  • 南北阁Nanbeige 4.1-3B固件开发实战:从编译到烧录全流程
  • 从SQL注入到Linux提权:DC-3靶场渗透实战中的5个关键转折点解析
  • 零知开源实战——基于STM32F4与BMP581的ST7789中文气象站开发指南
  • Java后端集成cv_unet_image-colorization实战:SpringBoot服务化部署
  • Sunshine游戏串流服务器终极指南:从架构解析到生产部署