前言:在windows和linux的混合网络中,samba还是有很大用处的,本文用实验的方法快速学习Samba。
[实验项目]
①在linux上建立Samba服务器,用类似FTP的客户端smbclient访问。
②在linux上建立security=user的Samba服务器,用win2000的客户端访问。
③在linux上建立security=share的samba服务器,用win2000的客户端访问。
④在linux上挂载samba共享。
实验一:在linux上建立Samba服务器,用类似FTP的客户端smbclient访问。
[实验要求]
1.两台RH8.0的机器可以互相ping通。
2.机器1的IP:192.168.0.1
3.机器2的IP:192.168.0.2
[实验步骤]
1.关掉两台机的防火墙。
#service iptables stop
#chkconfig iptables off
2.在两台机上安装软件包。
检查samba,samba-common,samba-client包是否已安装。
# rpm -q samba
# rpm -q samba-common
# rpm -q samba-client
根据结果,在安装光盘里找到没有安装的软件包,开始安装。
# rpm -ivh samba*.rpm
3.在机器1开启smb服务,并查看共享了什么内容。
# service smb start
# smbclient -L 192.168.0.1 -N
4.在机器1添加新用户。
# useradd user1
# passwd user1
密码:user1
# touch /home/user1/iAmUser1
5.在机器1创建smb帐户文件文件:/etc/samba/smbpasswd
# touch /etc/samba/smbpasswd
# smbpasswd -a user1
密码:user1
6.在机器1备份原配置文件:/etc/samba/smb.conf
# service smb restart
10.在机器2上看机器1的samba共享了什么?
# smbclient -L 192.168.0.1 -N
11.在机器2访问机器1的samba服务。
# smbclient //192.68.0.1/homes -U user1%user1
12.在机器2上成功访问后,用help查看命令。
smb: \help
注意:1) 用ls 看到文件iAmUser1吗?
2) 比较和FTP的命令有何不同。
实验二:在linux上建立security=user的Samba服务器,用win2000的客户端访问。
[实验要求]
1.一台RH8.0机,一台Win2k机,互相能ping通。
2.RH8.0机,IP:192.168.0.1
3.Win2k机,IP:192.168.0.2
[实验步骤]
1.在实验一的基础上,修改/etc/samba/smb.conf
修改[global]段中:
workgroup = WORKGROUP1
―――――――――――――――――――――――-
如果你对上述修改熟悉,跳过这段。
workgroup = WORKGROUP1为使linux和windows机在同一个工作组。
―――――――――――――――――――――――-
注意:修改了smb.conf,必须运行:service smb restart
2.修改Win2k的工作组,为WORKGROUP1,若为域控制器,必须降为普通工作组,用
Administrator重启登录。
修改方法:“我的电脑”|“属性”|“网络标识”|“属性”
3.在win2k机上,“网络邻居”|“整个网络”|“全部内容”|“microsoft windows 网络”
| “Workgroup1”,看到RH系统的机器了吗?
4.输入用户名user1,密码user1进入,可以新建,删除文件吗?
实验三:在linux上建立security=share的samba服务器,用win2000的客户端访问。
[实验要求]
1.一台RH8.0机,一台Win2k机,互相能ping通。
2.RH8.0机,IP:192.168.0.1
3.Win2k机,IP:192.168.0.2
[实验步骤]
1.在实验二???s?? ??ゐ?!的基础上,修改/etc/samba/smb.conf
追加下面内容:
[public]
comment = public
path = /mnt
browsable = yes
public =yes
修改[global]段中:
security = share
―――――――――――――――――――――――-
如果你对上述修改熟悉,跳过这段。
[public]定义了另一段,也可以为其他名称。
path指出共享的目录。
security采用share。
―――――――――――――――――――――――-
注意:修改了smb.conf,必须运行:service smb restart
2.在win2k机上,用Administrator登录,“网络邻居”|“整个网络”|“全部内容”|
“microsoft windows 网络”| “Workgroup1”,看到RH系统的机器了吗?
3.不用密码就可以进入了,是吗?你看到几个共享目录?可以写入吗?
4.在win2k机上新建一个帐户:user1,密码:user1。
5.在win2k机上注销,切换用户user1。
6.在win2k机上,“网络邻居”|“整个网络”|“全部内容”|“microsoft windows 网络”
| “Workgroup1”,看到RH系统的机器了吗?
7.不用密码就可以进入了,是吗?你看到几个共享目录?可以写入吗?
注意:1) 当你模仿[homes]段修改了[public]段的writable,create mode ,directory mode后,可以写入吗?
2) 你修改了RH8.0机的/mnt/读写权限为drwxrwxrwx时,情况怎么样呢?
实验四:在linux上挂载samba共享。
[实验要求]
1.一台RH8.0机,一台Win2k机,互相能ping通。
2.RH8.0机,IP:192.168.0.1
3.Win2k机,IP:192.168.0.2
[实验步骤]
1.在win2k机上,共享C:
2.在RH8.0机上运行:
# smbclient //192.168.0.2/C -U win2k的当前登陆用户名%密码
注意:能登陆吗?
3.挂载共享盘:
# mount -t smbfs -o username=win2k的当前登陆名%密码
//192.168.0.2/C /mnt/cdrom
注意:1)“username=win2k的当前登陆名%密码” 之间不要有空格。
2) 也可用:# smbmount //192.168.0.2/C /mnt/cdrom -o username=
username=win2k的当前登陆名%密码
3) 也可用:# smbmount //192.168.0.2/C /mnt/cdrom -U
win2k的当前登陆用户名
接着输入密码便可。
4) 实际,两台都是Linux系统,一台作samba服务器,另一台作客户机。如
实验一的情况下,在机器2上:
# mount -t smbfs -o username=user1%user1
//192.168.0.1/homes /mnt/cdrom
也可实现共享,不过没有必要,linux之间,可以用nfs实现共享,而且速度比Samba快。
[实验小结]
本文只是简单快速的学习Sabma,如果想深入了解,需要结合manpage与原/etc/samba/smb.conf(已备份为smb.conf.BAK)仔细研究,另外,/usr/share/doc/samba提供了专业文档可以学习。不过,通过本文的学习,已基本满足普通的工作需要。至于security为domain和server形式,我也没有研究,所以,没有涉及。