Samba主要的目的就是用來使Linux的機器跟M$的機器能夠互相交換資料,在Samba出現之前,M$的機器要跟Linux的機器交換資料是滿困難的事情。當Linux啟動了Samba,M$的機器要存取Linux的資料將跟使用網芳一樣簡單。
Samba的套件
同樣的,使用 rpm -qa |grep samba,來看看有沒有安裝samba
samba-client-3.0.33-0.fc8=================>samba的用戶端套件
system-config-samba-1.2.58-1.fc8==========>samba的圖形介面
samba-common-3.0.33-0.fc8=================>這個套件則主要提供了 SAMBA 的主要設定檔 (smb.conf) 、 smb.conf 語法檢驗的測試程式 (testparm)
samba-3.0.33-0.fc8========================>SAMBA 的主要 daemon 檔案 (smbd 及 nmbd)、 SAMBA 的文件檔 (document)、以及其他與 SAMBA 相關的 logrotate 設定檔及開機預設選項檔案等
啟動samba後會有兩個daemon,smbd與nmbd
除了圖形介面的套件可有可無之外,其它三個都需要安裝!!
相關檔案
/etc/samba 一般安裝完samba後,在/etc/下都會有samba的專用目錄
/etc/smb.conf 主要的設定檔案,samba的運作方式都在此設定,包括分享方式,群組名稱,分享目錄,各目錄權限等等
/etc/samba/lmhosts 有點像是/etc/hosts的功能,不過他對硬的名稱是NetBIOS name,不過目前Samba的功能越來越強大,啟動Samba就能自己抓道相對應的NetBIOS name跟IP,所以這個檔案就不那麼重要。
/etc/samba/smbpasswd 預設不存在,這是SAMBA預設的使用者密碼表,當samba設定較為嚴格時才會用的到他,當然你也可以指定把密碼表放在別的檔案,這個只是預設的。需要注意的是,這個檔案因為包含了使用者的密碼, 當然權限方面要較為注意啦!這個檔案的擁有者需要是 root ,且權限設定為 600 才行喔!
/etc/samba/smbusers:
由於 Windows 與 Unix-like 在管理員與訪客的帳號名稱不一致,分別為 administrator 及 root, 為了對應這兩者之間的帳號關係,可以使用這個檔案來設定。不過這個檔案的使用必須要經由 smb.conf 內的『 username map 』設定項目來啟動才行。
相關指令
testparm 當你編輯完smb.conf後,可以使用這個指令來檢查看看有沒有錯誤的地方
smbatatus 檢視目前samba的狀態
smbpasswd 一看就知道跟密碼有關,當samba設定的較為嚴格時,使用這個指令來設定user密碼
smbclient 用來檢查samba是否有設定正確,就像是在windows上用網芳檢測一樣
smbtree 列出附近有哪些可用的電腦資源
smb.conf
這個是主要的設定檔,這個檔案裡的#或;都代表註解。打開smb.conf,如果你把他印出來的話,會比較容易閱讀,你會發現大致分為兩個大部份,第一大部分:
=========Global Settings=========== 由此開始,到第二大部份 =========Share Definitions===========,讓我們慢慢看來~~
Global Settings:顧名思義就是全域設定,裡面又分了幾個小部分:
Network Related Options:網路相關設定,像是網域群組、主機描述、允許或拒絕那些IP、介面的連線等等
workgroup = MYGROUP 這就是用來設定你的群組名稱
server string = Samba Server Version %v 用來設定主機描述
Logging Options:登入設定,是否要記錄log,log要存到哪裡呢?
log file = /var/log/samba/log.%m log file存放的位置
max log size = 50 檔案大小
Standalone Server Options:這裡可以設定samba的安全設定,像是登入權限等等
security = user
這個就是設定權限,user:使用 SAMBA 本身的密碼資料庫,密碼資料庫與底下的 smb passwd file 有關
share:分享的資料不需要密碼即可分享
server:使用外部主機的密碼,亦即 SAMBA 是用戶端之意,如果設定這個項目, 你還得要提供『password server = IP』的設定值才行;
passdb backend = tdbsam 密碼檔案的位址, 像是這樣tdbsam:/etc/samba/private/passdb.tdb
Domain Member Options:網域成員設定,要使用設定,security必須設為domain。
略
Domain Controller Options:網域控制選項
略
Browser Control Options:瀏覽控制選項
Name Resolution:
Printing Options:
Filesystem Options:
Share Definitions:分享設定,將想要與windows主機分享的目錄設定在這邊,每一個項目會以 [dir] 開頭,這裡面的文字,就是windows所看到的目錄名稱,下面接著這個項目的相關設定:
[samba]
comment = NB
path = /samba
public = yes
writable = yes
相關的設定參數:
comment:這個資料夾的註解
path:分享目錄的路徑
read only:是否唯讀?
public:是否公開
writable:可寫入
write list:可寫入的user
read list:可讀取的user
valid users:有權使用的user
invalid users:無權使用的user
guests ok:guest是否可以使用
這樣對照上面來看應該就很清楚了,由於samba的功能很強大,支援的參數非常的多,在這僅列出一些較常使用到的,更詳細的設定請使用 man smb.conf。
部分內容參考鳥哥的Linux私房菜
- Feb 18 Wed 2009 15:59
[IT][Linux][Server] Samba-Linux與Windows交換檔案的伺服器
close
全站熱搜
留言列表
發表留言