SAMBA<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />



SAMBA 服务的主要功能在于, unix linux windwos 这三者的 os 之间的文件共享服务。。它通过 smb portocol 这个协议来进行通讯。。 smb 的全名为。。 server message block    samba 服务主要提供以下的四个服务。。



1 验证使用者的身份,并给予适当的权限。。。 2 可以共享文件和打印机。。。 3 可以提供 netblos 的名称解析(也就是可以扮演一台 windows 服务器) 4. 。。。。。可以浏览不同操作主机之间的资源



Samba 的主要进程有两个。。一个是 smbd  和   nmbd ,这两个主要进程。。第一个 smbd 进程负责 1 和 2 两个主要服务。。而 nmbd 是负责 3 和 4 这两个服务的。。。。



Samba 服务是一个系统服务。。。它是启动和停止都是在一个服务上进行的。。。它的软件套件。。分为四个。。。。。 samba , common, client swat 它的主要端口。。有以下这三个, 137 138 139 它的配置文件。。存放在。。。、、 /etc/samba/smb.conf 这个路径里。。。其他一些相关资料。。也存放在。 /etc/samba/* 这个目录文件里。。另外和这个 samba 相关的还有。。。。 system-config-samba   和   samba-swat 这两个图形界面。。。都是可以 设置 samba 这个服务的。。还有。。 samba 的日志文件都会记录在 /var/log/samba/* 这个文件下。。。



其中。。。 samba-swat 这个图形界面是通过。。。 901 端口。。来访问的。。如果要安装。。。 samba-swat 这个图形界面软件。。。。就要重启守护进程。。。。。用命令。。 chkconfig  swat  on 然后。。重启。。开启后。。用。。。。。。。。。。。。 Mozilla Firefox 浏览器。。。输入 127.0.0.1:901 就进入。。了 samba-swat 了。。。



     下面在介绍一下 samba 的配置文件。。它是在 /etc/samba/smb.conf 的这个路径。。用 vi 编辑器打开。。。。预设会有。。。三大选项   global( 全局 ) homes (家目录) printers( 打印机 ) 这三打选项。。第一个是针对全局来设置的。。。第二个是针对。。用户。。。第三个是针对。。。打印机。。。注意。。 global 的设定会影响。。 homes 和 printers 这两个。。因为它是影响全局的。。。。。



我们来看看这个配置文件中的一些参数。。。。。



Public=no 是表示匿名用户不可使用。。。



Browsable=yes 表示用户可以看到其资源



Writable=no  表是用户不能往里些入东西。。



Printable=no 表示硬盘默认的分享目录



Group=yes 表示连接进来的用户会自动加入到这个,表示的用户组里



下面是。。一个例子。。。。。。。。


<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" />

Samba 的主要作用 samba具有下列哪些功能_bc



上面的参数。。都是默认的。。。。。


我们要养成一个习惯。。在每次。。做配置文件修改时。。先要备份一份。。。。以避免出错。。。。。。命令为。。。。。。。。。。 cp /etc/samba/smb.conf 空格 /etc/samba/smb.conf.bak   


用命令开启。。。。。 vi /etc/samba/smb.conf


那我们就来实验一下。。。。。。。。。。。来共享这个目录。。。。。。。。(    /smbdata  )


要求 :               workgroup=RHCE


                     Share name=myshar


                     Not writable


                     Not allow anonymous access


                     Access this shared directory as tom


打开配置文件。。。。。。。


在。。。 global 的设定中。。。将 workgroup = mygroup  改为。。。 workgroup = RHCE


我们移到最后面。。。可能会看到一个。。设定的例子。。不用管他我们另起启一行,,,写


其实我们只想要写一行 就行了。。


【 myshare 】


     Path = /smbdata


  另外的不去设置它默认是 no 的。。。。想要去设置的话。。自己添加相应的设置。。。


存档并离开


再在去创建一个。。。。目录   mkdir /smbdata


             用 touch /smbdata/hello.tom 的档案。。。。


用 useradd tom 创建一个 tom 账户。。。。。。。。


想要修改密码。。。。教大家一个小命令。。。。。。。


Echo 1234 | passwd –stdin tom 它是意思是说。。。将 1234 这个密码 连接输入到 tom 这个账号。。。


这样就可以从 windows 找到 linux 共享了。。。但是会遇到一个问题。。就是没有权限去登入它。。。怎么办呢。。。。下面我们来讲讲。。。 samba 的身份验证。。。。。也是在。。刚才那一个目录下去查看它。。。它是一个安全登入的选项。。。。。你会看到。。。 security = X 它这里会有四种方式。。。。


User 它是使用本机上的账号密码来做身分的验证(它是系统默认的方式)它这里指的本机密码并不是指在 /etc/shadow 而是。。 samba 的密码数据库是在 、 /etc/samba/smbpsswd 里


Share 的认证方式是不指定密码认证。。。也就是。。空密码。。匿名登入。。


Domain 它的认证方式。。是交给工作域里的一台指定计算机来完成的。。。。。


Ads 它是认证方式是。。。交给活动目录。。来做身份的认证。。。。。


在上面我们已经创建了一个 tom 的用户。。。我们可以用命令来查看一下,有没有 tom 这一个用户


Tail /etc/passwd  哪它就会显示出来有没有 tom 这个用户了。。。。


我们再来看看。。 samba 数据库里有没有 tom 密码的数据。。。命令为 cat /etc/samba/smbpsswd 可以发现什么都没有,这是为什么呢。。。应为我们还没有把 tom 这个用户加如到这个数据库中去。。所以就没有这个。。 tom 用户的内容了。。。。我们在这里要添加这个 tom 的。。。命令为


Smbpasswd –a tom ( 新增 tom 用户的密码 )


这里 a 的参数是 add 的意思


Enter 后输入两次相同的密码。。。即可 要记住了。。 samba 数据库的账号和 local 的账号是一样的。。。


除了上面 -a 的参数外。。另外。。还有以下几个参数。。。


不加参数的话表示。。要修改密码。。。例如。。。。 smbpasswd tom 表示要修改 tom 在 samba 数据库里的密码


………. –d 代表的是。。停掉这个用户。。。。 d 的参数代表的是 disable 的意思。。。。。。。。


。。。。。。 -e 代表的是。。。启用这个用户。。。 e 代表的是。。。 enable 的意思。。。。。。。。。


………..-x 代表的是。。。删除这个用户。。。 x 表示的是。。。 expurqation 的意思。。。。。。


下一步,我们再来介绍 ….smbclient 这一个工具。。。


是在客户端里输入。。。。。 smbclient//machine/share   除了 smbclient 以外。。则是一条 unc path


用这条命令来查看。。。。。区域内的共享资源。。。。。 smbclient –L hotname (这里要注意 L 是大写的)


比如。。。。 smbclient –L server01 或 192.168.1.10( 主要查看共享目录的 )


以上的设置都是匿名的。。他们以匿名的方式登入。。当然在配置文件里要做相应的设置。。。。如果不是匿名的。。要要特定的账号等如怎么办,那我就给它。。后面加上特定账号和密码好了。。。。


命令为。。。 smbclient –L 192.168.1.10 –U tom%1234


要想查寻网络内的 ip 可以用 nmblookup\* 它会一广播的方式去查询。。。。


最后,我要讲的是 mount 挂载。。。


命令为。。。。。。 mount //server/share /mnt/smb –o username=user%passwd


我们还可以让他实现自动挂载。。。。是在我们的 /etc/fstab 里去设定的。。。。。


第一步我们先去 mkdir 一个目录。。。。。 mkdir /mnt/smb


然后。。。我们加入。。。 vi /etc/fstab  在下面输入。。。。。


//192.168.1.10/myshar     /mnt/smb         ambfs     defaults,username=tom%123     0 0


保存并离开。。。最后。。 reboot 。。。。开机后 mount look look 。。。。。。就 ok 了。。。。


转载于:https://blog.51cto.com/angel9999/114160