1o_Samba
∮Linux下Samba的安装配置
§Linux 下文件共享软件
Samba 是一款实现跨主机,跨平台文件共享的软件.同类型的软件还有 ftp,nfs 不再赘述.
§文件共享协议
Windows : CIFS/SMB + NETBIOS
Linux: CIFS/SMB + NFS
CIFS/SMB 是不同的协议,但是 完成了几乎相同的工作
CIFS:Common Internet File System 通用互联网文件系统
SMB: Service Message Block 服务信息块,当共享文件时,文件通过 RPC 方式实现二进制的文件传输
NETBIOS: 实现在同一个广播组内实现 主机名称解析的协议,这也解释了为什么 windows 第一次打开 "网上邻居"时,速度极其慢.
CIFS/SMB 在 windows 下与Linux 下分别监听的端口
Windows: 137/UDP,138/UDP,139/TCP,445/TCP cmd# netstat -an |find "445"
Linux: 139/TCP,445/TCP # ss -tunl
以上内容深究无益,非要 记住的话,就记端口号吧
那天我在 喜马拉雅上 听了一堂 鲍鹏山的讲座,感触良多,叫<警惕知识>,也许会写一篇感悟博客,
来解释为啥 博客里 会 频繁出现 "深究无益" 这样的字眼...
Samba 是实现了 SMB 协议的 服务器软件.作用是跨主机,跨平台实现文件共享.
§Samba 操作
这里演示的是 Linux 提供服务 - Linux 挂载.
实现环境是 Samba客户端[1]:CentOS7 3.10.0-327.el7.x86_64,Samba服务器[2]:也是 CentOS7 3.10.0-327.el7.x86_64
Samba 是受SELinux 控制的,最好直接关掉SELinux 吧
临时关闭: 当前有效,重启无效
2# getenforce会显示 1 或者 enabled (2# 代表 服务器端运行的 bash 命令)
2# setenforence 0
2# getenforce再次查看会显示 0 或者 disabled ,总之不是 enabled 就行了永久关闭: 当前无效,重启生效
配置 /etc/selinux/config 如下
上面的操作都做一次,当前也关闭了,永久 也有效了...
1.安装Samba
2# yum list all *samba*
2# yum -y install samba samba-client samba-common
2# rpm -ql samba 发现安装文件,配置文件,二进制文件的位置
2.创建 Samba用户:Samba 通过本地用户实现共享,但要将本地用户 添加到 Samba 用户.当然共享的路径的 属主,属组 也得最好是这个用户,具体权限没有深究.
假设现在有 Linux 用户: SambaV,将 SambaV添加为Samba 用户,执行如下指令
2# smbpasswd -a SambaV
2# >Enter new Samba Passwd: SambaV123
3.共享路径
实现文件共享需要编辑 samba 下配置文件 # cd /etc/samba/conf & vim (这条是伪命令,所以没有酷炫修饰,反正我是能看懂...)
# cd /etc/samba & vim
# 注释是 描述信息 ; 注释是 可以打开的选项
配置文件分成两段, 全局定义 + 共享定义
共享目录时 常用 的指令
[share_name] 共享名
comment = 说明信息
path = 共享的路径
browseable = 是否可以被看到
public = 是否能被所有用户 读 到
read only = 是否只读
writeable = 是否可写
write_list = user1,user2,... | +group 定义可写用户列表
valid users = 白名单: 定义哪些用户可以访问
invalid users = 黑名单
现在编辑 自己的 samba 配置文件,简单编辑,在配置文件中添加 [LinuxNote] 段,内容如下

