精選

2010年5月13日 星期四

win7 無法連 samba 的問題

051722 修正錯誤的地方,移除無效圖片

121720不再更新

011812加入
在 Windows 下檢視 Samba 資料夾的方法為:
    開始 / 執行 / 「\\ip」
在 Ubuntu 下在Firefox檔案輸入:(051722更正)
    smb://ip

051410取自
http://www.ubuntu-tw.org/modules/newbb/viewtopic.php?post_id=126178#forumpost126178
11,12樓
win7 無法連 samba 的問題,我也遇過,還困擾我好幾天
一點心得,提供做參考:

首先,網路上查的到的中文資料 ---> 大部分都是垃圾,都沒有提到關鍵處,包括 wiki 那一篇....有些有用,不過沒有系統化,都是片段的。
------------------------------------
先 說 win7 為啥無法連:
假設你的 samba 已經配置完畢(假設 xp 已經可以連,但 win7 無法連)

1. 開啟網路探索,如下圖:※以下原圖已失連 060615)

控制台 - 網路和共用中心
開 啟網路探索
開啟檔案及印表機共用
開啟共用
使用 128位元加密
開啟以密碼保護共用
允許 windows 管理家用群組連線
(全部都選 第一個/上面那個 就對了)

如果每次選了開啟網路探索,但是按確定套用後,設定又會跳掉,跳 回未開啟,怎樣也開啟不了,怎麼辦?

是否有用過「windows7 優化大師」這一類的東西?如果有,恭喜,重 灌 win7 吧!

我就是卡在這裡,卡了好幾天,都沒辦法連
原因出在那啥鬼 window7 優化大師,不知道把什麼網路功能給閹了,導致怎樣也無法開啟網路探索。

開啟網路探索後,應該就可以連了,如果還是不行,繼 續:

2.win7 使用了一種新的加密編碼,舊版的 samba 無法相容

基本上 Ubuntu 使用的是新版 samba,這一點不用理會。如真不能連,參考看看:

執行..
輸入:gpedit.msc
叫出「本機安全性原則」

電腦設定 - widnows 設定 - 安全性設定 - 本機原則 - 安全性選項

找:網路安全性 Lan Manager 驗證等級

修改 值為以下:
優先使用 LV 和 NTLM (傳統編碼)
如有交涉,使用 NTLMv2 (win7 新的編碼)

這 樣子,win7 應該就可以連 smaba 了。

再 來說說 Ubuntu server 端

1.
Ubuntu 10.04 LTS
將找不到 /etc/init.d/samba 這個啟動腳本

原因請看英文版論壇:
http://ubuntuforums.org/showthread.php?p=9209320#post9209320

大 意就是說:"upstart" 取代了舊有的啟動方式

10.04 版,新的啟動方式只能這樣:
sudo service smbd start
sudo service smbd stop
sudo service smbd restart

註:Ubuntu 原先的腳本名稱 samba 被改名成 smbd

2.
確認安裝 smaba
sudo apt-get install samba smbfs

sudo aptitude install samba smbfs

(建 議用 aptitude 取代 apt-get,聽說對系統比較好,debian 原廠也是這樣建議)

3.
samba 的主要設定檔在 /etc/samba/smb.conf

除非你熟 samba,或英文一流,否則不可能看的懂原始版的 smb.conf ....

這邊提供小弟自己中文化註解的 smb.conf,有興趣請下載參考:
http://www.box.net/shared/jcuc49r2j8 (051722已失效連結)

解 壓縮出 smb.conf,直接蓋掉 /etc/samba/smb.conf 即可(需 sudo/root 權限)

記得修改檔案權限 和擁有者:
sudo chmod 644 /etc/samba/smb.conf
sudo chown root:root /etc/samba/smb.conf

基本上就是全中文化了,再看不懂也沒辦法了
如真看不懂,建議先花個30分鐘去看 一下鳥哥的教學網站:
http://linux.vbird.org/linux_server/0370samba.php (051722已失效連結)
註: 此中文化註解的 smb.conf 沒有開放任何目錄,使用前必須設定。
開放的目錄,需為實際存在的目錄。
設定 完畢後,重新啟動 smbd 才會生效
sudo service smbd restart

4.
一般使 用 samba,都會用 user 認證層級
也就是連線必須打帳號/密碼(windows 那邊可以記憶)
但是 samba 的帳號密碼檔,和 Linux 系統自帶的,並無關係,是獨立的帳號密碼檔
加入新的使用者到 smaba 帳密檔:
sudo smbpasswd -a [使用者名稱]
設定他的 samba 密碼:
sudo smbpasswd [使用者名稱]
但 是這樣一個個加會很煩,所以一般的作法是直接同步 Linux 的帳密檔
直接拿 Linux 現有的帳密,來當 samba 的帳密
Ubuntu 10.04 server 版,在安裝的時候就可以選這個功能
其它桌上版,或安裝沒選,事後怎麼裝,這我就不清楚了
請搜尋關鍵字找教學 看看: samba linux 同步
不過有一個方法也能快速裝上這個功能,就是安裝 webmin
webmin 裡頭有這個功能可以打勾
此外 webmin 的 web 圖形管理界面,用來管理用戶、密碼,相當直覺好用
webmin 又是另一個主題了,這邊就不討論了,有興趣搜尋網路有很多教學...

另外 建 samba server 也是方法之一
但是 其連接的簡單性 並沒有 ip/tcp
那麼好用.

1 則留言:

Cash 提到...

感謝您的文章, 幫我解決了問題. 這篇應該是網路上解法最全的.