1.简单的使用方法
任何时候当你修改了配置文件之后,都要检查一下文件的语法是否合适
这里,我们使用 testparm 命令:直接测试sam的配置文件
当测试完成发现没有什么需要修改的地方以及语法错误之后。
使用: service smb start 命令来开启服务
chkconfig smb on 设置开机自动启动
netstat -ntlp 查看那4个端口是否已经开启
此时,在你的windows端,应该已经可以通过网上邻居查看到了:
所有的通过samba来访问文件用户首先必须是系统用户,但是密码一定不是用户密码 ,我们可以是smbpasswd命令来给samba的用户加密码
常用选项:
-a : 将此用户加入到samba里来
-x : 从samba中删除一个用户
-d : 临时性的禁用这个用户
-e : 启用此用户
比如: smbpasswd -a gentoo
----------------------------------------------------------------------------------
小问题: 如何让CentOS 不可写,但是gentoo 可写呢?
在[tools]中
删除writable = XX
定义write list = gentoo ## 定义列表中的人才有写的权限。
小扩展:这里的list权限大于一切,如果你的目录设置有权限的acl控制,那么这里将直接无视acl
-----------------------------------------------------------------------------------
2.我们看看linux中如何以客户端的身份来访问
smbclient 客户端的查看和登录命令
-L IP/HOST 可以显示对方主机的共享选项
-U username 以这个用户的身份去查看共享
它的格式是:smbclient //IP/dir -U username
比如:
smbclient -L 172.16.100.1 对方要密码,我们直接确认,匿名访问,查看对方共享了什么
smbclient -L 172.16.100.1 -U RedHat 以gentoo 的身份看
进入:
smbclient //172.16.100.1/tools -U redhat
这条命令则可以让我们以redhat的身份登录到我们共享出来的目录里。
我们再来看另一种实现的方法:
① .如何通过组的方法,来定义让两个用户对同一个目录都有写权限的
其实很简单:
只要我们将两个用户加入到同一个组里去就好。
groupadd mygrp
usermod -aG mygrp gentoo
usermod -aG mygrp redhat
编辑配置文件
修改
write list = @mygrp (或者+mygrp)
这里,前面加@或者+,后面跟组名,则系统会自动识别成组的形式。
② .定义访问控制列表,表示只允许哪个网段的人能够访问
hosts allow = 127. 172.16.
这条配置命令则说明了到底哪个网段的人能够访问
③ .也可以直接将其共享的目录直接挂载在本地:
挂载其实也很简单,只不过挂载的时候一定要制定它的文件系统为cifs
mount -t cifs //172.16.100.1/tools /mnt -o username=redhat
我们以redhat的方式挂载,则redhat的用户是可写的。