NFS:仅用于Linux之间

CIFS:仅用于Windows之间

SAMBA:可用于LinuxWindows之间,基于NetBIOS协议(用于LAN内部,不能跨路由),没有IP地址的概念,根据

NetBIOSName来区分主机。

两个服务:

nmbd:UDP137138,管理工作组、NetBios name等。

smbd:TCP139,管理分享的目录、文件、打印机等。

两种模式:peer/peer(workgroup,对等模式) domain(域,主控模式)

1、安装sambasamba-clientsamba-common这三个软件:

yuminstall samba (自动安装了samba-common

yuminstall samba-client

2、修改配置文件/etc/samba/smb.conf,并用testpara检查正确性。

修改:

[global]

       workgroup = WORKGROUP

       security = user

添加如下小节:

[share]

        comment = samba on 204

        path = /home/share

        browseable= yes

        writable = yes

        write list = @users

3、常用脚本文件

/usr/sbin{smbd,nmbd}服务器功能

/usr/bin/{tdbdump,tdbtool}查看、操作用户密码数据库

/usr/bin/smbstatus显示当前联机状况

/usr/bin/pdbedit管理Samba的用户账号

/usr/bin/testparm检验配置文件smb.conf的正确性

/sbin/mount.cifs(需yum install cifs*安装)

/usr/bin/smbclient客户端

/usr/bin/nmblookup查找NetBios name

/usr/bin/smbtree显示目录树

4、创建用户luguohua,使其隶属于users

usermod-G users luguohua

5、创建目录/home/share

[root@kf_centos7_204home]#chgrp users /home/share

[root@kf_centos7_204home]# chmod 2770 /home/share

[root@kf_centos7_204home]# ll -d /home/share

drwxrws---.2 root users 6 Mar 30 23:28 /home/share

6、添加samba的用户luguohua,并设置密码。

pdbedit-a -u luguohua

pdbedit-L

7、修改安全设置

getsebool-a | grep samba

setsebool-P samba_enable_home_dirs=1

setsebool-P samba_export_all_rw=1

关闭防火墙

iptables-F

8、重新启动samba

/etc/init.d/smbrestart

/etc/init.d/nmbrestart

servicesmb start

servicenmb start

smbd -D

nmbd -D

9、测试

(1)在命令行输入命令:smbclient-L //127.0.0.1 -U luguohua

按要求输入密码后,提示出错:

session setup failed: NT_STATUS_LOGON_FAILURE

这是因为执行smbclient命令的用户luguohua没有成为samba服务的用户,解决方法如下:

先将改用户luguohua加入到samba中

~$ smbpasswd -a 某用户ID

按要求设置密码

(2)确保已安装mount.cifs后(yum install cifs*),进行如下挂载。

mount -tcifs -o username=luguohua //127.0.0.1/share /mnt

mount -tcifs -o username=luguohua //192.168.1.204/share /mnt

(3)Windows中测试时为\\192.168.1.204\share,一定要注意斜杠的方向与linux中是不一样的。