安裝和啓動Samba

Samba 軟件安裝在 Linux 一端。目前主要由一個 20 人左右的 Samba 團隊負責維護及開發,用戶可以在 http://www.samba.org/ 站點獲得 Samba 的詳細信息。同時,也可以在網頁上下載 Samba 的最新版本  

4.2.1 安裝 Samba 服務器  

如果用戶在安裝 Linux 時已經安裝了 Samba ,就無需再安裝了可以通過下列命令確定是否已經安裝了 Samba  

[root@ smb_server  root]# rpm  –qa | grep  samba

samba-commom -2.2.7a-7.9.0

samba-2.2.7a-7.9.0

samba-client-2.2.7a-7.9.0

redhat-config-samba-1.0.4-1

samba-swat-2.2.7a-7.9.0

若出現這 5 個軟件包,則表示已經安裝了 Samba ,否則必須安裝 Samba  

[root@smb_server  root]# mount  /dev/cdrom  /mnt/cdrom  

將光盤掛載到 /mnt/cdrom 目錄 ]

[root@smb_server  root]# cd  /mnt/cdrom/RedHat/RPMS 

切換到放置 rpm 文件的目錄  

[root@smb_server  root]# rpm  -ivh samba-commom -2.2.7a-7.9.0i386.rpm

這是 Samba 必備的程序,必須安裝  

[root@smb_server  root]# rpm  -ivh samba-2.2.7a-7.9.0.i386.rpm

安裝 Samba 服務器程序,可以使我 Windows 主機訪問 Samba 服務器共享的資源。  

如果需要使 Linux 主機訪問 Windows 主機上的共享資源,則還應該安裝 Samba 客戶端程序。  

[root@smb_server  root]# rpm  -ivh samba-client-2.2.7a-7.9.0.i386.rpm

4.2.2 Samba 的全局參數的配置  

Samba 最主要的配置文件是 /etc/samba/smb.conf,其中有很多選項可以設置,但作爲初學者,只需要掌握其中一小部分選項的設置就可以配置所需要的Samba服務器 了。在瞭解基本配置的基礎上,就能很快架設一個基本的Samba服務器。在基本配置文件中,也只用到其中一小部分命令選項。

全局參數的配置在[global]字段中,沒有出現(或被註釋)的參數,Samba 採用的是默認配置。

# This is the main Samba configuration file. You should read the

# smb.conf(5) manual page in order to understand the options listed

# here. Samba has a huge number of configurable options (perhaps too

# many!) most of which are not shown in this example

#================== Global Settings ============================

[global]

# 這是配置文件中關於全局參數的設置部分。  

…………

   workgroup = SMBGROUP

# 這是設置服務器所要加入的工作組的名稱,會在 Windows 的“網上鄰居”中能看到 MYGROUP 工作組,可以在此設置所需要的工作組的名稱。  

netbios name=smb-server

# 設置出現在“網上鄰居”中的主機名。默認情況下,則使用真正的主機名。  

   server string = Samba Server

# 這是設置服務器主機的說明信息,當在 Windows 的“網上鄰居”中打開 Samba 上設置的工作組時,在 Windows 的資源管理器窗口,會列出“名稱”和“備註”欄,其中“名稱”欄會顯示出 Samba 服務器的 NetBios 名稱,而“備註”欄則顯示出此處設置的“ Samba Server ”。當然,可以修改默認的“ Sambe Server” ,使用自己的描述信息。  

 hosts allow = 192.168.1. 127

# 這裏是設置允許什麼樣的 IP 地址的主機訪問 Samba 服務器。默認的情況下, hosts allow 選項被註釋,表示允許所有 IP 地址的主機訪問。  

  guest account = pcguest

# 設置當訪問那些被設置了“ guest ok=yes ”參數的資源時所要使用的帳號名。默認的帳號爲 ”nobody” ,如果不想用默認的值,則應該去掉註釋用的分號,用你想要的帳號(如 pcguest zhangsan  ),然後,你必需將這一新帳號加入到 /etc/passwd 文件中去。  

client  code  page=950

設置客戶端訪問 Samba 服務器時所使用的字符編碼表( code page ),默認值爲 850 ,如果 Samba 服務器要使用年中文名稱來來命名共享的資源,要將此值改爲 950 

   log file = /var/log/samba/%m.log

# 這一選項要求 Samba 服務器爲每一個連接的機器使用一個單獨的日誌文件,指定文件的位置,名稱。 Samba 會自動將 %m 轉換成連接主機的 NetBios 名。  

   max log size = 0

