2007年5月11日 星期五

SMB(SAMBA)SERVER-1

SAMBA這東西是什麼呢?主要是針對UNIX-LIKE和WINDOWS之間,提供一個溝通的平台,讓這兩個平台之間的資料能夠交換

(其實UNIX上有NFS,WINDOWS上有SMB/CIFS可做資料分享)

為什麼筆者會針對這個東西來寫呢?因為M$系列的OS都有一個共通的問題,那就是最多同時十個連線到網芳的連線能力,這一點對一般人來說應該不成問題(除非你家有十台以上的電腦要連線),但是在公司或是多人環境下就相當不夠用了(目前聽說M$只有2K3 SERVER沒有連線數的限制)

筆者只是指針對設定檔和實際應用來說明,這裡主要是資料分享的部份,其實它還能做PDC(網域身份認證的主機)、印表機伺服器等

設定檔如下:/etc/samba/smb.conf (Fedora 6)
--------------------------------
[global]

workgroup = SERVER(M$中的工作群組)
server string = Samba Server(分享伺服器的敘述)
security = user(認證方式,需利用smbpasswd新增)
hosts allow = 192.168.11. 127.(允許192.168.11.X及127.X.X.X使用)
...(其他維持預設值)

[homes]
comment = Home Directories(家目錄說明)
browseable = no
(不可瀏覽)
writable = yes(可寫入)
valid users = %S(登入後資料夾名稱改為登入者的使用者名)

[printers]
(...保持預設值,與印表機伺服器有關)

[share](分享的名稱)
path = /home/share(實際分享的資料夾路徑)

comment = share(資料夾分享的敘述)
writable = yes(可寫入)
public = no(不公開)
printable = no(不可進行列印)
write list = @test(可寫入的使用者群組為test)
--------------------------------
設定檔的部份還有很多細部的資料,可參考設定檔中的說明

不過smb server中的使用者必須要在linux中有其帳號才可以,也就是說在/etc/passwd(shadow)和/etc/group(gshadow)中找的到才可以使用

新增資料夾
#mkdir /home/share(建立資料夾)
#chown root.test
/home/share(更改資料夾的擁有者root與群組test)
#chmod 770 /home/share(更改資料夾屬性,擁有和同群組者具有完整權限)

#useradd 123
(新增使用者123)
#passwd 123
(設定123的密碼)
Changing password for user 123.
New UNIX password:(這裡打密碼)
...(密碼太短會有所警告,但是以root建立則完全接受)
Retype new UNIX password:
(再輸入一次密碼)
passwd: all authentication tokens updated successfully.

新增群組
#groupadd test

增加使用者123到test的群組(原本為123的同名群組)
#gpasswd -a 123 test

#smbpasswd -a 123(把123這個使用者加入smb的使用者中)
New SMB password:
(這裡打密碼)
Retype new SMB password:(密碼再一次)

可利用smbclient來測試
#smbclient -L //127.0.0.1 -U 123
Password:(打入密碼)
會顯示相關分享的資料,代表成功了

--------------------------------
Domain=[xxx] OS=[Unix] Server=[Samba 3.0.24-4.fc6]

Sharename Type Comment
---------  ----   -------
IPC$    IPC    IPC Service (Samba Server)(給M$系統看的)
share    Disk    share
Domain=[XXX] OS=[Unix] Server=[Samba 3.0.24-4.fc6]

Server      Comment
---------       -------

Workgroup    Master
---------     -------
SERVER     XXX (與domain相同)
--------------------------------


這樣子就可以把LINUX中的資料夾分享出來使用了,方便吧!