Linux_Samba详解
目录
Samba Server
Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,C/S架构,可用于用于Linux和Windows共享文件。SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务。客户机通过该协议可以访问服务器上的共享文件系统、打印机及其他资源。通过设置”NetBIOS over TCP/IP”使得Samba不但能与局域网络主机分享资源,还能与全世界的电脑分享资源。
Samba:File share service(windows <–> linux),support edit(on-line) file’s content.Can be prevent the infection virus on windows OS.
You can setup the Samba server on Window or Linux.
Linux OS:
Protocol:SMB(Server message Block) Protocol
Port:TCP139 UDP137
Window OS:
Protocol:CIFS(Common Internet File System) Protocol
Port: TCP445 UDP138
Parameter
Program: smbd(Commonly used)\umdbd(Rarely used)
Software:
samba-3.033-3.28.el5
samba-common
samba-client(Web GUI management samba service,Rarely used)
configure file:
/etc/samba/smb.conf
Tools for Check configure:testparm
Configuration file explain
Vim /etc/samba/smb.conf
#Section:
[global] #Global Setting
workgroup = #work group name
security = [share|user|server] #select one out of three
#share --> don't need the authentication
#user --> login the samba server share directory by local samba user authentication
#server --> user authentication by network
log file = #log file store url
[homes] #share /home directory
[printers] #Printers set
[userShare] #user-defined share directory
comment = #description of share directory
path = #share directory path
browseable = [yes|no] #samba service share directory whether show in the Network Neighborhood of windows OS.General the value is "yes"
guest ok = [yes|no] #share directory whether can access by anonymous user
#yes --> support anonymous user access
#no --> access by authentication
valid users = userName,@groupName #Allow user who can login share directory
writable = [yes|no] #User whether have permission to write in the share directory
write list = userName,@groupName #Allow user who have write permission in the share directory
public = [yes|no] #whether support anonymous user to login the share directory
create mode = 0644 #Set the default permissions of file when you create a new file in the share directory
directory mode = 0755 #Set the default permissions of directory when you create a new sub-directory in the share directory
#Attention: If you want to write into the share directory, you have to meet two condition.
# 1.Set option "writable = yes" into the config file
# 2.The share directory have permissions of writable(rw-rw-rw-)
Check samba config file:
1.Use command grep:
grep -V "^#" smb.conf | grep -V "^;" | grep -V ^$
2.Use command supported by samba service
testparm #Check and read the config file
Setup the Samba Server
Step1. Install samba and check the config file
yum in stall -y samba samba-common samba-client
grep -V "^#" /etc/samba/samba.conf | grep -V "^;" | grep -V ^$ #Look up the configuration file
testparm
Step2. Edit samba service config file.
vim /etc/samba/smb.conf
#Example:
[global]
security = user
hosts allow = 127. 192.168.8. 10.20.0. #limit access from IP address, Only allow access from network-segment with (127./192.168.8./10.20.0.)
hosts deny = 172.16.8. #Deny every access from 172.16.8.
[myshare]
comment = Jmilk share driectory
path = /tmp/myshare #share dir with /tmp/myshare
browseable = yes
guest ok = no
valid users = jmilk,@jmilkGroup
writable = yes
write list = jmilk,@jmilkGroup
create mode = 0644
public = no
directory mode = 0755
**Step3.**change the permission for share directory
chmod 757 /tmp/myshare #ensure the share directory have writable permissions
Step4. Create samba user in local, and setting not support login the OS for samba user.
Precondition:samba userName have to the same as OS userName.
useradd -M -s /sbin/nologin jsamba
pdbedit -a -u jsamba
#-a create
#-u userName
smbpasswd jsamba #change the password for samba user
pdbedit -Lv jsamba #list samba user detailed info
Step4. Start samba service
service smbd restart
Access the samba shareDirectory from other linux OS
Samba Server:Linux
Samba Client:Linux
Step1. List the share directory
smbclient -L SambaServerIP
Step2. Login the samba server’s share directory
1.Anonymous user login
smbclient //sambaServerIP/shareDirectoryName
#get --> download the file into local from samba server.
#put --> upload the file into samba server from local
2.Samba user authentication login
smbclient //sambaServerIP/shareDirectoryName -u sambaUserName
mount -o userName=jsamba,passwd fanguiju //sambaServerIP/shareDirectory /mnt
Access the windows OS samba shareDirectory from Linux
**Samba Server**Windows
Samba Client:Linux
Step1.
smbclient -L sambaServerIP -u administrator #login sambaServer(win) by adminstrator identity
smbclient -u administrator //sambaServerIP
step2. Mount share dirctory into local
mount -o userName=administrator //sambaServerIP(wim)/d$ /mnt/winShare
vim /etc/fstab #realize permanent mount
Attention:在同一个可以互通的网络中,只要有一台SambaSrever,那受到此SambaServer影响的LinuxOS和windowsOS都可以实现与sambaServer之间实现文件共享。
Access the samba shareDirectory of LinuxOS by winOS
**Server:**Linux
**Client:**Windows
Ctrl+R(run) //LinuxSambaServerIP #And then enter the user authentication
CMD.exe command below:
net use * /del /y #clear the user login cache
Linux_Samba详解的更多相关文章
- Linq之旅:Linq入门详解(Linq to Objects)
示例代码下载:Linq之旅:Linq入门详解(Linq to Objects) 本博文详细介绍 .NET 3.5 中引入的重要功能:Language Integrated Query(LINQ,语言集 ...
- 架构设计:远程调用服务架构设计及zookeeper技术详解(下篇)
一.下篇开头的废话 终于开写下篇了,这也是我写远程调用框架的第三篇文章,前两篇都被博客园作为[编辑推荐]的文章,很兴奋哦,嘿嘿~~~~,本人是个很臭美的人,一定得要截图为证: 今天是2014年的第一天 ...
- EntityFramework Core 1.1 Add、Attach、Update、Remove方法如何高效使用详解
前言 我比较喜欢安静,大概和我喜欢研究和琢磨技术原因相关吧,刚好到了元旦节,这几天可以好好学习下EF Core,同时在项目当中用到EF Core,借此机会给予比较深入的理解,这里我们只讲解和EF 6. ...
- Java 字符串格式化详解
Java 字符串格式化详解 版权声明:本文为博主原创文章,未经博主允许不得转载. 微博:厉圣杰 文中如有纰漏,欢迎大家留言指出. 在 Java 的 String 类中,可以使用 format() 方法 ...
- Android Notification 详解(一)——基本操作
Android Notification 详解(一)--基本操作 版权声明:本文为博主原创文章,未经博主允许不得转载. 微博:厉圣杰 源码:AndroidDemo/Notification 文中如有纰 ...
- Android Notification 详解——基本操作
Android Notification 详解 版权声明:本文为博主原创文章,未经博主允许不得转载. 前几天项目中有用到 Android 通知相关的内容,索性把 Android Notificatio ...
- Git初探--笔记整理和Git命令详解
几个重要的概念 首先先明确几个概念: WorkPlace : 工作区 Index: 暂存区 Repository: 本地仓库/版本库 Remote: 远程仓库 当在Remote(如Github)上面c ...
- Drawable实战解析:Android XML shape 标签使用详解(apk瘦身,减少内存好帮手)
Android XML shape 标签使用详解 一个android开发者肯定懂得使用 xml 定义一个 Drawable,比如定义一个 rect 或者 circle 作为一个 View 的背景. ...
- Node.js npm 详解
一.npm简介 安装npm请阅读我之前的文章Hello Node中npm安装那一部分,不过只介绍了linux平台,如果是其它平台,有前辈写了更加详细的介绍. npm的全称:Node Package M ...
随机推荐
- JS Unicode转中文,中文转Unicode,ASCII转Unicode,Unicode转ASCII
在线转换工具https://oktools.net/unicode Unicode转中文 function decodeUnicode(str) { return unescape(str.repla ...
- 2019-11-29-msbuild-项目文件常用判断条件
title author date CreateTime categories msbuild 项目文件常用判断条件 lindexi 2019-11-29 08:36:48 +0800 2019-7- ...
- Pycharm新建第一个Django项目
1:安装django 打开Pycharm,在creatproject那里选择新建django项目的时候,会自动帮你安装最新版的Django版本 2:进入Pycharmd的命令窗口,在下方Termina ...
- docker安装配置mongodb
1 执行 docker search mongo 命令: 2 运行mongo docker run --name mongo -v /mnt/mongodb:/data/db -p 27017:270 ...
- PHP中替换换行符的几种方法
PHP中替换换行的几种方法 参考脚本之家的文章:<PHP中替换换行符的几种方法小结>. 代码: 方法一: $replace_str = str_replace(array("\r ...
- 移动端适配 后篇(rem+vm)
涉及到的一些名词, 详细解释可参考 移动端适配前篇--移动端适配 rem 名词解释 [英寸Inch]英寸表示屏幕斜对角线的长度 [像素Pixel]像素是图像的基本采样单位,它不是一个确定的物理量,因为 ...
- GO语言学习笔记3-int与byte类型转换
1.主机字节序 主机字节序模式有两种,大端数据模式和小端数据模式.在网络编程中应注意这两者的区别,以保证数据处理的正确性.例如,网络的数据是以大端数据模式进行交互,而我们的主机大多数以小端模式处理,如 ...
- postman—使用newman来执行postman脚本
我们知道postman是基于javascript语言编写的,而导出的json格式的postman脚本也无法直接在服务器运行,它需要在newman中执行(可以把newman看做postman脚本的运行环 ...
- 3828. 三角形计数 3829. ZCC loves Isaac 3830. 字符消除
3828 给定n个点的坐标(0<=xi,yi<=10000)求选出任意三个点能组成的三角形的总面积. 题解 太naive了 枚举三角形的y最小的点,把剩余的点按角度排序 然后随便算,可以用 ...
- .NET面试题系列(十九)Socket网络异常类型
序言 资料 异常测试之Socket网络异常