虚拟机版本: VMware-workstation-5.5.1
RedHat 版本: RedHat 9.0
Samba 版本: smb 2.7.7a-7.9.0
 




1. 第一课 Samba服务器
       1.1 Samba简介
       Samba 是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成。主要作用是在网络上实现不同操作系统之间文件和打印机等设备的共享。Samba服务器程序在运行时有两个守护进程:smbd和nmbd。配置文件路径:/etc/samba/smb.conf。启动脚本路径:/etc/rc.d/init.d/smb.conf。
 
       1.2 虚拟机网络配置
       虚拟机配置启动之后会出现三块网卡,其中VMnet1是虚拟机Host-only模式的网络接口,VMnet8是NAT模式的网络接口,如图1-1所示。
图1-1 本地连接
本次文档中主要是介绍虚拟机网桥模式(bridge连接)的网络连接,因此虚拟机中的IP地址必须和本机的IP地址分配在相同的网段中,图1-2中显示的本机IP是192.168.18.4,所以虚拟机的IP可以选择的IP地址范围是:192.168.18.0~192.168.18.254(本机地址除外)。
图1-2 主机网络连接信息
    在虚拟机中安装好RedHat操作系统之后,进入RedHat进行网络配置并激活网卡。如图1-3所示,点击系统菜单—系统工具—网络设备控制。
图1-3 RedHat网络配置
如图1-4,此时的网卡eth0是处于不活跃状态的,点击配置按钮。
图1-5 网卡配置
选择“静态设置IP地址”选项,配置IP地址:192.168.18.4,默认网关与主机相同:192.168.18.1。需要说明的是当虚拟机的网络连接为桥接模式的时候,RedHat的IP地址必须是静态设置的IP地址,否则网卡无法激活。如图1-6所示。
图1-6 静态设置IP
修改完毕IP地址之后,通过/etc/init.d/network restart命令重启网卡设备,然后通过ifconfig命令查看IP修改是否成功,并通过ping命令查看验证是否能够与本机ping通,如图1-7所示。
1-7 ifconfig ping 命令
同样,你可以在windows系统下的cmd中使用ping命令查看是否能够ping通,如果ping不通,可以在linux的终端中执行iptables F 命令关闭防火墙,然后重新执行ping命令。
 
       1.3  Samba服务器安装
一般在安装是选择服务器安装,RedHat中式自带了samba服务器程序的,我们可以通过rpm qa|grep samba 命令来查看是否已经安装了samba服务器程序和客户端程序。如图1-8所示。
图1-8 查看是否已安装samba
我们可以通过/etc/rc.d/init.d/smb start命令来启动samba服务器,如图1-9所示。
图1-9 启动samba服务器
1.3.1 smb.conf配置文件
Samba 的配置文件路径:/etc/samba。 s mb.conf 文件中包括4中结构:【Global】、【Homes】、【printers】、【Userdefined_shareName】
参数说明:
Globa 用于定义全局参数和缺省值。
Printers 用于定义打印机共享。
Userdefined_ShareName 用于自定义共享(可有多个)。
 
    comment 描述该共享的名称
  path 定义该共享的目录
  browseable 指定共享的目录是否可浏览
  writable 指定共享的目录是否有写入权限
  read only 指定共享的目录为只读权限
  public 指定是否可以允许Guest帐户访问
  guest ok 通public相同,yes为允许guest访问
valid users 指定访问该共享的用户
1.3.2用户创建
我们通过useradd或adduser在linux中添加用户,并通过smbpasswd a username 命令向samba服务器中添加用户并设置登录密码。本文档通过添加boss,employee和passage三个用户来演示添加用户的全过程。命令如下:
adduser boss
smbpasswd a boss
 
adduser employee
smbpasswd a employee
 
adduser passage
smbpasswd a passage
系统会提示让你输入相应用户的samba服务器登录密码,执行完上述命令,linux操作系统会在/home目录下分别产生boss、employee、passage的文件夹,我们可以通过ls /home,命令查看,如图1-10所示。
图1-10 用户添加
1.3.3用户和文件夹访问权限
我们将修改boss、employee、passage在/home目录下各自的文件夹访问权限,通过命令chmod 777 filename来实现,如图1-11。
                                                        图1-11
文件夹用户boss、employee、passage之间访问权限的设置,如图1-12所示。

boss

 
tmp
share
employee
passage

 

 
完成上述工作之后,我们必须对smb.conf的修改配置,我们可以通过gedit /etc/samba/smb.conf命令来编辑修改配置文件。配置如下:
[boss]
    path = /home/boss
    valid users = boss
    guest ok = no
    writeable = yes
    browseable = yes
[employee]
    path = /home/employee
    guest ok = no
    valid users = boss employee
    invalid users = passage
    writeable = yes
    browseable = yes
    read list = boss employee
    write list = boss employee
[passage]
    path = /home/passage
    guest ok = no
    valid users = boss employee passage
    writeable = yes
    browseable = yes
    read list = boss employee passage
    write list = boss employee
[tmp]
    path = /home/tmp
guest ok = no
    valid users = boss employee passage
    writeable = yes
    browseable = yes
    read list = boss employee passage
    write list = boss employee
[share]
    path = /home/share
    valid users = boss employee
    invalid users = passage
    writeable = yes
    browseable =  yes
    read list = boss employee
    write list = boss employee
配置完成之后保存,然后通过/etc/rc.d/init.d/smb restart命令重启samba服务器程序。
Ubuntu 是/etc/init.d/samba restart重启的
Smbclient //192.168.18.6/sambauser U sambauser
 
Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