Linux自学笔记——文件共享之samba

简介:

 Samba:Service Message Block, 是linux和unix系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成。SMB是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务。SMB协议是客户机/服务器型协议,客户机通过该协议可以访问服务器上的共享文件系统、打印机及其他资源。通过设置NetBIOS over TCP/IP使得samba不但能与局域网主机分享资源,还能与全世界电脑分享资源。
协议端口:137/udp,138/udp,139/tcp, 139/tcp
NetBIOS:windows基于主机实现互相通信的机制;15个字符;
CIFS:cifs是一个新提出的协议,它使程序可以访问远程internet计算机上的文件并要求此计算机提供服务。CIFS使用客户/服务器模式。客户程序请求远在服务器上的服务器程序为它提供服务。服务器获得请求并返回回应。CIFS是公共的或开放的SMB协议版本,并由Microsoft使用。SMB协议在局域网上用于服务器文件访问和打印的协议。像SMB协议一样,CIFS高层运行,而不像TCP/IP协议那样运行在底层。CIFS可以看做是应用程序协议和文件传输协议和超文本协议的一个实现。
Windows默认支持CIFS和SMB,linux可以通过CIFS便可以跟windows之间通信。
Samba:
nmbd:netbios
smbd:cifs (
winbindd:
UNC路径:\SERVER\shared_name
交互式数据访问:
#smbclient –L HOST –U USERNAME
获取到共享信息后,
#smbclient //SERVER/shared_name –U USERNAME
基于挂载的方式访问:
Mount –t cifs //SERVER/shared_name /mount_point –o username=USERNAME,password=PASSWORD
服务器:
#yum –y install samba
服务脚本:
/etc/rc.d/init.d/nmb
/etc/rc.d/init.d/smb
主程序:
/usr/sbin/nmbd:
Network Naming Service,主要是完成NetBIOS名称解析;
/usr/sbin/smbd:
SMB/CIFS Service:核心主程序,完成SMB/CIFS服务
主配置文件:
/etc/samba/smb.conf
Samba用户:
账号:都是系统用户,/etc/password
密码:samba服务自有密码文件,江系统用户添加为samba的命令为:smbpasswd
smbpasswd:
-a Sys_User:添加系统用户为samba用户
-d:禁用samba用户
-e:启用samba用户
-x:删除samba用户
主配置文件:/etc/samba/smb.conf
全局设定(global段)
特定共享的设定
私有家目录
打印机共享
自定义共享: 
[shared_name]
Path =/path/to/share_directory
Comment = Comment String
Guest ok = {yes|no} 
Public = {yes|no}
Writable = {yes|no}
Read only = {yes|no}
Write list = USERNAME,+GROUP_NAME(也可以写作@GROUP_NAME)
Note:修改samba的配置文件后必须要restart才能生效;

示例:建立samba共享,共享目录为/data,要求:
1) 共享名为shared,工作组为claude;
2) 添加组develop,添加用户gentoo,centos和ubuntu,其中gentoo和centos以develop为附加组,U币;ubuntu不属于develop组;密码均为用户名;
3) 添加samba用户gentoo,centos和ubuntu,密码均为claude666;
4) 此samba共享的shared仅允许develop组具有写权限,其他用户只能以只读方式访问;
5) 此samba共享服务仅允许来自192.168.19.0/24网络的主机访问;
步骤:
以下samba服务器为192.168.19.134,测试主机为192.168.19.135 , 192.168.115.32

  1. 创建共享目录;
    Linux自学笔记——文件共享之samba
  2. 创建相关用户相关组;
    Linux自学笔记——文件共享之samba
    设置密码:
    Linux自学笔记——文件共享之samba
  3. 添加samba用户;
    Linux自学笔记——文件共享之samba
  4. 设置共享目录权限;
    Linux自学笔记——文件共享之samba
  5. 编辑配置文件/etc/samba/smb.conf;
    1) 设置工作组,已经访问权限;
    Linux自学笔记——文件共享之samba
    2) 自定义共享;
    Linux自学笔记——文件共享之samba
  6. 检测文件语法错误;
    Linux自学笔记——文件共享之samba
  7. 启动服务;(需启动两个服务)
    Linux自学笔记——文件共享之samba
    测试:
  8. 查看指定服务器上的共享信息;
    Linux自学笔记——文件共享之samba
  9. 以挂载方式访问;
    1) 以ubuntu用户登录挂载访问;
    Linux自学笔记——文件共享之samba
    2) 以gentoo用户挂载访问;
    Linux自学笔记——文件共享之samba
    可以看出以gentoo用户登录挂载,可以读写;
    3) 在windows上访问;
    Linux自学笔记——文件共享之samba

Samba-swat:
Samba-swat是一个基于web的samba管理工具,支持从任何具有web浏览器的计算机进行GUI配置。Swat本身就是一个服务器,独立于samba服务器。其服务进程又被设计为超级守护进程xinetd管理,由xinetd代为监听在tcp的901端口。

  1. 安装samba-swat;
    #yum install –y samba-swat
  2. 编辑配置文件/etc/xinetd.d/swat
    Linux自学笔记——文件共享之samba
  3. 启动xinetd服务并查看901端口是否在监听状态;
    Linux自学笔记——文件共享之samba
  4. 测试;
    1) 要求验证账号:
    Linux自学笔记——文件共享之samba
    2) 成功登陆管理界面:
    Linux自学笔记——文件共享之samba
    Note:如果在swat配置里使用本机访问,安全性有了保证,而如果使用远程访问swat,密码将以明文形式发送,安全性得不到保障,所以可以用ssl加密swat;

