天天看點

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隻是一個單純的用來做一個臨時共享檔案的倉庫,還達不到版本控制器的功能。

一、在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

繼續閱讀