Linux-samba搭建

1、前言

一般,我们项目中用到的linux服务器系统基本都是RedHat和CentOS;安装微软的系统基本都是用的Windows Server 2008 R2,下面介绍linux服务器中如何安装samba服务器、windows挂载samba服务器的具体步骤、linux挂载samba服务器的具体步骤。

2、安装samba服务器

  • 已默认安装samba
    默认情况下linux操作系统安装好了以后,默认是会有自带安装好的samba服务器,我们只需要对samba的核心文件进行配置即可,编辑/etc/samba/smb.conf文件即可;
  • 未默认安装samba
    如果linux系统中不自带samba服务,此时我们可以通过yum或者rpm包这2种安装模式进行安装samba服务器:
yum -y install samba*  #通过yum安装
安装完毕以后检查安装包:   
rpm -qa |grep samba 可以看到有6个安装包:
   samba-client-3.6.23-12.el6.x86_64
   samba4-libs-4.0.0-58.el6.rc4.x86_64
   samba-winbind-3.6.23-12.el6.x86_64
   samba-winbind-clients-3.6.23-12.el6.x86_64
   samba-common-3.6.23-12.el6.x86_64
   samba-3.6.23-12.el6.x86_64

通过rpm安装的步骤:先下载rpm安装包,然后用rpm –ivh samba.rpm这种格式来进行安装,安装完毕以后可以通过如下命令检查是否已经安装上samba服务:

rpm –qa|grep samba
  • 编辑samba的配置文件
vi /etc/samba/smb.conf   
配置例子:
#====Global Settings ===
[global]                  #全局设置
workgroup = MYGROUP       #定义组,可以自定义命名
 server string = Samba Server Version %v
security = share          #安全级别。
user: 必须提供账号密码才能使用
share: 任何人都可以共享文件
domain:把用户的账号密码通过第三方来认证
passdb backend = tdbsam smbpasswd ldapsam
#以哪种方式存放密码
   load prienters = yes    #是否启用打印机
   cups options   = raw    #定义打印机的执行方式

#=== Share Definitions ===
 [zjs]                     #共享目录标识
comment  = zjs file share  #说明
path =/home /share     #samba服务器共享出来的目录
browsable =yes       #browseable用来指定该共享是否可以浏览。
writable = yes       #writable用来指定该共享路径是否可写。
guest ok = yes       #意义同“public = yes”
create mask = 0777   #创建文件的权限
sync always = yes    
valid user = cstc    #如果全局security = user可以放开访问的smb用户
  • 新建samba用户密码
useradd -s /sbin/nologin cstc   #新建cstc用户,不可登陆系统,免登陆可不设置
smbpasswd –a cstc               #设置cstc用户的密码
chmod –R  777  /home/share      #设置共享文件权限,否则其他机器写入有问题
  • 开启、关闭、重启samba服务
开启: service smb start
关闭:service smb stop
重启:service smb restart
chkconfig --level 35 smb on   #开机启动
# testparm    --测试配置是否正确
  • 关闭iptables和selinux
1、关闭selinux:
getenforce      #查看selinux的状态。
setenforce 0     #临时关闭selinux 
#vi /etc/sysconfig/selinux 
修改SELINUX值为:SELINUX=disabled,重启生效。 #永久关闭
2、关闭防火墙:
#service   iptables status     #查看状态
#service iptables stop      #关闭防火墙
#chkconfig   iptables off      #开机不启动
  • linux 下挂载:
mount -t cifs -o username=muzi,rw,passwd=123456 // 10.253.10.180 /nxjy  /home/nxcj/files
  • Windows服务器映射samba服务器的共享目录

    • 服务中tcp/ip netbios服务启用
    • 网卡中协议的tcp/ip 下的netbios
      浏览器或者资源管理器中输入举例:
      这里写图片描述
      此时已经能访问到samba服务器共享的/share目录
      这里写图片描述
      映射samba服务器的/share到windows的/z:
      鼠标右击“share”这个共享目录,选择”映射网络驱动器“出现如下内容
      这里写图片描述
      默认的驱动器第一个即为”Z:”盘符,点击完成,此时磁盘映射已经做好,此时打开windows资源管理器,已经可以看到”Z:”
      这里写图片描述
  • Linux挂载到samba服务器共享的目录
    命令如下:
    在要挂载linux服务器本地新建一个目录/test,然后samba服务器共享的/share挂载到本地的/test目录

mkdir /test
挂载命令:
mount.cifs -o username=xxxx,rw,passwd=123456  //192.168.xx.21/xxxx  /home/xxxx/share

注://192.168.xx.21/xxxx的xxxx不是目录,而是配置文件中的识别符。输入的用户密码是前面已经创建好的smb用户密码,也可用系统账户密码。
此时查看挂载状态:
这里写图片描述
此时本地linux已经成功挂载到samba服务器的/share

注:有时我们需要查看服务器上都注册了哪些用户,这时我们就可以用下面的命令来查看了。

pdbedit -L

注:要想每次启动客户端机器的时候自动挂载,按以下步骤操作:

方法一、vim /etc/rc.local添加一行
Mount –t cifs -o username=xxxx,rw,passwd=123456  //192.168.xx.21/xxxx /home/xxxx/share
方法二、vim /etc/fstab下加入:
//192.168.xx.21/xxxx  /home/xxxx/share   cifs  defaults,username=xxxx,passwd=123456,rw   0 0
  • 常见问题
    Win端挂载清除用户连接缓存,在cmd执行:net use * /delete
    注意:执行命令前的前提是关闭所有的资源管理器窗口。
    1、客户端一定要使用规定的账号挂载,否则会出现如下报错:
mount error(13): Permission denied
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)

2、umount: /home/nxcj/files: device is busy.说明还有程序霸占着进程,只要执行以下命令查询并杀掉这个进程即可

fuser -m -k  /home/nxcj/files       #查询
fuser -m -v -i –k  /home/nxcj/files #查询并直接杀死进程,同时会询问y/n

3、以下错误主要看命令是不是格式是正确的,主要就是要加用户名及密码,同时还要注意就是ip+标识符是否正确。

Retrying with upper case share name
mount error(6): No such device or address
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)

4、不管是服务器端还是linux的客户端,都最好执行下这个命令,避免缺少cifs协议的包造成的损失。

yum install cifs* -y
yum install cifs-utils
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值