------------samba--------------linux
--smb(Server Message Block))--IBM注册web
提供了四种服务vim
1.用户验证和受权windows
2.文件和打印机共享缓存
3.域名解析服务器
4.浏览网络
*****************************************************************************dom
配置好以后,若是客户端访问不了smb服务器,把防火墙禁用了,就能够了。ide
*****************************************************************************测试
--------------------安装-----------------
yum -y install samba (samba-client和samba-common默认已经安装)
(查看文件是安装哪一个包时产生的 rpm -qf /etc/samba/smb.conf)
samba服务器随着服务器的启动而自启动须要下列命令
systemctl enable smb
systemctl start smb
主配置文件 /etc/samba/smb.conf
/etc/samba/lmhosts --名称解析
首先建立一个共享文件夹 jinni
chmod -R 777 jinni
------------ smb.conf----------------------
注:smb受selinux管制!!!若是上传的文件看不到,有多是selinux挡住了,关闭便可。
vim /etc/sysconfig/selinux(配置文件修改权限)需重启系统
1.警告模式 setenforce 0 (permissive) 2.强制模式 setenforce 1 (enforcing) 3.关闭模式 disabled
getenforce selinux 查看selinux状态
setsebool -P samba_enable_home_dirs=1(若是关掉selinux就不用此命令了)
chcon -t samba_share_t /jinni(修改共享目录selinux类型属性)
securetty = user/share
---认证级别--一共五个!
share: 不须要作身份验证
user: 该服务须要作身份验证,认证来自于本机
domain/server: 来自于网络中的另外一台计算机
ads: 认证来自微软的活动目录
-为smb添加用户(用户必须是本地账户)
smbpasswd -a 用户名 #添加一个samba用户
smbpasswd -d 用户名 #禁用一个samba用户
smbpasswd -e 用户名 #恢复一个samba用户
smbpasswd -x 用户名 #删除一个samba用户
useradd user1/user2
smbpasswd -a user1
smbpasswd -a user2
修改smb用户密码
smbpasswd smbname
查看samba服务器中已拥有哪些用户
pdbedit -L
user1----smb用户密码--
smbclient -L //192.168.1.1 --使用匿名身份浏览
smbclient -L //192.168.1.1 -U user1 --(用户访问)
smbclient //192.168.1.1/RHCE --访问
若是想要查询samba服务器中现有哪些用户,可使用net命令
net rpc user -S iscas
net rpc user -w workgroup
***************************************************************
配置文件 vim smb.conf
[haha] --共享的名称
path = /jinni(须要共享的目录的路径)
comment = 注释
browseable = yes --全部用户均可以浏览
browseable = no --全部用户都不能够浏览
public = no --匿名不容许访问,smb用户容许访问。 用来指定该共享是否容许guest帐户访问。
public = yes --匿名和smb用户都容许访问
writable = yes --全部用户均可以写
writable = no --全部用户都不能够写
write list = user1 --容许写入该共享的用户,若是某个用户同时位于"read list"和"write list"配置中,之后者为准。
read list = user2
hosts allow = 192.168.1.253/255.255.255.0 (容许某个域访问)
hosts deny = 192.168.1.0/255.255.255.0 (拒绝某个域访问)
valid users = harry, user4, user5(容许访问该共享的用户,若是此配置为空,则任何用户都可访问samba服务器)
invalid users = user1, user2(禁止访问该共享的用户)
admin list = jinguanhua 用来指定该共享的管理员(对该共享具备彻底控制权限)
(writeable与read only 配置变量的意义彻底相反)
read only = no 设定该共享服务是否为只读
为了便于不一样的windows用户,以同一用户身份与权限访问共享资源时,须要增长“username map”配置变量,定义一个用户名映射文件。
username map = /etc/samba/smbusers
还须要修改配置变量中定义的/etc/samba/smbusers文件,其中包含必要的用户名映射关系。
例如:
为了使windows2000系统中的administrator与windowsXP系统中的admin用户可以以jinni用户的身份访问samba服务器,可在smbusers文件中增长下列映射关系:
jinni = administrator admin
若是一个帐号须要有其余同级文件夹的权限,除了修改write list,valid users,还须要配置文件夹权限。
设置用户yunwei有访问文件夹jinni和jinni下的子目录的rx权限
setfacl -R -m u:yunwei:rx jinni
挂载
mount -t cifs //IP/RHCE /yinhe -o username=smbuser1%123(把共享文件夹RHCE挂载到本地文件夹yinhe)
开机启动 vim /etc/fstab
//IP/RHCE /yinhe cifs defaults,username=smbuser1%123 0 0
testparm /etc/samba/smb.cono station1.example.com 192.168.1.1
----测试某一台计算机是否有权限访问
*************************************************************
当在命令提示窗口输入net use命令时,会显示本机缓存的共享登陆信息,若是你想切换用户访问其余文件夹,则能够删除那条缓存的记录便可。
net use * /delete
net use caiwu /delete
访问Samba共享的文件很慢很慢的问题
是由于network 和 hosts文件中的主机名不同, 将hosts文件中的主机名改为和network中的主机名同样便可。
vim /etc/sysconfig/network vim /etc/hosts
在公司常常有员工误删除文件或者文件夹的状况。如何恢复被删除的共享文件或者文件夹???
能够经过smb.conf配置文件,给每一个共享文件夹添加回收站配置!
vim /etc/samba/smb.conf
recycle:repository = /home/caiwu/.deleted
recycle:keeptree = Yes #指定是否按删除时的目录结构存放
recycle:versions = Yes #指定是否区覆盖同名的文件,yes是不覆盖
recycle:maxsixe = 0 #指定回收站目录的大小,0是不限制
recycle:exclude = *.tmp|*.mp3 #不放入回收站的文件类型
recycle:noversions = *.doc #指定覆盖同名文件的文件类型
#####recycle:repository = /home/caiwu/.deleted/%U #指定该共享文件夹的回收站目录 %U是按登陆的用户名分开存放#####
#####禁止上传的文件veto files = /*.mp3/*.mp4/*.rmvb/*.wma/*.exe/*.bat/*.dll/*.avi/*.rar#######
注意事项:
1.回收站文件夹的用户和用户组设置, 权限设置要和共享文件夹的设置是同样的, 若是不一致被删除的文件是没法保存到回收站文件夹
2.若是maxsize设置为0, 那么回收站的文件须要管理员手工去删除. 固然, 能够将删除文件的任务交给计划任务去完成,如:
vim /etc/crontab
30 8 * * * root find /samba/deleted/ -mtime +30 -exec rm -rf {} \;
上面的设置就是天天8:30 删除回收站内大于30天的文件
3.每一个共享文件夹要单独设置一个回收站文件, 避免同名文件覆盖,同时也方便管理和查找.