今天walfred做了件比较挫的事情,现在想想还是蛮好笑的,当初在redhat上建samba的时候,熟的连配置文件(smb.conf)都不需要参考就可以直接更改,可今天在ubuntu下就不行了。好在网络时代的友好,搜索引擎总是能帮你很多,但零7零8的,还需要我好好补上这么一记了。待看完这篇文章,你就知道我为什么这么yd的笑而不语了。


        这篇文章首先教会你如何在ubuntu下,创建samba服务器。下一篇 ubuntu创建samba服务器,实现不同系统之间的互访(二)将会介绍通过不同的方法实现不同系统之间的互访。


        有了apt-get这玩意,事情总会解决的很快;


1、既然这么说,那首先是得安装上samba啦,



sudo apt-get install samba smbfs



        看到安装samba还知道是怎么回事,但是后面这个smbfs是神马东西呢,你先甭管,下篇文章我会眷顾她的。



2、创建一个文件夹用来收尸,嘿嘿,逗你玩呢,这个文件夹就是传说中的用来共享、传递、读写文件内容的地方,我这边是个例子,大家对号入座就行。



mkdir -p ~/share
 
 
        chmod 777 ~/share



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



3、对samba的配置文件进行动刀啦,不要怕,但是如果你确实感到有那么一点点害怕,那你对配置文件做个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



        (2)同样请搜寻到[global]把  workgroup = MSHOME 改成



   

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



        utf-8web大侠应该认识它吧,对就是防止出现中文目录乱码的情况。



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



      

[Share]
 
 
        comment = Shared Folder with username and password
 
 
        path = ~/share
 
 
        public = yes
 
 
        writable = yes
 
 
        valid users = huyi
 
 
        create mask = 0700
 
 
        directory mask = 0700
 
 
        force user = nobody
 
 
        force group = nogroup
 
 
        available = yes
 
 
        browseable = yes



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



 

sudo useradd huyi



        要注意,上面只是增加了huyi这个用户,却没有给用户赋予本机登录密码。所以这个用户将只能从远程访问,不能从本机登录。而且samba的登录密码可以和本机登录密码不一样。



        现在要新增网络使用者的帐号:



   

sudo smbpasswd -a huyi
 
 
        sudo vim /etc/samba/smbusers



        在新建立的文件内加入下面这一行并保存



   

huyi = "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



        起来了吗,那就享受吧,今天就写到这,明天会继续 ubuntu创建samba服务器,实现不同系统之间的互访 二



        将主要介绍xp访问ubuntu,以及ubuntu访问ubuntu。呵呵,这里需要首尾呼应了,说办了件挫事就是ubuntu下,我搭了半天给别人用,又是smbclient又是mount的,最后还不如使用ssh的scp来的快。



 



  上一篇文章ubuntu创建samba服务器,实现不同系统之间的互访(一)已经教会你如何在ubuntu下建立samba服务器,这里假设你已经阅读过上篇文章。

本文将会告诉你如何在不同系统之间互访samba。

 说在前面:



1.如果你只是为了拷贝东西,那我说没有必要去建这么复杂,你完全可以使用ssh。



        关于ssh你可以查看这篇文章:   Ubuntu SSH的使用



        说白了,就是两条命令:



sudo apt-get install ssh



        scp 目标机机IP:文件目录 目的机IP



2.如果你是为了实时更新你的版本库,那samba可能会让你失望啦,samba只是一个单纯的用来做一个临时共享文件的仓库,还达不到版本控制器的功能。



        如要使用版本控制器,推荐使用svn或者git,walfred曾经写过一篇关于git比较简单的文章,你可以参考 使用git建立远程仓库,让别人git clone下来



进入正题:



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



\\搭有samba的ubuntu机子的IP,enter之后你就一目了然了。



二。下面重点说下在ubuntu和ubuntu下共享文件。



        如果没有上述两点的羁绊,那我们就来认真学习如何在ubuntu和ubuntu下共享samba服务器。



方法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 



 smb:\> 



        这里有许多命令和ftp命令相似,如cd 、lcd、get、megt、put、mput等。通过这些命令,我们可以访问远程主机的共享资源。



方法2:使用mount进行挂载



        除了使用smbclient,还可以通过mount和smbcount挂载远程共享文件夹



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