*****************************
*****************************
Linux中Samba詳細安裝
*****************************
*****************************
為了實現Windows主機與Linux伺服器之間的資源共用,Linux作業系統提供了Samba服務,Samba服務為兩種不同的作業系統架起了一座橋樑,使Linux系統和Windows系統之間能夠實現互相通訊,為廣泛的Linux愛好者提供了極大方便。本文簡要介紹如何在Linux作業系統上搭建Samba伺服器和簡單配置。
1、服務查詢
預設情況下,Linux系統在預設安裝中已經安裝了Samba服務包的一部分 ,為了對整個過程有一個完整的瞭解,在此先將這部分卸載掉。使用命令
rpm -qa | grep samba ,預設情況下可以查詢到兩個已經存在的包:
samba-client-3.0.33-3.7.el5
samba-common-3.0.33-3.7.el5
2、卸載Samba
用rpm -e 將兩個包卸載掉。對於samba-common-3.0.33-3.7.el5,因為與其它rpm包之間存在依賴關係,所以必須加參數-f和--nodeps,-f是指強制,--nodeps是指不檢查依賴關係,具體完整命令為:
rpm -e samba-common-3.0.33-3.7.el5 -f --nodeps
rpm -e samba-client-3.0.33-3.7.el5 -f --nodeps
3、安裝Samba
用以下命令安裝:
rpm -ivh samba-3.0.33-3.29.el5_6.2.i386.rpm -f --nodeps
rpm -ivh samba-client-3.0.33-3.29.el5_6.2.i386.rpm -f --nodeps
rpm -ivh samba-common-3.0.33-3.29.el5_6.2.i386.rpm -f --nodeps
安裝完成後,使用命令rpm -qa | grep samba進行查詢,發現搭建samba伺服器所依賴的所有伺服器都已經安裝好了即可。
4、配置smb.conf檔案
Samba的設定檔一般就放在/etc/samba目錄中,主設定檔名為smb.conf,檔案中記錄著大量的規則和共用資訊,所以是samba服務非常重要的核心設定檔,完成samba伺服器搭建的大部分主要配置都在該檔案中進行。
Samba伺服器的工作原理是:用戶端向Samba伺服器發起請求,請求訪問共用目錄,Samba伺服器接收請求,查詢smb.conf檔案,查看共用目錄是否存在,以及來訪者的存取權限,如果來訪者具有相應的許可權,則允許用戶端訪問,最後將訪問過程中系統的資訊以及採集的使用者訪問行為資訊存放在記錄檔中。
第一步:修改設定檔
首先備份一下samba的設定檔
cd /etc/samba
mv smb.conf smb.confbak
然後重新建立一個smb.conf檔案
touch smb.conf
然後我們把這段寫入smb.conf中
[global]
workgroup = LinuxSir
netbios name = LinuxSir05
server string = Linux Samba Server TestServer
security = share
[linuxsir]
path = /opt/linuxsir
writeable = yes
browseable = yes
guest ok = yes
註解:
[global]這段是全域配置,是必段寫的。其中有如下的幾行;
workgroup 就是Windows中顯示的工作群組;在這裡我設定的是LINUXSIR (用大寫);
netbios name 就是在Windows中顯示出來的電腦名稱;
server string 就是Samba伺服器說明,可以自己來定義;這個不是什麼重要的;
security 這是驗證和登入方式,這裡我們用了share ;驗證方式有好多種,這是其中一種;另外一種常用的是user的驗證方式;如果用share呢,就是不用設定使用者和密碼了;
[linuxsir] 這個在Windows中顯示出來是共用的目錄;
path = 可以設定要共用的目錄放在哪裡;
writeable 是否可寫,這裡我設定為可寫;
browseable 是否可以瀏覽,可以;可以瀏覽意味著,我們在工作群組下能看到共用資料夾。如果您不想顯示出來,那就設定為 browseable=no
guest ok 匿名使用者以guest身份是登入;
第二步:建立相應目錄並授權;
[root@localhost ~]# mkdir -p /opt/linuxsir
[root@localhost ~]# id nobody
uid=99(nobody) gid=99(nobody) groups=99(nobody)
[root@localhost ~]# chown -R nobody:nobody /opt/linuxsir
注釋:
關於授權nobody,我們先用id命令查看了nobody使用者的資訊,發現他的使用者組也是nobody,我們要以這個為準。有些系統nobody使用者組並非是nobody ;
第三步:啟動smbd和nmbd伺服器;
[root@localhost ~]# smbd
[root@localhost ~]# nmbd