指定日誌文件的最大容量 ( KB 爲單位 ) ,設置爲 0 ,表示沒有限制。默認值爲 5000  

max disk size =1000

# 設置能夠共享的最大磁盤空間,單位爲 MB ,默認值爲 0 ,表示不作任何限制。  

max open file =100

# 設置同一客戶端最多能打開文件的數目,默認值爲 10000 個。  

   security = user

# 設置 Samba 服務器的安全等級。默認情況下,使用 user 等級。  

#Samba 服務器一共有四種安全等級。  

share: 使用此等級,用戶不需要帳號及密碼可以登陸 Samba 服務器。  

user:  使用此等級,由提供服務的 Samba 服務器檢查用戶帳號及密碼。  

server: 使用此等級,檢查帳號及密碼的工作可指定另一臺 Samba 服務器負責。

domain: 使用此等級,需要指定一臺 Windows NT/2000/XP 服務器(通常爲域控制器),以驗證用戶輸入的帳號及密碼。  

;   password server = <NT-Server-Name>

# 如果安全等級爲“ server ”或“ domain ”,則使用此選項指定要驗證密碼的主機名。  

  password level = 8

  username level = 8

# 設置當驗證用戶口令和帳號時最多允許幾個大小寫字不同。默認值爲 0  

   encrypt passwords = yes

# 設置當 Samba 客戶端將帳號及密碼傳送到服務器端時,是否採取密碼加密的方式。客戶的操作系統如果是 Windows 95 OSR2 NT SP3 以後的版本,應該將此選項的值設爲 yes, 默認值爲 no  

   smb passwd file = /etc/samba/smbpasswd

# 設置在 Samba 服務器上存放加密的密碼文件的位置(注意: Samba 服務器與 Linux 採用不同的密碼文件)。  

 

4.2.3 設置 Samba 密碼文件  

smb.conf 文件中有“ smb password file =/ect/samba/smbpassword ”一行設置項,現在就要創建該設置項所指定的 /ect/samba/smbpassword 密碼文件(若是用 Windows NT/2000Server 來驗證密碼,則可以跳過此段內容)。以 root 帳號登錄,然後按下列步驟進行:  

[root@smb_server  root]#cat /etc/passwd | mksmbpasswd.sh  >  /etc/samba/smbpasswd

[root@ smb_server  root]# chmod  500  /etc/samba

[root@ smb_server  root]# chmod  600  /etc/samba/smbpasswd

 

此步驟是將未加密的 /etc/passwd 文件轉換成加密的 smbpasswd 文件。基於保密的原則,將 /etc/samba 目錄的權限設爲 500 ,該文件的權限設爲 600 ,以避免他人取得密碼文件。  

完成之後再利用 smbpasswd 命令,設置 /ect/samba/smbpassword 文件中每個帳號所使用的密碼。(下面以 fred 爲例。注意:此處設置的密碼是 fred 要訪問 Samba 服務器的密碼,並非登錄 Linux 主機的密碼 , 默認設置 ”UNIX password  sync=YES”, 則登錄 Linux 主機的密碼將改變 , Samba 服務器的密碼一致 , 如果希望這兩個密碼不一致 , 則設置 ”UNIX password  sync=NO”  

[root@smb_server  root]# smbpasswd fred

New SMB password: 此處輸入密碼  

Retype SMB password: 重新輸入密碼  

Password  changed  for user  fred  看到這一句表示密碼設置成功。  

 

4.2.4 啓動 Samba 服務器  

可以執行下面的命令來啓動 Samba 服務器:  

[root@ smb_server  Root]#   service smb start

當能看到下面的顯示,就表示啓動成功。  

Starting  SMB  service          [ 確定 ]

Starting  NMB  service          [ 確定 ]

 

如果要暫停或重新啓動 Samba 服務器,只要將上面命令中的 start 改爲 stop restat 就可以了。  

也可以讓系統在每次開機時就啓動 Samba 服務器。執行 ntsysv 命令,進入 Service 設置畫面,選擇 smb 選項,單擊確定即可。  

4.2.5 測試 Samba 配置文件  

設置好 smb.conf 文件之後,執行下面的命令測試 smb.conf 的設置語法是否正確。  

[root@smb_server  root]#  testparm

Load smb config files from /etc/samba/smb.conf

Processing section "[homes]"

Processing section "[printers]"

Processing section "[tmp]"

Processing section "[public]"

Processing section "[fredsdir]"

Loaded services file OK.

Press enter to see a dump of your service definitions

表示正確。  

檢查正常後,一定要記得執行  

[root@smb_server  root]#   service smb  restart

命令,重新啓動 Samba 服務器。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章