samba--文件服务器

------------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.每一个共享文件夹要单独设置一个回收站文件, 避免同名文件覆盖,同时也方便管理和查找.

相关文章
相关标签/搜索