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 ...
随机推荐
- Uber回馈开源的一些软件
AresDB AresDB 是 Uber 开源的一个基于 GPU 运算的实时分析存储引擎和查询引擎.具备低查询延迟.高数据刷新率和高效内存和磁盘存储管理.AresDB 要求 CUDA Toolkit ...
- spring容器启动完成后加载自定义逻辑
业务需求中,可能会有一些逻辑需要在应用启动完成后,例如字典缓存,资源池初始化等等,代码如下 public class InitApplication implements ApplicationCon ...
- python打印实心等边三角形和空心等边三角形
#1 打印实心等边三角形 n = 5 for i in range(1, n+1): # 控制三角形的高,也就是层数 for k in range(2*(n-i)): # 控制每层第一个*的空格,从最 ...
- 状压DP操作
1.’&’符号,x&y,会将两个十进制数在二进制下进行与运算,然后返回其十进制下的值.例如3(11)&2(10)=2(10). 2.’|’符号,x|y,会将两个十进制数在二进制 ...
- Xunsearch入门
Xunsearch入门 简介: 开源免费.高性能.多功能.简单易用的专业全文检索技术方案. 1.Xunsearch安装: (1)官网(http://xunsearch.com)下载 wget http ...
- python之路day14--列表生成式、生成器generator、生成器并行
列表生成式 列表生成式阅读量: 44 现在有个需求,现有列表a=[0, 1, 2, 3, 4, 5, 6, 7, 8, 9],要求你把列表里的每个值加1,你怎么实现?你可能会想到2种方式 二逼青年 ...
- 【leetcode】1201. Ugly Number III
题目如下: Write a program to find the n-th ugly number. Ugly numbers are positive integers which are div ...
- GO语言学习笔记2-int类型的取值范围
相比于C/C++语言的int类型,GO语言提供了多种int类型可供选择,有int8.int16.int32.int64.int.uint8.uint16.uint32.uint64.uint. 1.i ...
- 020:reverse函数补充
补充reverse两点: 1.如若在反转url时,需要添加参数,那么可以传递 kwargs 参数到 reverse 函数中,实例代码如下: '}) ) 2.如若想添加查询字符串参数,则必须手动进行ur ...
- hdu 1166 线段树 区间求和 +单点更新 CD模板
题目链接 敌兵布阵 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total S ...