以前都是在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