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

Linux-Samba

文章目录

    • Samba配置
      • 服务配置

https://i-blog.csdnimg.cn/blog_migrate/58966ddd9b29aabe8841f5ec34f0d31c.gif

🏡作者主页:点击!

🤖Linux专栏:点击!

⏰️创作时间:2024年11月18日13点20分

在这里插入图片描述

Samba配置

  • Samba是一个能让 Linux 系统应用与 Microsoft 网络通讯协议的软件,SMB服务器消息块
  • 最大的功能就是可以用于 Linux 与 Windows 系统直接的文件共享和打印共享,既可以用于 Windows 与 Linux 之间的文件共享也可以用于 Linux 与 Linux 之间的文件共享
  • samba在windows下使用的是 NetBIOS协议,要使用 Linux 下共享出来的文件,确认 Windows 系统安装了 NetBIOS 协议

**三个套件:**samba、samba-common、samaba-client

  • samba:套件包括了SAMBA的主要 daemon 配置(smdb及nmbd)、SAMBA的文件档、以及其他 SAMBA 相关的 logrotate设定文件及开机预设选项配置等
    nmbd用力管理netbios-name、以及工作群组的解析,用到的协议是UDP:137、138端口
    使用TCP传输资料,TCP139、445
    netbios-name来进行查询服务器,同一个群里中必须是独一无二的
  • samba-common:这个套件则主要提供了samba的主要配置 smb.conf、smb.conf 语法校验的测试程序等
  • samba-client:这个套件则提供了当 Linux 做为 samba Client端时,所需要的工具指令
    例如:挂载 samba 配置格式的执行档 smbmount

配置文件

  • samba配置文件存放于 /etc/samba,几个主要的配置文件 smb.conf、imhost、smbpasswd
  • smb.conf:这个 samba 最主要配置文件,唯一的一个配置文件,分为两部分
    global:设定主机功能的项目
    sharedir:每个分享出去的目录的属性设定
  • lmhosts:该配置主要目的在对应 NetBIOS name 与该主机名称的IP
  • smbpasswd:是samba存放使用密码对应表文件
#smb.conf配置文件详解
[global]    #设置samba服务器的整体环境workgroup = MYGROUP    #指定工作组名称server string = Samaba Server Version    #指定主机解释说明netbios name = MYSERVER    #指定samba默认主机名hosts allow	= 127. 192.168.1. 192.168.2.    #允许访问Samba服务器IP地址范围,默认允许所有可以访问security = user    #设置安全等级,user模式需要用户验证,share模式无需验证
[homes]valid users =    #指定允许访问用户invalid users =   #指定不允许访问用户write list =    #指定写入用户read list =    #设置只读用户public list =    #是否可以匿名访问

samba常用命令

sambpasswd:设置samba用户密码。常用参数-a,增加smb用户与配置密码
smbclient:查看计算机分享出来的目录与装置。常用参数 “-L” 后面按需要查看的主机IP,-U 后面接登录的用户名
smbmount:将远程主机分享的目录挂载到 Linux 主机上,与 mount 功能类似
testparm:用于测试 samba 的设置是否正确,测试文件 smb.conf,测试无误表示 samba 服务能正常加载该配置

服务配置

dnf install -y samba samba-common samba-client    #安装软件
systemctl enable smb    #添加道开机启动
systemctl start smb    #启动smb服务
systemctl status smb    #查看状态netstat -lantp | grep 139    #查看端口监听状态
netstat -lantp | grep 445    #查看端口监听状态smbclient -L localhost    #查看服务器的共享状态,需要输入 root 用户名和密码
Uos2338341384
mkdir /var/share /var/smb    #创建共享目录和smb目录
chmod 777 /var/share /var/smb    #更改权限
chown smb:smb /var/smb    #更改smb的属主为 smb
useradd smb -M -s /sbin/nologin    #不创建家目录和无shell登录权限
smbpasswd -a smb    #设置smb用户通过 samba 服务器登录,并设置密码
admin@123
admin@123
  • # vi /etc/samba/smb.conf
    # [global] 配置使用户可以通过匿名访问,添加字段:map to guest = Bad User#新建 [share] 访问目录,设置其权限[share]comment = sharepath = /var/shareguest ok = yesbrowseable = yeswriteable = yes#新建 [smb] 访问目录,设置其权限[smb]comment = smbpath = /var/smbwrite list = smbbroweable = yeswriteable = yesread list = smbvalid users = smbcreate mask = 0777
    
    systemctl restart smb
    systemctl status smbsmbclient -L localhost    #查看服务器的共享状态,需要输入 root 用户名和密码
    Uos2338341384
    

