Samba简介:在UNIX系统中,Samba是通过服务器消息块协议(SMB)在网络上的计算机之间,共享文件和打印服务的软件包。

SMB简介:Server Message Block,SMB协议是一种服务器/客户端协议,位于应用层,是Windows共享文件和打印服务的标准化协议,可以在两台计算机之间共享文件,打印机。

服务基本限定:

1、那些主机可以访问

2、那些用户可以访问

一、 确认已经安装samba

rpm -qa | grep samba

启动程序

/etc/rc.d/init.d/smb start





二、Samba有两个守护进程

1、smbd
– 监听139TCP端口

2、nmbd
– 监听137、138UDP端口

作用: 1、smbd进程的作用是处理SMB请求包,负责用户验证和文件共享【最终要】

2、nmbd进程的作用是处理浏览共享,和计算机名称解析





三、Samba配置

Samba配置文件保存在:
/etc/samba/smb.conf

包括四个设置段:

[global]
设置全局环境选项

主要选项设置:

workgroup=指定工作组或域


server string=描述 

security=制定系统的安全模式

1、share
无权限验证

2、user
由Linux的Samba服务器作验证【缺省,推荐使用】

3、server
第三方主机验证

4、doman
第三方主机验证【第三方必须是Windows域控制器】

hosts allow=限定主机访问
【如果该段被注释掉,则表示所有的主机都可访问】 hosts deny=限定主机不能访问【这两项一般不同时使用】【默认是没有这一项的】

log file=指定日志文件存放位置【最好保留这一项】

max log size=指定日志文件所占空间【注释了则表示没限制】


[homes]
设置用户宿主目录共享,如果每个用户不能访问自己的宿主目录,则注释掉该项

主要选项设置

comment描述

browseable=no
//没有权限访问的目录是不可见的

writeable/writable=yes
//可写,no,只读

[printers]
设置打印机共享【不常用】

[sharefiles]
设置文件共享

【分号“;”也是注释符】





四、【Samba应用示例一】

允许用户通过Windows客户端访问自己的宿主目录

1、安装Samba,不需要对配置文件作任何修改,即可完成此功能,但是如果开启了SELinux,或是Netfilter/Iptables,则需做如下工作,关闭防火墙

# iptables -F
//关闭Iptables

# setsebool -P samba_enable_home_dirs on
//改变SELinux策略

或者,编辑/etc/selinux/config将SELinux项改为disabled,设置SELinux永久不启动

【最佳实践】

gesebool -a | grep samba
查看SELinux所有与Samba有关的策略

2、设置用户Samba验证

smbpasswd -a 用户名
【-a表示添加】





3、启动Samba服务

/etc/rc.d/init.d/smb start





4、Windows访问Samba服务器共享资源

开始 → 运行 → 输入\\Samba服务器地址 

【断开连接:Windows → com : net use * /delete /y】





5、Samba服务器端访问的客户端信息

smbstatus

同时,用户登录的全部信息保存在/var/log/samba目录下

