当前位置:Linux教程 - Samba - Linux 下Samba 服务器的设置

Linux 下Samba 服务器的设置



        

      用上samba 以后,在WINDOWS 和Linux 的局域网内可以共享文件了,Linux 就像一台网络PC 或者WINDOWS PC ,就像LAN 内别的WINDOWS 计算机一样。另外,从Linux 机器上也可以存取WINDOWS 的硬盘了。直接mount WINDOWS 的目录,就像用你自己的文件一样了。设置也非常容易,当然对于新手来说可能复杂一点。
      下面,我们一步一步地来设置samba 服务器。

      一般说来,每一个Linux 发行版本都包含 samba,但是如果你的版本还是1.x.x 的话,你要先删除,然后从samba 的老家:http://de.samba.org 下载一个新的2.0.x 的版本。如果你已经安装了2.0 版本的话,就可以跳到开始设置那里去了。

    ■ 安装:
    把下载好的文件解压到 /tmp 目录:
    >> tar zxvf samba-xxxxxx.tgz -C /tmp

    然后运行 /tmp/samba-xxx/src 目录下的设置脚本:

    >> cd /tmp/samba-xxxxx/src/

    如果你用的内核版本高于 2.1.70,使用:

    >> ./configure --enable-smbmount

    其他情况下,使用:

    >> ./configure

    在这个脚本定制好系统后,可以开始编译samba 了:

    >> make

      这段时间要根据你机器来决定,如果工作正常的话,你可以把samba 拷贝到/usr/local/ 目录下。
    只有root 对于/usr/local 目录有写权限。可以用
    >> su
    命令,并输入root 口令。然后拷贝 samba:
    >> cp -a /tmp/samba-xxxx /usr/local

    改变目录到这个目录,开始安装 samba :

    >> cd /usr/local/samba-xxxx/source
    >> make install

    建立目录 /usr/local/samba ,在那里放置二进制文件,配置文件以及日志文件。


    ■ 好了,现在安装好samba了,我们开始设置。

    在目录/usr/local/samba/lib/ 内建立设置文件smb.conf:
    >> touch /usr/local/samba/lib/smb.conf

    为便于测试,我们建立一个最小配置的文件:

    [global]
    workgroup = workgroup
    [all]
    path = /
    read only = yes
    ;
    ; Semicolon starts a comment
    ; End

    "workgroup=" 后面的名字必须和WINDOWS 网络属性里工作组的名字一样。
    编辑好配置文件后,启动samba:

    >> /usr/local/samba/bin/nmbd -D
    >> /usr/local/samba/bin/smbd -D

      在WINDOWS 机器上登录。注意:必须使用Linux 存在的用户名。双击网络图标后,可以看到Linux 机器。打开这个机器,要求输入口令,在这里输入你在Linux 机器上的口令。
      实际的配置文件允许你存取Linux 上的所有文件。下面,我们改变配置文件。下面的配置应该可以在大多数系统上工作:我们没有注释所有的设置,你如果想知道得更多的话,可以阅读 http://de.samba.org 上的手册。
    [global]
    workgroup = workgroup
    guest account = nobody
    keep alive = 30
    os level = 2
    security = user
    printing = bsd
    printcap name = /etc/printcap
    load printers = yes
    ; 如果需要Samba 作为一台wins 服务器的话,把 wins support 改为 yes
    wins support = no

    ; 需要Samba 使用现有的wins 服务器的话,去掉下行的注释,并改变
    ; IP 地址为你的wins 服务器地址。
    ; wins server = 192.168.1.1

    [local]
    path = /usr/local
    read only = yes
    ; 现在可以在WINDOWS 下找到/usr/local 下的任何程序了

    [homes]
    comment = HomeDirectory
    browseable = no
    read only = no
    create mode = 0750

    ; 以下的共享让用户存取服务器的CD 驱动器
    [cdrom]
    comment = Linux CD-ROM
    ; 输入你的 CD-Rom 驱动器的路径 /cdrom 或者 /mnt/cdrom
    path = /cdrom
    read only = yes
    locking = no

    [printers]
    comment = All Printers
    browseable = no
    printable = yes
    public = no
    read only = yes
    create mode = 0700
    directory = /tmp
    ; 这下,打印机也可以在Windows 下使用了。

      现在停止 nmbd 以及 smbd 守护程序,来激活新的配置。首先寻找PID 号码:
    >>ps x

    输出:
    [...]
    7199 ? S 0:00 /usr/local/samba/bin/nmbd -D
    7201 ? S 0:00 /usr/local/samba/bin/smbd -D
    [...]

    杀掉这两个进程:

    >> kill 进程号

    进程号就是你在上面看到的第一列的号码,谈后重新启动:

    >> /usr/local/samba/bin/nmbd -D
    >> /usr/local/samba/bin/smbd -D

      在WINDOWS 网络窗口里搜索Linux PC ,它应该就在那里了,如果没有的话,看一下日志文件:
    /usr/local/samba/var/log.smb 和 /usr/local/samba/var/log.nmb。
    发布人:netbull 来自:FreeLamp