测试 samba 服务器

  • 通过磁盘界面 \\ samba IP \ share 访问目录,无需登陆认证,并且可以创建和删除文件
  • 通过 \\ samba IP \ smb 访问目录,需要提供 smb 用户认证信息后,才能打开文件,并且可以成功在目录 smb 中创建文件夹或文件

运维

  • 设置定时任务每天备份数据,使用shell脚本与定时周期任务 crontab 设置对 share 目录的数据归档备份到 smb 目录

  • 创建数据备份脚本 /root/backup.sh

    #!/bin/bash
    mkdir /var/backup    #创建临时备份目录
    cp -r /var/share/ /var/backup    #将共享文件夹数据复制到备份目录
    tar -zcPvf /var/smb/backup$(date +%Y%m%d).tar.gz /var/backup    #打包共享目录数据到 /var/backup
    rm -rf /var/backup/    #删除临时备份目录
    find /var/smb -mtime +30 -name "*.tar.gz" -exec rm -rf {} \;    #删除30天以上的备份数据
    :wqchmod +x backup.sh    #给脚本设置执行权限crontab -e    #之后输入执行的周期
    0 22 * * * sh /root/backup.sh    #每天22点00分执行备份脚本一次,备份数据到 smb 目录,保存文件名问当天时间crontab -l    #查看周期执行的任务
    

日志

  • 欧拉系统日志默认保存 /var/log,ls 命令查看 samba 服务日志文件
  • 查看 /var/log 目录下 samba 目录的日志文件名:ls -l /var/log/samba
  • 显示最后20行日志记录:tail /var/log/samba/log.smbd -n 20
  • 查看欧拉系统日志最后20行:tail /var/log/messages

故障及解决方案

  • 防火墙问题
  • 重启samba服务
  • 检查配置错误字段 cd /etc/samba;testparm
  • 文件所属组错误:chown smb:smb /var/smb
  • 文件权限错误:chmod 777 /var/smb

相关文章:

Linux-Samba

文章目录 Samba配置服务配置 🏡作者主页:点击! 🤖Linux专栏:点击! ⏰️创作时间:2024年11月18日13点20分 Samba配置 Samba是一个能让 Linux 系统应用与 Microsoft 网络通讯协议的软件&#x…...

【Java Web】JSON 以及 JSON 转换

JSON(JavaScript Object Notation)一种灵活、高效、轻量级的数据交换格式,广泛应用于各种数据交换和存储场景。 基本特点 1、简单易用:JSON格式非常简单,易于理解和使用。 2、轻量级:相比XML等其他数据格…...

Qt 元对象系统

Qt 元对象系统 Qt 元对象系统1. 元对象的概念2. 元对象系统的核心组件2.1 QObject2.2 Q_OBJECT 宏2.3 Meta-Object Compiler (MOC) 3. 信号与槽3.1 基本概念信号与槽的本质信号和槽的关键特征 3.2 绑定信号与槽参数解析断开连接 3.3 标准信号与槽查找标准信号与槽使用示例规则与…...

鸿蒙实战:使用隐式Want启动Ability

文章目录 1. 实战概述2. 实现步骤2.1 创建鸿蒙应用项目2.2 修改Index.ets代码2.3 创建LuzhouAbility2.4 创建Luzhou页面2.5 设置模块配置文件 3. 测试效果4. 实战总结 1. 实战概述 本次鸿蒙应用实战,先创建项目“ImplicitWantStartAbility”,接着修改In…...

go-zero(二) api语法和goctl应用

go-zero api语法和goctl应用 在实际开发中,我们更倾向于使用 goctl 来快速生成代码。 goctl 可以根据 api快速生成代码模板,包括模型、逻辑、处理器、路由等,大幅提高开发效率。 一、构建api demo 现在我们通过 goctl 创建一个最小化的 HT…...

java 操作Mongodb

CRUD基础操作 Springboot 操作 MongoDB 有两种方式。 第一种方式是采用 Springboot 官方推荐的 JPA 方式,这种操作方式,使用简单但是灵活性比较差。第二种方式是采用 Spring Data MongoDB 封装的 MongoDB 官方 Java 驱动 MongoTemplate 对 MongoDB 进行…...

以Java为例,实现一个简单的命令行图书管理系统,包括添加图书、删除图书、查找图书等功能。

江河湖海中的代码之旅:打造你的命令行图书管理系统 一、系统简介 1. Java简介 Java,这个编程语言界的“瑞士军刀”,自1995年诞生以来就以其跨平台的特性和强大的生态系统征服了无数开发者的心。想象一下,Java就像是一条蜿蜒曲折…...

