VM中 Ubuntu14.04 中Samba的安装配置和使用

以前都是在Redhat 上搭建samba,现在改成在ubuntu12.04 上搭建发现 sudo /etc/init.d/samba restart  始终不行,原来,现在ubuntu下,启动服务要用 sudo service  smbd restart,一律都改成了service 这种形式来启动。

 

1、首先安装 samba

        sudo apt-get install samba 

2、创建一个文件夹,这个文件夹就是用来共享、传递、读写文件内容的地方。

        mkdir -p /home/cxw/share
        chmod 777 /home/cxw/share

        这里假设你的共享文件夹是在用户主目录下的share目录。

3、配置samba的配置文件smb.conf, 对配置文件做个backup。

        sudo cp /etc/samba/smb.conf /etc/samba/smb.conf_backup 

        sudo vim /etc/samba/smb.conf

        下面请注意在以下几处动刀子。
        (1)请搜索查找到 #security = user的地方,然后以下面这几行取代

        security = user(前面有#号去掉)
        username map = /etc/samba/smbusers
        这是Samba 服务器的安全模式,有5种安全模式:Share、User、Server、Domain和Ads。用来适应不同的企业服务器需求,默认情况下为User。
        (2)同样请搜寻到[global]把 workgroup = MSHOME 改成

        workgroup = WORKGROUP
        display charset = UTF-8
        unix charset = UTF-8
        dos charset = cp936 

       后面三行是为了防止出现中文目录乱码的情况。

        (3)接着请跳到配置文件下的最后一行(命令模式下,按G)将下列几行新增到文件的最后面,假设允许访问的用户为:cxw。而文件夹的共享名为第二步设置的/home/cxw/share:

        [Share]
        comment = Shared Folder with username and password (注释信息)
        path = /home/cxw/share     (我自己用一般设置为path =  / 便是整个根目录)
        # public = yes (允许匿名访问)
        writable = yes  (可写)
        # readyonly =  yes (只读)
        valid users = cxw    (用户名,设备可访问组可用valid users =@组名)
        create mask = 0700
        directory mask = 0700
        force user = nobody
        force group = nogroup
        available = yes
        browseable = yes (表示可见隐藏)

        (4)现在要添加cxw这个网络访问帐户。如果系统中当前没有这个帐户,那么注意这边的用户添加请使用下述命令:(假设用户为cxw,密码为123456)

        sudo useradd cxw 

        要注意,上面只是增加了cxw这个用户,却没有给用户赋予本机登录密码。所以这个用户将只能从远程访问,不能从本机登录。而且samba的登录密码可以和本机登录密码不一样。
        现在要新增网络使用者的帐号: 

        sudo smbpasswd -a cxw
        sudo vim /etc/samba/smbusers
 
        在新建立的文件内加入下面这一行并保存
        cxw = "network username"

        (5)测试并启动samba
        sudo testparm
        注意老的命令用不了啦
        sudo /etc/init.d/samba restart
        肯定会提示sudo: /etc/init.d/samba: command not found
        请使用下面的命令:

        sudo service smbd restart
        sudo service nmbd restart



如何在不同系统之间互访samba。

 

1.如果你只是为了拷贝东西,那我说没有必要去建这么复杂,你完全可以使用ssh。      
        sudo apt-get install ssh      
2.如果你是为了实时更新你的版本库,那samba可能会让你失望啦,samba只是一个单纯的用来做一个临时共享文件的仓库,还达不到版本控制器的功能。
        如要使用版本控制器,推荐使用svn或者git,walfred曾经写过一篇关于git比较简单的文章,你可以参考使用git建立远程仓库,让别人git clone下来


一、在windows下访问ubuntu搭建的samba。应该是最简单不过的了。

        只需使用win+R调出明令框,然后输入\\搭有samba的ubuntu机子的IP。

二、下面重点说下在ubuntu和ubuntu下共享文件。
        
       
        方法1:使用smbclient 

        建有samba的主机肯定已经安装过samba来。其他客户机同样需要安装samba。
        sudo apt-get install samba smbfs
        安装ok之后,那就正式开始使用smbclient吧。
        (1),列出某个IP地址所提供的共享文件夹 
        smbclient -L 198.168.0.1 -U username%password 
        (2),像FTP客户端一样使用smbclient 
        smbclient //192.168.0.1/tmp  -U username%password 
        执行smbclient命令成功后,进入smbclient环境,出现提示符: smb:\> 
        这里有许多命令和ftp命令相似,如cd 、lcd、get、megt、put、mput等。通过这些命令,我们可以访问远程主机的共享资源。

        方法2:使用mount进行挂载

        除了使用smbclient,还可以通过mount和smbcount挂载远程共享文件夹
        这边就需要用到你的fstype来,所以就应征来当初apt-get install smbfs是必须的。 
        mount -t smbfs -o  username=administrator,password=123456 //192.168.0.1/tmp  /mnt/tmp 
        smbmount //192.168.0.1/tmp /mnt/tmp -o username=administrator

posted on 2015-09-23 09:08  imsoft  阅读(3222)  评论(0编辑  收藏  举报

导航