一,samba概述
Samba是在Linux和UNIX系統上實現SMB協議的一個免費軟件,由服務器及客戶端程序構成。
samba是一個工具套件,在Unix上實現SMB(Server Message Block)協議,或者稱之爲NETBIOS/LanManager協議。SMB協議通常是被windows系列用來實現磁盤和打印機共享。需要注意的是,NetBIOS是基於以太網廣播機制的,沒有透明網橋是不能跨越網段的,也許用WINS和LMHOSTS可以,但我沒試過。我感覺samba是把SMB綁定到TCP/IP上實現的,samba只在IP子網內廣播(很多時候我不得不指定IP地址:-()。所以在win95上與samba通訊既要裝NetBEUI協議,也要裝tcp/ip協議。
二,samba的應用功能
SAMBA 最初發展的主要目就是要用來溝通Windows 與 Unix Like 這兩個不同的作業平臺。最大的好處就是不必讓同樣的一份數據放置在不同的地方,搞到後來都不曉得哪一份資料是最新的!而且也可以透過這樣的一個檔案系統上Linux 與 Windows 的檔案傳輸變得更爲簡單!也就是說,可以透過『網絡上的芳鄰』來進行Linux 與 Windows 檔案的傳輸。那麼 SAMBA 可以進行哪些動作呢?
①分享檔案與打印機服務;
②提供使用者登入 SAMBA 主機時的身份認證,以提供不同身份者的個別數據;
③進行 Windows 網絡上的主機名稱解析 (NetBIOS name)
④進行裝置的分享 ( 例如 Zip, CDROM... )
二,案例
[root@mail ~]# mkdir /mnt/cdrom/
[root@mail ~]# mount /dev/cdrom /mnt/cdrom/
[root@mail ~]# cd /mnt/cdrom/Server/
[root@mail Server]# yum install samba-3.0.33-3.14.el5.i386.rpm 裝載samba
[root@mail Server]# service smb start
[root@mail Server]# cp /etc/samba/smb.conf /etc/samba/smb.conf.bak 這一步做備份
[root@mail Server]# vim /etc/samba/smb.conf實現基本的訪問控制
[root@mail ~]# mkdir /abc /zhangsan /lisi
[root@mail ~]# useradd zhangsan
[root@mail ~]# useradd lisi
[root@mail ~]# chown zhangsan.zhangsan /zhangsan/
[root@mail ~]# chown lisi.lisi /lisi/
[root@mail ~]# cd /zhangsan/
[root@mail zhangsan]# touch f1.zhangsan
[root@mail zhangsan]# cd ..
[root@mail /]# cd li
lib/ lisi/
[root@mail /]# cd lisi/
[root@mail lisi]# touch f1.lisi
[root@mail lisi]# smbpasswd -a zhangsan
New SMB password:
Retype new SMB password:
Added user zhangsan.
[root@mail lisi]# smbpasswd -a lisi
New SMB password:
Retype new SMB password:
Added user lisi.
[root@mail lisi]# service smb restart
windows測試
[root@station ~]# smbclient -L //192.168.220.100 -U zhangsan
linux客戶端查看方式
[root@station ~]# smbclient //192.168.220.100/smbzs -U zhangsan
Password:
Domain=[MAIL] OS=[Unix] Server=[Samba 3.0.33-3.14.el5]
smb: \>
smb: \> !dir
anaconda-ks.cfg install.log.syslog
httpd-2.2.19.tar.bz2 mysql-5.5.15-linux2.6-i686.tar.gz
install.log php-5.3.7.tar.bz2
smb: \>
smb: \>
smb: \> put install.log
smb: \> mget f1*
Get file f1.zhangsan? y
getting file \f1.zhangsan of size 0 as f1.zhangsan (0.0 kb/s) (average 0.0 kb/s)
smb: \> !dir
anaconda-ks.cfg install.log.syslog
f1.zhangsan mysql-5.5.15-linux2.6-i686.tar.gz
httpd-2.2.19.tar.bz2 php-5.3.7.tar.bz2
install.log
掛載
[root@station ~]# mkdir /mnt/smb
[root@station ~]# mount -t cifs //192.168.220.100/smb -o
username=zhangsan%123
[root@station ~]# vim /etc/fstab
[root@station ~]# cd /etc/samba/
[root@station samba]# vim f1
[root@station samba]# mount -a
[root@station samba]# mount
實現自動掛載
服務器
[root@mail public]# service smb restart
客戶機 linux
[root@station ~]# vim /etc/auto.master
[root@station ~]# cp -p /etc/auto.misc /etc/auto.smb
[root@station ~]# vim /etc/auto.smb
[root@station ~]# service autofs restart
測試
[root@station ~]# cd /mnt/nfs/
[root@station nfs]# cd server1
[root@station server1]# mount
[root@station server1]# cd 離開後40秒掛斷
[root@station ~]# mount
三,NFS概述
NFS簡介
NFS是Network File System的簡寫,即網絡文件系統。
網絡文件系統是FreeBSD支持的文件系統中的一種,也被稱爲NFS. NFS允許一個系統在網絡上與他人共享目錄和文件。通過使用NFS,用戶和程序可以像訪問本地文件一樣訪問遠端系統上的文件。
NFS好處
以下是NFS最顯而易見的好處:
1.本地工作站使用更少的磁盤空間,因爲通常的數據可以存放在一臺機器上而且可以通過網絡訪問到。
2.用戶不必在每個網絡上機器裏頭都有一個home目錄。Home目錄 可以被放在NFS服務器上並且在網絡上處處可用。
3.諸如軟驅,CDROM,和 Zip(是指一種高儲存密度的磁盤驅動器與磁盤)之類的存儲設備可以在網絡上面被別的機器使用。這可以減少整個網絡上的可移動介質設備的數量。
NFS組成 NFS至少有兩個主要部分:一臺服務器和一臺(或者更多)客戶機。客戶機遠程訪問存放在服務器上的數據。爲了正常工作,一些進程需要被配置並運行。
實際應用 NFS 有很多實際應用。下面是比較常見的一些:
1.多個機器共享一臺CDROM或者其他設備。這對於在多臺機器中安裝軟件來說更加便宜跟方便。
2.在大型網絡中,配置一臺中心 NFS 服務器用來放置所有用戶的home目錄可能會帶來便利。這些目錄能被輸出到網絡以便用戶不管在哪臺工作站上登錄,總能得到相同的home目錄。
3.幾臺機器可以有通用的/usr/ports/distfiles 目錄。這樣的話,當您需要在幾臺機器上安裝port時,您可以無需在每臺設備上下載而快速訪問源碼。
四,案例
兩臺linux,一臺客戶機,一臺服務器
服務器
[root@mail ~]# mkdir /public
[root@mail ~]# vim /etc/exports 共享清單
[root@mail ~]# service nfs start
[root@mail ~]# chkconfig nfs on
[root@mail ~]# exportfs -rv導出共享資源
[root@mail ~]# cd /public/
[root@mail public]# touch p1
客戶機
[root@station ~]# showmount -e 192.168.220.100查看能否訪問
建立掛載點進行查看
[root@station ~]# mkdir /mnt/nfs
[root@station ~]# mount 192.168.220.100:/public /mnt/nfs
[root@station ~]# cd /mnt/nfs/
[root@station nfs]# ll
實現自動掛載(開機掛載)
[root@station nfs]# vim /etc/fstab
[root@station ~]# umount /mnt/nfs/
[root@station ~]# mount -a
[root@station ~]# mount
空閒掛掉
[root@station ~]# vim /etc/auto.master
[root@station ~]# cp -p /etc/auto.misc /etc/auto.nfs
[root@station ~]# vim /etc/auto.nfs
[root@station ~]# service autofs restart
測試
[root@station ~]# mount
[root@station ~]# cd /mnt/nfs/
[root@station nfs]# cd server1
[root@station server1]# mount
[root@station server1]# cd 離開後40秒掛斷
[root@station ~]# mount
服務器
寫入(220網段有寫入權限)
[root@mail public]# mkdir /jx
[root@mail public]# vim /etc/exports
[root@mail public]# exportfs -rv
[root@mail public]# chmod o+wt /jx
客戶機
[root@station ~]# mkdir /mnt/jx
[root@station ~]# mount 192.168.220.100:/jx /mnt/jx/
[root@station ~]# mount
測試
[root@station ~]# cd /mnt/jx/
[root@station jx]# ll
total 0
[root@station jx]# touch f1
[root@station jx]# ll
total 0
-rw-r--r-- 1 nfsnobody nfsnobody 0 Sep 11 06:26 f1