[JavaWeb]微头条项目

完整笔记和项目代码: https://pan.baidu.com/s/1PZBO0mfpwDPic4Ezsk8orA?pwdwwp5 提取码: wwp5 JavaWeb-微头条项目开发 1 项目简介 1.1 业务介绍 微头条新闻发布和浏览平台,主要包含业务如下 用户功能 注册功能登录功能 头条新闻 新闻的分页浏览通过标题关键字搜…...

Linux(CentOS)安装达梦数据库 dm8

CentOS版本:CentOS 7,查看操作系统版本信息,请查阅 查看Linux内核版本信息 达梦数据库版本:dm8 一、获取 dm8 安装文件 1、下载安装文件 打开达梦官网:https://www.dameng.com/ 下载的文件 解压后的文件 2、上传安…...

【专题】中国企业出海洞察报告暨解码全球制胜之道报告汇总PDF洞察(附原数据表)

原文链接:https://tecdat.cn/?p38314 在当今全球化的浪潮中,中国企业的出海行动正以前所未有的规模和速度展开,成为全球经济舞台上的重要力量。本报告旨在对 2024 年中国企业出海情况进行深度洞察,涵盖多个领域和视角。 从对外投…...

[ 跨域问题 ] 前后端以及服务端 解决跨域的各种方法

这篇文章主要介绍了跨域问题,包括其定义、产生原因及各种解决方法。原因是浏览器安全策略限制,方法有 JSONP、CORS、Domain、 postMessage、Nginx配置、.NetCore配置。 前言 什么是跨域问题? 在Web应用中,当一个网页的脚本试图去请求另一个域…...

网络安全之信息收集-实战-2

请注意,本文仅供合法和授权的渗透测试使用,任何未经授权的活动都是违法的。 目录 7、网络空间引擎搜索 8、github源码泄露 9、端口信息 10、框架指纹识别 11、WAF识别 12、后台查找 7、网络空间引擎搜索 FOFA:https://fofa.info/ 360 …...

利用飞书多维表格自动发布版本

文章目录 背景尝试1,轮询尝试2,长连接 背景 博主所在的部门比较奇特,每个车型每周都需要发版,所以实际上一周会发布好几个版本。经过之前使用流水线自动发版改造之后,发版的成本已经大大降低了,具体参考&a…...

深入内核讲明白Android Binder【一】

深入内核讲明白Android Binder【一】 前言一、Android Binder应用编写概述二、基于C语言编写Android Binder跨进程通信Demo0. Demo简介1. 服务的管理者server_manager.c2. Binder服务端代码实现 test_service.c2.1 实现思路2.2 完整实现代码 3. Binder客户端代码实现 test_clie…...

Photoshop(PS)——人像磨皮

1.新建一个文件,背景为白色,将图片素材放入文件中 2.利用CtrlJ 复制两个图层出来,选择第一个拷贝图层,选择滤镜---杂色---蒙尘与划痕 3.调整一下数值,大概能够模糊痘印痘坑,点击确定。 4.然后选择拷贝2图层…...

如何用Excel批量提取文件夹内所有文件名?两种简单方法推荐

在日常办公中,我们有时需要将文件夹中的所有文件名整理在Excel表格中,方便管理和查阅。手动复制文件名既费时又易出错,因此本文将介绍两种利用Excel自动提取文件夹中所有文件名的方法,帮助你快速整理文件信息。 方法一&#xff1…...

YOLOv8改进,YOLOv8通过RFAConv卷积创新空间注意力和标准卷积,包括RFCAConv, RFCBAMConv,二次创新C2f结构,助力涨点

摘要 空间注意力已广泛应用于提升卷积神经网络(CNN)的性能,但它存在一定的局限性。作者提出了一个新的视角,认为空间注意力机制本质上解决了卷积核参数共享的问题。然而,空间注意力生成的注意力图信息对于大尺寸卷积核来说是不足够的。因此,提出了一种新型的注意力机制—…...

【实验11】卷积神经网络(2)-基于LeNet实现手写体数字识别

👉🏼目录👈🏼 🍒1. 数据 1.1 准备数据 1.2 数据预处理 🍒2. 模型构建 2.1 模型测试 2.2 测试网络运算速度 2.3 输出模型参数量 2.4 输出模型计算量 🍒3. 模型训练 🍒4.模…...

chatgpt训练需要什么样的gpu硬件

