|
作者:許亮 奧林巴斯(深圳)工業(yè)有限公司 | SAP開發(fā)工程師/SAP Basis顧問 前言: 寫這篇文章的目的是為了下一篇文章《HP-UX Samba服務(wù)配置》作鋪墊的。畢竟大家對(duì)Linux操作系統(tǒng)以及Linux下的Samba服務(wù)要熟悉一些。不要感覺到有壓力,其實(shí)HP-UX沒什么大不了的,其實(shí)就是我們所謂的UNIX,只不過HP修改了其內(nèi)核文件,并重新封裝了它,再換個(gè)名字叫HP-UX。目前HP-UX只有極少數(shù)的大型企業(yè)在用,這跟它昂貴的服務(wù)費(fèi)用有關(guān),所以互聯(lián)網(wǎng)上也很少有關(guān)HP-UX的文章,即使有,也是大家轉(zhuǎn)來轉(zhuǎn)去,盡在胡說的一些文章,參考價(jià)值并不高,我就在這方面浪費(fèi)了不少的時(shí)間。 廢話少說,下面就先來看看在Linux下是如何配置Samba服務(wù)的,有了在Linux下成功配置Samba服務(wù)的經(jīng)驗(yàn),在HP-UX(11.3i版本)上配置Samba服務(wù)就不會(huì)那么困難了,因?yàn)樵贖P-UX上安裝Samba軟件還必須得用HP-UX版本的Samba軟件包,與正常的Samba軟件包稍有差別。 一、軟件準(zhǔn)備 RHEL4系統(tǒng)中默認(rèn)安裝了samba服務(wù)器和客戶機(jī)的所有軟件包。通過以下命令來確認(rèn)是否已存在軟件包。 # rpm -qa|grep samba samba-client-3.0.10-1.4E samba-3.0.10-1.4E samba-common-3.0.10-1.4E 若沒有,則到RHEL4的第2張安裝光盤中去找,或者到網(wǎng)上去下載。 二、Samba服務(wù)的安裝和配置 1、 Samba安裝 安裝命令為: # rpm –ivh 軟件包名稱 例如:# rpm –ivh samba-3.0.10-1.4E.rpm RHEL4系統(tǒng)中默認(rèn)已經(jīng)安裝了與Samba服務(wù)相關(guān)的軟件包。 2、 Samba服務(wù)器的配置 a. 在smb.conf文件中進(jìn)行共享資源的配置 去掉注釋,查看smb.conf配置文件中的有效配置,讓我們來認(rèn)識(shí)一下smb.conf配置文件。 # grep -v "^#" /etc/samba/smb.conf |grep -v "^;" 以上命令能有效的過濾掉配置文件中的注釋文字。 [global] workgroup = MYGROUP server string = Samba Server printcap name = /etc/printcap load printers = yes cups options = raw log file = /var/log/samba/%m.log max log size = 50 security = user socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192 dns proxy = no idmap uid = 16777216-33554431 idmap gid = 16777216-33554431 template shell = /bin/false winbind use default domain = no
[homes] comment = Home Directories browseable = yes writable = yes [printers] comment = All Printers path = /var/spool/samba browseable = no guest ok = no writable = no printable = yes 從以上內(nèi)容可以看出smb.conf配置文件默認(rèn)包括以下3部分內(nèi)容: [global]部分是Samba服務(wù)器的全局設(shè)置,配置項(xiàng)的內(nèi)容對(duì)整個(gè)Samba服務(wù)器有效。 [homes]部分設(shè)置了用戶共享目錄的屬性,該部分中不包括的設(shè)置項(xiàng)則使用配置文件中的全局設(shè)置。 [printers]部分設(shè)置了Samba服務(wù)器中的打印機(jī)共享資源的屬性,Samba服務(wù)器除了可以提供文件共享以外,還能夠提供打印機(jī)的共享。 用戶可以根據(jù)自己的應(yīng)用需求在smb.conf配置文件中添加共享資源的設(shè)置,共享資源的名稱需要放置在方括號(hào)([])中。沒有特別的需求,就保持smb.conf配置文件中的[global]項(xiàng)配置為默認(rèn)。 再來看看[global]全局配置中,常用配置項(xiàng)的含義表: | 配置項(xiàng) | 說明 | | workgroup | 設(shè)置Samba服務(wù)器所在的工作組的名稱,默認(rèn)設(shè)置為 | | server string | 設(shè)置Samba服務(wù)器的說明文字,用于描述Samba主機(jī) | | log file | 設(shè)置Samba服務(wù)器的日志文件,默認(rèn)設(shè)置為”/var/log/samba/%m.log“,表示所有設(shè)置文件都保存在”/var/log/samba/“目錄中,使用Samba服務(wù)器的每個(gè)客戶機(jī)的日志分別為保存與客戶機(jī)同名的”%m.log“文件中,”%m“表示客戶端主機(jī)的名稱。 | | Max log size | 設(shè)置日志文件的最大容量,默認(rèn)為50.表示KB,該設(shè)置項(xiàng)的數(shù)值單位是KB | | security | 設(shè)置Samba服務(wù)器的默認(rèn)安全級(jí)別為user,表示需要經(jīng)過Samba服務(wù)器的用戶認(rèn)證后才能夠訪問服務(wù)器中的資源 |
對(duì)于security全局設(shè)置項(xiàng)的配置比較關(guān)鍵,該配置項(xiàng)去定了Samba服務(wù)器對(duì)客戶機(jī)采取何種用戶認(rèn)證方式。Security設(shè)置項(xiàng)的值可以有以下4種: share:表示用戶不需要帳戶及密碼即可登入Samba服務(wù)器。 user:表示由提供服務(wù)的Samba服務(wù)器負(fù)責(zé)檢查用戶及密碼,是Samba默認(rèn)的安全等級(jí)。 server:表示檢查賬戶及密碼的工作指定由另一臺(tái)Windows服務(wù)器或Samba服務(wù)器來負(fù)責(zé)。 domain:表示指定Windows域控制器來驗(yàn)證用戶的賬戶及密碼。 b. Samba用戶賬號(hào)及用戶目錄設(shè)置 (1)smb.conf文件中對(duì)用戶目錄的默認(rèn)設(shè)置: comment = Home Directories browseable = yes writable = yes
[homes]共享目錄默認(rèn)的配置項(xiàng)含義如下: comment:用于設(shè)置共享目錄的說明信息。 browseable:設(shè)置為no時(shí)表示所有Samba用戶的宿主目錄都不能被看到,只有登錄用戶才能看到自己的宿主目錄,這樣設(shè)置可以加強(qiáng)Samba服務(wù)器的安全性。 writable:設(shè)置為yes時(shí),表示用戶可以對(duì)該共享目錄寫入,設(shè)置用戶對(duì)自己的宿主目錄具有寫權(quán)限是比較合理的。 經(jīng)過以上設(shè)置后,Samba服務(wù)器中的每個(gè)用戶都會(huì)在服務(wù)器中擁有一個(gè)自己的共享目錄(宿主目錄)。 (2) 建立Samba用戶賬號(hào) Samba服務(wù)器不使用Linux系統(tǒng)的用戶賬號(hào)進(jìn)行用戶認(rèn)證,而是維護(hù)自己的用戶賬號(hào)文件。Samba服務(wù)器的用戶賬號(hào)文件保存在“/etc/samba”目錄中,文件名是smbpasswd,初始狀態(tài)smbpasswd文件不存在,在第一次使用smbpasswd命令創(chuàng)建Samba用戶時(shí)自動(dòng)建立。 在建立Samba用戶賬戶之前先要建立同名的Linux系統(tǒng)用戶賬號(hào)。 # cd /etc/samba/ # adduser st02 # smbpasswd -a st02 New SMB password: Retype new SMB password: startsmbfilepwent_internal: file /etc/samba/smbpasswd did not exist. File successfully created. Added user st02.
注意:這里輸入密碼是不顯示的。 smbpasswd命令除了可以添加Samba用戶賬戶外,使用不同命令選項(xiàng)可以完成不同的賬號(hào)維護(hù)工作。 -h:顯示smbpasswd的命令格式幫助 -a:添加指定的用戶賬號(hào) -d:禁用指定的用戶賬號(hào) -e:?jiǎn)⒂弥付ǖ挠脩糍~號(hào) -x:刪除指定的用戶賬號(hào) 使用smbpasswd –d 命令禁用Samba用戶賬號(hào)時(shí),,將在smbpasswd文件的用戶記錄中進(jìn)行相應(yīng)字段的標(biāo)記。 使用smbpasswd –e 命令即是啟用已經(jīng)被禁用的Samba用戶賬號(hào),將在smbpasswd文件中刪除用戶記錄中的禁用標(biāo)記。 smbpasswd命令不接任何參數(shù)時(shí),將提示修改指定Samba用戶的口令,口令的修改會(huì)體現(xiàn)在smbpasswd文件的用戶記錄中。 使用smbpasswd命令建立Samba用戶賬號(hào)時(shí)應(yīng)注意一下幾點(diǎn): -> Samba用戶賬號(hào)使用獨(dú)立的smbpasswd文件保存用戶的賬號(hào)和加密口令信息。 -> Samba服務(wù)器中的用戶賬號(hào)應(yīng)該具有與其同名的Linux系統(tǒng)用戶賬號(hào),因?yàn)镾amba用戶是使用同名的系統(tǒng)賬號(hào)身份來訪問Linux資源(文件和目錄)的。 -> Samba用戶的口令和同名系統(tǒng)用戶的口令是獨(dú)立的,可以相同也可以不相同,需要分別進(jìn)行維護(hù)和更改。 -> 當(dāng)Samba用戶不需要登錄Linux系統(tǒng)時(shí),同名的系統(tǒng)用戶賬號(hào)可以不設(shè)置口令,因?yàn)榭彰艽a的系統(tǒng)用戶是無法登陸Linux系統(tǒng)的。 可以看出Samba服務(wù)器中的用戶賬號(hào)與Linux系統(tǒng)賬號(hào)是相對(duì)獨(dú)立但是又有所關(guān)聯(lián)的,在實(shí)際的應(yīng)用中移動(dòng)要注意兩者之間的以上幾點(diǎn)關(guān)系。 c. 添加公共目錄設(shè)置 在Samba服務(wù)器的默認(rèn)設(shè)置中沒有公共目錄的設(shè)置,需要手動(dòng)進(jìn)行添加。 對(duì)于公共目錄有如下要求: (1) 任何Samba的用戶都可以訪問公共目錄并對(duì)目錄有讀寫權(quán)限; (2) 任何用戶在公共目錄中都以Linux中nobody系統(tǒng)用戶的身份出現(xiàn),即在公共目錄中任何用戶建立的文件都屬于nobody系統(tǒng)用戶。 在對(duì)smb.conf文件進(jìn)行設(shè)置之前需要建立公共目錄在Linux系統(tǒng)中對(duì)應(yīng)的目錄“/home/public”,并設(shè)置該目錄的屬主和屬組為nobody。 # mkdir /home/public # chown nobody.nobody /home/public # ls -ld /home/public drwxr-xr-x 2 nobody nobody 4096 Jun 10 13:30 /home/public 在smb.conf文件中添加名為[public]的共享資源,并設(shè)置如下內(nèi)容: [public] path = /home/public public = yes only guest = yes writable = yes
d. 對(duì)smb.conf文件配置的測(cè)試 測(cè)試命令為:# testparm e. Samba服務(wù)器的啟停命令 Samba服務(wù)器的啟動(dòng)腳本位于目錄“/etc/init.d”中,腳本文件的名稱是smb。 # ls -l /etc/init.d/smb -rwxr-xr-x 1 root root 2020 Jan 3 2005 /etc/init.d/smb 啟動(dòng)Samba服務(wù)器: # service smb start Starting SMB services: [ OK ] Starting NMB services: [ OK ] 查看Samba服務(wù)的服務(wù)狀態(tài): # service smb status smbd (pid 3886 3882) is running... nmbd (pid 3887) is running... 停止Samba服務(wù)器: # service smb stop Shutting down SMB services: [ OK ] Shutting down NMB services: [ OK ] 三、實(shí)現(xiàn)Windows主機(jī)訪問Samba服務(wù)器: 1、 在“運(yùn)行”中輸入Samba服務(wù)器的IP地址,并回車 2、 在彈出的登錄界面中輸入Samba的賬戶st02及密碼: 3、 訪問Samba服務(wù)器成功: 四、Linux主機(jī)訪問Windows共享文件 1、 在Windows主機(jī)中創(chuàng)建共享目錄 2、 使用sbmclient命令來連接Windows共享目錄 使用來賓賬號(hào)Guest(密碼為空)來登錄訪問Windows的共享資源 # smbclient //192.168.1.254/share -U Guest Password: Domain=[XULAU] OS=[Windows 5.1] Server=[Windows 2000 LAN Manager] smb: /> dir . D 0 Wed Jun 10 05:46:45 2009 .. D 0 Wed Jun 10 05:46:45 2009 360safefixavi.exe A 402952 Sun May 31 07:49:21 2009 avseq03.wmv A 8062020 Sat Jun 6 03:11:22 2009 EasyInstallMakerV2.2_XiaoSD.exe A 1341058 Sat May 30 08:46:03 2009 FireFox 3.0.8.exe A 7339968 Mon Apr 20 07:18:42 2009 kav8.0.0.506sch.exe A 38302992 Thu Dec 4 20:22:00 2008 mysql-5.1.35.tar.gz A 35152597 Fri Jun 5 23:51:45 2009 53615 blocks of size 1048576. 5523 blocks available smb: /> exit
3、 使用mount命令掛載Windows共享目錄 # mkdir /winshare # ll /winshare total 0 # mount -t smbfs -o username=Guest //192.168.1.254/share /winshare Password: # ll /winshare total 88480 -rwxr-xr-x 1 root root 402952 May 31 07:49 360safefixavi.exe -rwxr-xr-x 1 root root 8062020 Jun 6 03:11 avseq03.wmv -rwxr-xr-x 1 root root 1341058 May 30 08:46 EasyInstallMakerV2.2_XiaoSD.exe -rwxr-xr-x 1 root root 7339968 Apr 20 07:18 FireFox 3.0.8.exe -rwxr-xr-x 1 root root 38302992 Dec 4 2008 kav8.0.0.506sch.exe
掛載成功!
|