本文转自 claude_liu 51CTO博客,原文链接:http://blog.51cto.com/claude666/2050643,如需转载请自行联系原作者
相关文章
|
4月前
|
存储 数据管理 Linux
区分Linux中.tar文件与.tar.gz文件的不同。
总之,".tar"文件提供了一种方便的文件整理方式,其归档但不压缩的特点适用于快速打包和解压,而".tar.gz"文件通过额外的压缩步骤,尽管处理时间更长,但可以减小文件尺寸,更适合于需要节约存储空间或进行文件传输的场景。用户在选择时应根据具体需求,考虑两种格式各自的优劣。
731 13
|
5月前
|
安全 Linux
Linux赋予文件000权限的恢复技巧
以上这些步骤就像是打开一扇锁住的门,步骤看似简单,但是背后却有着严格的逻辑和规则。切记,在任何时候,变更文件权限都要考虑安全性,不要无谓地放宽权限,那样可能
192 16
|
5月前
|
存储 Linux 数据处理
深入剖析Linux中一切即文件的哲学和重定向的机制
在计算机的奇妙世界中,Linux的这套哲学和机制减少了不同类型资源的处理方式,简化了抽象的概念,并蕴藏着强大的灵活性。就像变戏法一样,轻轻松松地在文件、程序与设备之间转换数据流,标准输入、输出、错误流就在指尖舞动,程序的交互和数据处理因此变得既高效又富有乐趣。
105 4
|
5月前
|
Linux
linux文件重命名命令
本指南介绍Linux文件重命名方法,包括单文件操作的`mv`命令和批量处理的`rename`命令。`mv`可简单更改文件名并保留扩展名,如`mv old_file.txt new_name.txt`;`rename`支持正则表达式,适用于复杂批量操作,如`rename 's/2023/2024/' *.log`。提供实用技巧如大小写转换、数字序列处理等,并提醒覆盖风险与版本差异,建议使用`-n`参数预览效果。
|
Linux
《循序渐进LINUX》笔记
基础知识、服务器搭建、系统管理、性能调优、集群应用 1、swap物理内存两倍 2、根分区5G 3、/boot 100M 4、查看系统硬件信息: cat /proc/meminfo cat /proc/cpuinfo 查看磁盘信息: fd...
1403 0
|
2月前
|
Linux 应用服务中间件 Shell
二、Linux文本处理与文件操作核心命令
熟悉了Linux的基本“行走”后,就该拿起真正的“工具”干活了。用grep这个“放大镜”在文件里搜索内容,用find这个“探测器”在系统中寻找文件,再用tar把东西打包带走。最关键的是要学会使用管道符|,它像一条流水线,能把这些命令串联起来,让简单工具组合出强大的功能,比如 ps -ef | grep 'nginx' 就能快速找出nginx进程。
420 1
二、Linux文本处理与文件操作核心命令
|
2月前
|
Linux
linux命令—stat
`stat` 是 Linux 系统中用于查看文件或文件系统详细状态信息的命令。相比 `ls -l`,它提供更全面的信息,包括文件大小、权限、所有者、时间戳(最后访问、修改、状态变更时间)、inode 号、设备信息等。其常用选项包括 `-f` 查看文件系统状态、`-t` 以简洁格式输出、`-L` 跟踪符号链接,以及 `-c` 或 `--format` 自定义输出格式。通过这些选项,用户可以灵活获取所需信息,适用于系统调试、权限检查、磁盘管理等场景。
290 137
|
2月前
|
安全 Ubuntu Unix
一、初识 Linux 与基本命令
玩转Linux命令行,就像探索一座新城市。首先要熟悉它的“地图”,也就是/根目录下/etc(放配置)、/home(住家)这些核心区域。然后掌握几个“生存口令”:用ls看周围,cd去别处,mkdir建新房,cp/mv搬东西,再用cat或tail看文件内容。最后,别忘了随时按Tab键,它能帮你自动补全命令和路径,是提高效率的第一神器。
678 57
|
1月前
|
存储 安全 Linux
Linux卡在emergency mode怎么办?xfs_repair 命令轻松解决
Linux虚拟机遇紧急模式?别慌!多因磁盘挂载失败。本文教你通过日志定位问题,用`xfs_repair`等工具修复文件系统,三步快速恢复。掌握查日志、修磁盘、验重启,轻松应对紧急模式,保障系统稳定运行。
402 2
|
2月前
|
缓存 监控 Linux
Linux内存问题排查命令详解
Linux服务器卡顿?可能是内存问题。掌握free、vmstat、sar三大命令,快速排查内存使用情况。free查看实时内存,vmstat诊断系统整体性能瓶颈,sar实现长期监控,三者结合,高效定位并解决内存问题。
274 0
Linux内存问题排查命令详解