Linux 学习笔记_12_Windows与Linux文件共享服务_1.1_--Samba(上)的更多相关文章

  1. Linux 学习笔记_12_Windows与Linux文件共享服务_1.1_--Samba(下)Samba经典应用案例

    五.[Samba应用案例二] 设置Samba共享目录/software,允许用户jack和mary可以通过Windows客户端访问,并具有读写权限. 1.创建目录/software,添加用户jack, ...

  2. linux学习笔记3:linux的网络配置,rpm包,shell以及samba服务器的使用和安装

    1.linux下的shell<linux命令.编辑器和shell编程> (1)shell种类有很多,常用的有三种,在linux可以通过ls -l /bin/*sh 来显示所有已安装的she ...

  3. Linux学习笔记之(1)~Linux有趣的历史概览

    献给知道mono,了解Jexus,对.net混搭技术感兴趣的朋友. 1965年,Bell.MIT和GE公司发起Multics计划,目标是实现一个操作系统可以让大型主机实现连接三百个终端的目标.(那个时 ...

  4. Linux学习笔记之查看Linux版本信息

    0x00 概述 这里所谓的Linux版本信息,包括Linux内核版本信息和Linux系统版本信息. 0x01 查看Linux内核版本信息 方法1:登陆Linux,在终端输入 cat /proc/ver ...

  5. Linux学习笔记之Centos7 自定义systemctl服务脚本

    0x00 概述 之前工作环境一直使用Centos6版本,脚本一直在使用/etc/init.d/xxx:系统升级到Cento7后,虽然之前的启动脚本也可以使用,但一直没有使用systemctl 的自定义 ...

  6. linux学习笔记4:linux的任务调度,进程管理,mysql的安装和使用,ssh工具的使用,linux网络编程

    1.设置任务调度命令crontab 任务调度是指系统在某个时间执行的特定的命令或程序.任务调度分为:1)系统工作:有些重要的工作必须周而复始的执行,如病毒扫描.2)个别用户工作:个别用户可能希望执行某 ...

  7. 【linux学习笔记之一】linux系统目录结构以及常用系统命令

    序 ???这破笔记也要序?? 昨天开始学linux,做好笔记以备日后翻阅 Linux系统目录结构图 bin  --主要用于存放二进制文件(如:命令文件) boot--引导目录 dev  --设备目录 ...

  8. Linux学习笔记之十一————Linux常用服务器构建之ssh和scp

    一.ssh 1.ssh介绍 SSH为Secure Shell的缩写,由 IETF 的网络工作小组(Network Working Group)所制定:SSH 为建立在应用层和传输层基础上的安全协议. ...

  9. Linux学习笔记之二————Linux系统的文件和目录

    一.Windows和Linux文件系统区别 1.在 windows 平台下,打开“计算机”,我们看到的是一个个的驱动器盘符: 每个驱动器都有自己的根目录结构,这样形成了多个树并列的情形,如图所示:  ...

随机推荐

  1. Node.js 虚拟机

    稳定性: 3 - 稳定 可以通过以下方法访问该模块: var vm = require('vm'); JavaScript 可以立即编译立即执行,也可以编译,保存,之后再运行. vm.runInThi ...

  2. 阅读源码(III)

    往期系列: <由阅读源码想到> <由阅读源码想到 | 下篇> Medium上有一篇文章Why You Don't Deserve That Dream Developer Jo ...

  3. 手势监听GestureDetector 案例

    以下只做长按和甩出(用户按下朝某一方向甩动手指)案例 OnGestureListener可以查看到更多的手势事件 案例 package com.qf.mobliesafe.activity; impo ...

  4. java异常拾遗

    概述 当方法内部发生一项错误时,该方法会创建一个对象传递给运行时系统(runtime system),这个对象被称为异常对象,包含错误的类型.发生位置,程序状态等一系列信息. 当一个方法抛出异常时,运 ...

  5. Linux SWAP 交换分区配置说明

    一.SWAP 说明1.1 SWAP 概述        当系统的物理内存不够用的时候,就需要将物理内存中的一部分空间释放出来,以供当前运行的程序使用.那些被释放的空间可能来自一些很长时间没有什么操作的 ...

  6. Swift中使用NSLog的问题

    在Swift中如果想要以如下方式执行NSLog,则编译器必定抱怨: class Foo {} NSLog("%@",Foo()) 因为Foo是原生Swift类不是继承自NSObje ...

  7. Android简易实战教程--第二十三话《绚丽的菜单项》

    转载本博客请注明出处:点击打开链接  http://blog.csdn.net/qq_32059827/article/details/52327456 今天这篇稍微增强点代码量,可能要多花上5分钟喽 ...

  8. 一套强大的vim配置文件+详细注释

    phpchina折腾王独家配置,灰常牛叉的一套vim配置,另附有详细注释,自己折腾vim的时候可以参照其中的大部分设置进行一些个性化定制."是否兼容VI,compatible为兼容,noco ...

  9. 【移动开发】startForeground()让服务保持前台级别

    最近在使用android 4.1系统的时候,发现在手机休眠一段时间后(1-2小时),后台运行的服务被强行kill掉,有可能是系统回收内存的一种机制,要想避免这种情况可以通过startForegroun ...

  10. Android 实现图片加水印

    加水印代码 public Bitmap addWaterMark(Bitmap src, String water, Context context){ Bitmap tarBitmap = src. ...