前言: 在windows 和linux的混合網絡 中,samba還是有很大用處的,本文用實驗的方法快速學習Samba。 [實驗項目] ①在linux上建立Samba 服務器 ,用類似FTP的客戶端smbclient訪問。 ②在linux上建立security=user的Samba服務器,用win2000的客戶端訪問。 ③在
前言: 在windows和linux的混合網絡中,samba還是有很大用處的,本文用實驗的方法快速學習Samba。
[實驗項目]
①在linux上建立Samba
服務器,用類似FTP的客戶端smbclient訪問。
②在linux上建立security=user的Samba服務器,用win2000的客戶端訪問。
③在linux上建立security=share的samba服務器,用win2000的客戶端訪問。
④在linux上掛載samba共享。
實驗一: 在linux上建立Samba服務器,用類似FTP的客戶端smbclient訪問。
[實驗要求]
1.兩台RH8.0的機器可以互相ping通。
2.機器1的IP:192.168.0.1
3.機器2的IP:192.168.0.2
[實驗步驟]
1.關掉兩台機的防火牆。
#service iptables stop
#chkconfig iptables off
2.在兩台機上安裝軟件包。
檢查samba,samba-common,samba-client包是否已安裝。
# rpm -q samba
# rpm -q samba-common
# rpm -q samba-client
根據結果,在安裝光盤裡找到沒有安裝的軟件包,開始安裝。
# rpm -ivh samba*.rpm
3.在機器1開啟smb服務,並查看共享了什麼內容。
# service smb start
# smbclient -L 192.168.0.1 -N
4.在機器1添加新用戶。
# useradd user1
# passwd user1
密碼:user1
# touch /home/user1/iAmUser1
5.在機器1創建smb帳戶文件文件:/etc/samba/smbpasswd
# touch /etc/samba/smbpasswd
# smbpasswd -a user1
密碼:user1
6.在機器1備份原配置文件:/etc/samba/smb.conf
# service smb restart
10.在機器2上看機器1的samba共享了什麼?
# smbclient -L 192.168.0.1 -N
11.在機器2訪問機器1的samba服務。
# smbclient //192.68.0.1/homes -U user1%user1
12.在機器2上成功訪問後,用help查看命令。
smb: \>help
注意:1) 用ls 看到文件iAmUser1嗎?
2) 比較和FTP的命令有何不同。
實驗二: 在linux上建立security=user的Samba服務器,用win2000的客戶端訪問。
[實驗要求]
1.一台RH8.0機,一台Win2k機,互相能ping通。
2.RH8.0機,IP:192.168.0.1
3.Win2k機,IP:192.168.0.2
[實驗步驟]
1.在實驗一的基礎上,修改/etc/samba/smb.conf
修改[global]段中:
workgroup = WORKGROUP1
----------------------------------------------------------------------
如果你對上述修改熟悉,跳過這段。
workgroup = WORKGROUP1為使linux和windows機在同一個工作組。
----------------------------------------------------------------------
注意:修改了smb.conf,必須運行:service smb restart
2.修改Win2k的工作組,為WORKGROUP1,若為域控制器,必須降為普通工作組,用
Administrator重啟登錄。
修改方法:“我的電腦”|“屬性”|“網絡標識”|“屬性”
3.在win2k機上,“網絡鄰居”|“整個網絡”|“全部內容”|“microsoft windows 網絡”“Workgroup1”,看到RH系統的機器了嗎?
4.輸入用戶名user1,密碼user1進入,可以新建,刪除文件嗎?
實驗三: 在linux上建立security=share的samba服務器,用win2000的客戶端訪問。
[實驗要求]
1.一台RH8.0機,一台Win2k機,互相能ping通。
2.RH8.0機,IP:192.168.0.1
3.Win2k機,IP:192.168.0.2
[實驗步驟]
1.在實驗二??獡s?? ??ゐ?!的基礎上,修改/etc/samba/smb.conf追加下面內容:
[public]
comment = public
path = /mnt
browsable = yes
public =yes
修改[global]段中:
security = share
----------------------------------------------------------------------
如果你對上述修改熟悉,跳過這段。
[public]定義了另一段,也可以為其他名稱。
path指出共享的目錄。
security采用share。
----------------------------------------------------------------------
注意:修改了smb.conf,必須運行:service smb restart
2.在win2k機上,用Administrator登錄,“網絡鄰居”|“整個網絡”|“全部內容”|“microsoft windows 網絡”| “Workgroup1”,看到RH系統的機器了嗎?
3.不用密碼就可以進入了,是嗎?你看到幾個共享目錄?可以寫入嗎?
4.在win2k機上新建一個帳戶:user1,密碼:user1。
5.在win2k機上注銷,切換用戶user1。
6.在win2k機上,“網絡鄰居”|“整個網絡”|“全部內容”|“microsoft windows 網絡”| “Workgroup1”,看到RH系統的機器了嗎?
7.不用密碼就可以進入了,是嗎?你看到幾個共享目錄?可以寫入嗎?
注意:1) 當你模仿[homes]段修改了[public]段的writable,create mode ,directory mode後,可以寫入嗎?
2) 你修改了RH8.0機的/mnt/讀寫權限為drwxrwxrwx時,情況怎麼樣呢?
實驗四: 在linux上掛載samba共享。
[實驗要求]
1.一台RH8.0機,一台Win2k機,互相能ping通。
2.RH8.0機,IP:192.168.0.1
3.Win2k機,IP:192.168.0.2
[實驗步驟]
1.在win2k機上,共享C:2.在RH8.0機上運行:
# smbclient //192.168.0.2/C -U win2k的當前登陸用戶名%密碼
注意:能登陸嗎?
3.掛載共享盤:
# mount -t smbfs -o username=win2k的當前登陸名%密碼
//192.168.0.2/C /mnt/cdrom
注意:1)“username=win2k的當前登陸名%密碼” 之間不要有空格。
2) 也可用:# smbmount //192.168.0.2/C /mnt/cdrom -o username=username=win2k的當前登陸名%密碼
3) 也可用:# smbmount //192.168.0.2/C /mnt/cdrom -U win2k的當前登陸用戶名 接著輸入密碼便可。
4) 實際,兩台都是
Linux系統,一台作samba服務器,另一台作客戶機。如實驗一的情況下,在機器2上:
# mount -t smbfs -o username=user1%user1
//192.168.0.1/homes /mnt/cdrom
也可實現共享,不過沒有必要,linux之間,可以用nfs實現共享,而且速度比
Samba快。
[實驗小結] 本文只是簡單快速的學習Sabma,如果想深入了解,需要結合manpage與原/etc/samba/smb.conf(已備份為smb.conf.BAK)仔細研究,另外,/usr/share/doc/samba提供了專業文檔可以學習。不過,通過本文的學習,已基本滿足普通的工作需要。至於security為domain和server形式,我也沒有研究,所以,沒有涉及。