[轉貼] win7 連 samba
原文出處 : http://www.ubuntu-tw.org/modules/newbb/viewtopic.php?post_id=126178
首先,網路上查的到的中文資料 ---> 大部分都是垃圾,都沒有提到關鍵處,包括 wiki 那一篇....有些有用,不過沒有系統化,都是片段的。
------------------------------------
先說 win7 為啥無法連:
假設你的 samba 已經配置完畢
(假設 xp 已經可以連,但 win7 無法連)
1.開啟網路探索,如下圖:
控制台 - 網路和共用中心
開啟網路探索
開啟檔案及印表機共用
開啟共用
使用 128位元加密
開啟以密碼保護共用
允許 windows 管理家用群組連線
(全部都選 第一個/上面那個 就對了)
如果每次選了開啟網路探索,但是按確定套用後,設定又會跳掉,跳回未開啟,怎樣也開啟不了,怎麼辦?
是否有用過「windows7 優化大師」這一類的東西?
如果有,恭喜,重灌 win7 吧!XD
...囧rz
我就是卡在這裡,卡了好幾天,都沒辦法連
原因出在那啥鬼 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
解壓縮出 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
註:此中文化註解的 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 又是另一個主題了,這邊就不討論了,有興趣搜尋網路有很多教學...
ps.
本篇歡迎轉貼或放上 wiki,大家一起推廣 Ubuntu 吧 XD
樓上沒效 ~~ http://blog.the.tw/2009/12/windows-7-samba.html
有些使用較舊版samba架設的檔案分享功能,windows 7 (win7) 也許無法存取,
一直跳出要你輸入帳號密碼,即使輸入正確還是相同的結果。
因為驗證機制不相容才會有此種情形發生,那要如何解決呢?
以下教法只針對client端的作業系統去做修改:
1.家用進階版 以下 ( Home Premium , Home Basic , Starter )
修改regedit
在 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa] 下
新增 LmCompatibilityLevel 值1
註: LmCompatibilityLevel 數字的意義
0=Send LM & NTLM responses (never uses NTLMv2)
1=Send LM & NTLM - use NTLMv2 session security if negotiated
2=Send NTLM response only, use NTLMv2 if server supports it.
3=Send NTLMv2 response only, if DC accept LM, NTLM and NTLMv2 auth, use NTLMv2 security if supported.
4=Send NTLMv2 response only, if DC refuse LM, accept NTLM or NTLMv2 auth, use NTLMv2 security if supported.
5=Send NTLMv2 response only, if DC,refuse LM & NTLM and only accept NTLMv2 auth, use NTLMv2 security if supported.
2.專業版 以上 ( Professional , Enterprise , Ultimate )
開啟命令提示列,執行secpol.msc (安全性設定主控台)
Security Settings –> Local Policies –> Security Options
修改 Network security: LAN Manager authentication level 這Policy的設定
選擇此值:Send LM & NTLM - use NTLMv2 session security if negotiated。
按OK後,再試試是否可以存取samba分享的目錄
Send LM & NTLM - use NTLMv2 session security if negotiated: Clients use LM and NTLM authentication and use NTLMv2 session security if the server supports it; domain controllers accept LM, NTLM, and NTLMv2 authentication.
« [敗家] 新電腦 | Main | [手機] HTC diamond on Android 2.2 »