训练像ChatGPT这样的大型语言模型对GPU硬件提出了极高的要求,因为这类模型的训练过程涉及大量的计算和数据处理。以下是训练ChatGPT所需的GPU硬件的关键要素: ### 1. **高性能计算能力** - **Tensor Cores**: 现代深度学习训练依赖于Tensor Cores&#…...

Kubernetes常用命令

Kubernetes常用命令 一、集群管理 kubectl cluster-info&#xff1a;显示集群信息&#xff0c;包括控制平面地址和服务的 URL。 kubectl get nodes&#xff1a;查看集群中的节点列表&#xff0c;包括节点状态、IP 地址等信息。 kubectl describe node <node-name>&…...

龙虎榜——20250610

上证指数放量收阴线&#xff0c;个股多数下跌&#xff0c;盘中受消息影响大幅波动。 深证指数放量收阴线形成顶分型&#xff0c;指数短线有调整的需求&#xff0c;大概需要一两天。 2025年6月10日龙虎榜行业方向分析 1. 金融科技 代表标的&#xff1a;御银股份、雄帝科技 驱动…...

XCTF-web-easyupload

试了试php&#xff0c;php7&#xff0c;pht&#xff0c;phtml等&#xff0c;都没有用 尝试.user.ini 抓包修改将.user.ini修改为jpg图片 在上传一个123.jpg 用蚁剑连接&#xff0c;得到flag...

Golang 面试经典题:map 的 key 可以是什么类型?哪些不可以?

Golang 面试经典题&#xff1a;map 的 key 可以是什么类型&#xff1f;哪些不可以&#xff1f; 在 Golang 的面试中&#xff0c;map 类型的使用是一个常见的考点&#xff0c;其中对 key 类型的合法性 是一道常被提及的基础却很容易被忽视的问题。本文将带你深入理解 Golang 中…...

React Native 导航系统实战(React Navigation)

导航系统实战&#xff08;React Navigation&#xff09; React Navigation 是 React Native 应用中最常用的导航库之一&#xff0c;它提供了多种导航模式&#xff0c;如堆栈导航&#xff08;Stack Navigator&#xff09;、标签导航&#xff08;Tab Navigator&#xff09;和抽屉…...

Unity3D中Gfx.WaitForPresent优化方案

前言 在Unity中&#xff0c;Gfx.WaitForPresent占用CPU过高通常表示主线程在等待GPU完成渲染&#xff08;即CPU被阻塞&#xff09;&#xff0c;这表明存在GPU瓶颈或垂直同步/帧率设置问题。以下是系统的优化方案&#xff1a; 对惹&#xff0c;这里有一个游戏开发交流小组&…...

高频面试之3Zookeeper

高频面试之3Zookeeper 文章目录 高频面试之3Zookeeper3.1 常用命令3.2 选举机制3.3 Zookeeper符合法则中哪两个&#xff1f;3.4 Zookeeper脑裂3.5 Zookeeper用来干嘛了 3.1 常用命令 ls、get、create、delete、deleteall3.2 选举机制 半数机制&#xff08;过半机制&#xff0…...

Java-41 深入浅出 Spring - 声明式事务的支持 事务配置 XML模式 XML+注解模式

点一下关注吧&#xff01;&#xff01;&#xff01;非常感谢&#xff01;&#xff01;持续更新&#xff01;&#xff01;&#xff01; &#x1f680; AI篇持续更新中&#xff01;&#xff08;长期更新&#xff09; 目前2025年06月05日更新到&#xff1a; AI炼丹日志-28 - Aud…...

【git】把本地更改提交远程新分支feature_g

创建并切换新分支 git checkout -b feature_g 添加并提交更改 git add . git commit -m “实现图片上传功能” 推送到远程 git push -u origin feature_g...

Fabric V2.5 通用溯源系统——增加图片上传与下载功能

fabric-trace项目在发布一年后,部署量已突破1000次,为支持更多场景,现新增支持图片信息上链,本文对图片上传、下载功能代码进行梳理,包含智能合约、后端、前端部分。 一、智能合约修改 为了增加图片信息上链溯源,需要对底层数据结构进行修改,在此对智能合约中的农产品数…...

C++ 设计模式 《小明的奶茶加料风波》

&#x1f468;‍&#x1f393; 模式名称&#xff1a;装饰器模式&#xff08;Decorator Pattern&#xff09; &#x1f466; 小明最近上线了校园奶茶配送功能&#xff0c;业务火爆&#xff0c;大家都在加料&#xff1a; 有的同学要加波霸 &#x1f7e4;&#xff0c;有的要加椰果…...