• Samba(SMB是其缩写) 是一个网络服务器


          Samba(SMB是其缩写) 是一个网络服务器,用于Linux和Windows共享文件之用;Samba 即可以用于Windows和Linux之间的共享文件,也一样用于Linux和Linux之间的共享文件;不过对于Linux和Linux之间共享文件有更好的网络文件系统NFS,NFS也是需要架设服务器的;大家知道在Windows 网络中的每台机器即可以是文件共享的服务器,也可以同是客户机;Samba 也一样能行,比如一台Linux的机器,如果架了Samba Server 后,它能充当共享服务器,同时也能做为客户机来访问其它网络中的Windows共享文件系统,或其它Linux的Sabmba 服务器;我们在Windows网络中,看到共享文件功能知道,我们直接就可以把共享文件夹当做本地硬盘来使用。在Linux的中,就是通过Samba的向网络中的机器提供共享文件系统,也可以把网络中其它机器的共享挂载在本地机上使用;这在一定意义上说和FTP是不一样的。

    Samba 用的netbios协议,如果您用Samba 不成功,

    Linux与Windows 、Linux 和 Linux

    1、安装

    Samba可以使用liveCD或者yum install安装。

    2、查看服务是否已经启动

    [mabin@localhost /]$ service smb start
    Starting SMB services:                                     [  OK  ]
    Starting NMB services:                                     [  OK  ]
    smb 是Samba 的主要启动服务,让其它机器能知道此机器共享了什么;而nmb是做解析用的,就是把这台Linux机器所共享的工作组及在此工作组下NetBios的解析出来。

    从下面可以看出,smbd是占用的139和445端口。

    [mabin@localhost /]$ netstat -tlnp | grep smb
    tcp        0      0 0.0.0.0:139                 0.0.0.0:*                   LISTEN      13139/smbd
    tcp        0      0 0.0.0.0:445                 0.0.0.0:*                   LISTEN      13139/smbd

    3、备份smb.conf文件

    Samba服务器的配置文件都位于/etc/samba目录中,服务器的主配置文件是smb.conf;也有用户配置文件 smbpasswd、smbusers和lmhosts等;还有一个文件是secrets.tdb,这个文件是Samba 服务器启动手自动生成的

    [mabin@localhost /]$mv /etc/samba/smb.conf /etc/samba/smb.conf.bak

    [mabin@localhost /]$ ls /etc/samba
    lmhosts  passdb.tdb  secrets.tdb  smb.conf.bak  smbpasswd  smbusers

    4、设置samba服务器能实现匿名读写

    [STEP 1]配置smb.conf文件

    [mabin@localhost /]$touch smb.conf

    [mabin@localhost /]$vim smb.conf

    /*全局配置*/

    [global]

    workgroup = mabin                          //类似于在Windows中显示的工作组名称

    netbios name = mabin-samba           //被netbios解析出来的计算机名

    server string = samba testserver       //服务器说明

    security = share                               //security是登录和验证方式,设置为share可以匿名访问;而如果是user这种验证方式的话,就需要用户名和密码

    [mabin]                                          //在Windows中显示出来的共享目录名

    path = /var/samba                         //共享目录的路径

    writeable = yes                              //是否可写

    browseable = yes                          //是否可浏览

    guest ok = yes                              //设置匿名用户以guest身份登录

    [STEP 2]建立目录并授予权限

    [mabin@localhost /]$mkdir /var/samba

    [mabin@localhost /]$id nobody                                                            //查看nobody的用户信息,看是否属于nobody用户组

    uid=99(nobody) gid=99(nobody) groups=99(nobody)

    [mabin@localhost /]$chown -R nobody:nobody /var/samba

    [STEP 3]重启smb服务

    [mabin@localhost /]$ service smb restart
    Shutting down SMB services:                                [  OK  ]
    Shutting down NMB services:                                [  OK  ]
    Starting SMB services:                                     [  OK  ]
    Starting NMB services:                                     [  OK  ]

    5、使用smbclient命令访问samba服务器的共享

    [mabin@localhost /]$ smbclient -L //192.168.1.243                                                //网上很多资料给出这条命令,但是不能真正的进入命令模式
    Password:
    Domain=[MABIN] OS=[Unix] Server=[Samba 3.0.33-3.15.el5_4]

            Sharename       Type      Comment
            ---------       ----      -------
            MaBin           Disk
            IPC$            IPC       IPC Service (This is MaBin's Samba server.)
    Domain=[MABIN] OS=[Unix] Server=[Samba 3.0.33-3.15.el5_4]

            Server               Comment
            ---------            -------
            MABIN-SAMBA          This is MaBin's Samba server.

            Workgroup            Master
            ---------            -------
            MABIN
    可以看出,192.168.1.243这台服务器有共享目录MaBin

    [mabin@localhost /]$ smbclient //192.168.1.243/MaBin                                      //进入共享目录,并在命令模式下对其进行操作
    Password:
    Domain=[MABIN] OS=[Unix] Server=[Samba 3.0.33-3.15.el5_4]
    Server not using user level security and no password supplied.
    smb: >

    6、smbclient命令的用法

    smbclient –L IP或者NETBIOS名称                                       //作用是显示某台提供samba服务的服务器上的共享资源


    smbclient //IP或者NETBIOS名称/共享资源名 [-U 用户名]       //使用网络资源

    7、smbclient命令

    命令                                           说明

    ![shell command]			执行所用的SHELL命令,或让用户进入 SHELL提示符
    cd [目录] 切换到服务器端的指定目录,如未指定,则 smbclient 返回当前本地目录
    lcd [目录] 切换到客户端指定的目录;
    dir 或ls 列出当前目录下的文件;
    exit 或quit 退出smbclient
    get file1 file2                 从服务器上下载file1,并以文件名file2存在本地机上;如果不想改名,可以把file2省略
    mget file1 file2 file3 filen         从服务器上下载多个文件;
    md或mkdir 目录 在服务器上创建目录
    rd或rmdir 目录 删除服务器上的目录
    put file1 [file2]         向服务器上传一个文件file1,传到服务器上改名为file2;
    mput file1 file2 filen                   向服务器上传多个文件
  • 相关阅读:
    【搞定GTD】如何开始实践GTD?
    【iOS开发笔记21/50】获取应用程序的名称和版本号
    读书笔记:《冠军记忆术》
    【桥牌笔记】绝对不能让东家上手
    OpenInventor开发笔记:解决FaceSet的填充问题
    JasonHelper.Escape 转换字符串为jason格式代码
    在合适的场合使用 with (nolock) 提升查询性能
    嫁给程序员吧!【转】
    美国的工薪族阶层只承担全国"个税”总量的5%
    探秘System.Threading系列 第三篇:Thread的数据ThreadStatic 和LocalDataStoreSlot
  • 原文地址:https://www.cnblogs.com/wzf365/p/3312687.html
Copyright © 2020-2023  润新知