4.启动服务
2# systemctl start smb 没有消息就是好消息
2# systemctl status smb 在 Active中 出现 running 证明启动成功
当然可以实现 开启自动启动 samba 服务 ,运行如下命令
2# chkconfig --level 35 smb on 其中 --level 35 是可省略的,省略就表示 全运行级别 启动
2# chkconfig --level 35 smb off 对,也可以撤销开机自动启动
2# chkconfig --list smb 查看 smb 在各运行级别下,自动启动的情况
5.客户端 可以挂载使用Samba 共享文件了(1# 代表 客户端端运行的 bash 命令)
1# mount -t cifs //192.168.0.1/MyNote /mnt/MyNote -o username=SambaV
1> Enter pwd: SambaV123
挂载成功,这时可以像 使用本地的 文件系统一样使用了, 新创建的路径,文件,和 修改的内容,都会 事实同步到 Samba 服务器和 其他 Samba 客户端.
当然也可以 cp 到本地的磁盘上.使用之后,手动卸载
1# umount /mnt/MyNote
Windows 下共享 Linux 挂载 几乎上面无异.不同的是 连 Samba 服务器端都 不用再配置了. 右键 文件夹 -- 高级 -- 共享.... 不做演示
6.客户端 实现开机自动挂载
客户端需 修改 /etc/fstab 文件,添加一行挂载 指令,修改后的文件如下

然后手动创建 /etc/samba/cred.passwd 文件,用户记录账号密码.
1# vim /etc/samba/cred.passwd
1> username=SambaV
1> password=SambaV123
1# chmod og=--- /etc/samba/cred.passwd
1# mount -a 手动测试是否挂载成功... 以后 开机,Samba 共享文件会自动完成挂载
7.客户端 编写脚本挂载
这里我在 共享路径下创建了一个 README.txt 文件,用来做 是否已经被挂载的 标示,脚本内容如下

就用热情洋溢的 Samba 舞,作为 第一篇正式博文吧... Enjoy it...
1o_Samba的更多相关文章
- ReadReadMe
∮博客说明 §标题格式说明(只在这篇文档中说明一次) 此站博客分两类 普通博客,补丁博客 普通博客标题格式为 NumberType_Title Number: 博客编号 ,按时间编号,编号只在 ...
随机推荐
- [课程设计]Sprint One 总结&发表评论&团队贡献分
一.总结 第一次冲刺结束了,总体来说我们团队还是做得不错的,完成了既定的目标,希望接下来还能保持这样的动力,fighting... ● 二.围观其他组并发表评论 ● http://www.cnblog ...
- SQL Server 优化-执行计划
对于SQL Server的优化来说,优化查询可能是很常见的事情.由于数据库的优化,本身也是一个涉及面比较的广的话题, 因此本文只谈优化查询时如何看懂SQL Server查询计划.毕竟我对SQL Ser ...
- 【SharePoint学习笔记】第3章 SharePoint列表新特性以及数据访问
第3章 SharePoint列表新特性以及数据访问 使用CAML查询语言 CAML:协作应用程序标记语言 Collaboration Application Markup Language ...
- Lab_3_SysOps_Storage_Linux_v2.5
System Operations - Lab 3: Managing Storage in AWS (Linux) - 2.5 =================================== ...
- vmware安装无法打开内核设备 \\.\Global\vmx86: 系统找不到指定的文件
刚刚安装好了虚拟机,Windows XP 64bit Professional,安装好了开发环境,然后重启机器后虚拟机就打不开了,提示“vmware安装无法打开内核设备 \\.\Global\vmx8 ...
- [SI]source insight使用
1. 快捷键 Ctrl+O: 工程中查找需要的文件如imx.c Ctrl+F: 当前文件查找字符串,然后Alt+W(hole)可以列出所有找到的位置 Ctrl+/:可以在当前project中查找字符串 ...
- 获取小众ftp服务器指定目录内容列表
今天获取小众ftp服务器指定目录内容列表时费劲急了. ///parama url="ftp://x.x.x.x/dir_name" public string GetFTPDir( ...
- Linux:删除程序
首先查看程序是否安装,以mariadb 为例 卸载程序 .........
- 使用X-UA-Compatible来设置IE浏览器兼容模式(转)
使用X-UA-Compatible来设置IE浏览器兼容模式 文件兼容性用于定义让IE如何编译你的网页.此文件解释文件兼容性,如何指定你网站的文件兼容性模式以及如何判断一个网页该使用的文件模式. 前言 ...
- SparkStreaming(源码阅读十二)
要完整去学习spark源码是一件非常不容易的事情,但是咱可以积少成多嘛~那么,Spark Streaming是怎么搞的呢? 本质上,SparkStreaming接收实时输入数据流并将它们按批次划分,然 ...
