實驗環境:虛擬機器+fedora9
實驗目的:練習fedora9的samba共享
教程適用:想在fedora9上面使用共享的菜鳥
一、
samba
簡介
smb協議是建立在netbios協議之上的應用協議,是基於tcp138、139兩個埠的服務,netbios出現之後,microsoft就使用netbios實現了乙個網路檔案/列印服務系統。這個系統基於netbios設定了一套檔案共享協議,microsoft稱之為smb(server message block)協議,這個協議被用於lan manager和windows伺服器系統中,實現不同計算機之間共享印表機和檔案等。因此,為了讓windows和unix/linux計算機相整合,最好的辦法就是在unix/linux計算機中安裝支援smb協議的軟體。這樣使用windows的客戶端不需要更改設定,就能像使用windows nt或windows 2000伺服器一樣,使用unix/linux計算機上的共享資源了。
samba
使smb協議執行在netbios協議上,並且使用windows的netbeui協議讓unix/linux伺服器可以在windows的網路鄰居上被訪問到。
二、
samba
的守護程序
1. smbd
監聽139
tcp埠設定共享目錄、列印等
2. nmbd
137. 138 udp埠管理群組、netbios 等解析工作
這裡要注意的是fedora9基於安全考慮,把smb和nmb兩個服務給分離了,平時我們在使用samba服務的時候,在啟動smb服務的同時nmb這個服務也會跟著啟動,fedora9中則不然,這就造成了我們設定好fedora9中共享的時候,只能使用[url=file://ip/]\\ip[/url] 來訪問,而不能使用[url=file://計算機名/]\\計算機名[/url] 來訪問,解決的辦法就是同時啟動smb和nmb服務
三、
軟體的安裝
使用rpm –qa|gerp samba
來檢查是否安裝了samba 軟體包,如果沒有安裝的話請自行安裝以下的軟體包
#rpm –ivh samba-3.2.0-1.pre3.9.fc9.i386.rpm
#rpm –ivh samba-winbind-3.2.0-1.pre3.9.fc9.i386.rpm
#rpm –ivh samba-common-3.2.0-1.pre3.9.fc9.i386.rpm
#rpm –ivh samba-client-3.2.0-1.pre3.9.fc9.i386.rpm
#rpm –ivh system-config-samba-1.2.63-1.fc9.noarch.rpm
或者你用yum install samba* -y就可以一次搞定了。
四、
啟動samba服務
#service smb start
(/etc/init.d/smb start
)啟動smb服務#
service nmb start
(/etc/init.d/nmb start
)啟動nmb
服務當然你也可以使用chkconfig –-level smb 35 on 來設定啟動級別,這個不多說了。
我們來檢查一下是是否正常啟動兩個服務,使用命令pstree | grep mb
顯示為如下如果則為正常啟動:
|-nmbd
|-smbd---2*[smbd]
|-tomboy---2*
五、
配置smb.conf檔案
知識點,samba 有四種安全級別,它們分別是:
share
:使用者不需要使用者名稱和就可登陸samba 伺服器
user
:使用者需要輸入使用者名稱和密碼才可以登陸samba伺服器
server
:請自行查資料,不常用,略
domain
:請自行查資料,不常用,略
對於我們小菜來說,我們使用user級別就可以了,如果偷懶的話你可以用share
我們先備份配置檔案smb.conf
#cp /etc/samba/smb.conf
/etc/samba/smb.conf.bak
然後查詢你的security = user是否為user如果是share的話改為user
#vi /etc/samba/smb.conf
workgroup = workgroup //
設定工作組
server string = %u's samba %v//
描述資訊%u代表當前登陸使用者
netbios name = fedora //netbios
名字,fedora9預設沒有啟用
log file = /var/log/samba/log.%m//
日誌檔案儲存路徑%m你的windows主機名
max log size = 50 //
日誌最大容量
security = user //
安全級別,user需要使用者名稱和密碼,share級別則不要
[share]
//建立乙個共享名為share的共享
comment = samba
//描述資訊
path = /tmp/share
//共享路徑
public = no //
是否允許guest使用者訪問(相當於guest ok = yes/no)
writable = yes //
是否可寫
write list = lovehack //
可以寫入的使用者列表(
@代表使用者組)
下面建立共享目錄並新增許可權
#mkdir /tmp/share
#chmod 775 /tmp/share
#chown lovehack.lovehack /tmp/share
六、
新增使用者並測試共享
新增訪問samba的使用者,命令smbpasswd –a 使用者名稱
#smbpasswd –a lovehack
//lovehack為事先建立好的使用者
然後輸入兩次密碼就可以了,注意這裡的密碼和你登陸系統的密碼是不一樣的,只是用來訪問共享的密碼。
現在我們就可以來測試一下配置檔案是否正確:testparm 一般是沒有什麼問題的。
現在我們可以用[url=file://ip/]\\ip
[/url]或者[url=file://計算機名/]\\計算機名[/url]來訪問共享了。
七、
解決fedora9中selinux拒絕訪問共享的問題
在其它版本的
linux
中(as5,as4
,centos
)中做如上設定後就可以正常訪問共享了,但是在
fedora9
中卻不行,我們只能看到共享,但是訪問的時候會出現拒絕訪問的情況,這是為什麼呢?
因為selinux
對samba
共享做了限制,我們只用把
selinux
中對samba
的限制給解決了就行了,我們做如下設定就
ok了,這也是我做此教程的目的:
#setsebool –p samba_enable_home_dir on
#setsebool –p samba_export_all_ro on
#setsebool –p samba_export_all_rw on
我們可以用命令getsebool –a | grep samba
檢視上面三項是否開啟,開啟的話你的共享應該就正常了。
教程記錄:獨自等待
我的部落格:
fedora 9 硬碟安裝日誌
前幾天終於把fedora 9出下下來了。網上說linux如果沒有安裝光碟的話可以從硬碟安裝,大概找了一下,結果成功了 過程如下 一 準備目錄樹 其中 1 c 最好是fat32 fat的也可以 格式的磁碟,據說最新的grub已經支援ntfs了,但是我試了不行不知道為什麼 也可以將isolinux目錄以...
Fedora7硬碟公升級到Fedora9
我去年10月左右開始接觸linux,是買了乙個fedora7光碟,安裝都是光碟安裝,要注意的是分割槽部分,其他都還ok。用f7也不是很多時候,大部 分也還是windows,由於80g的maxtor硬碟在年初接近報廢 才一年多 大概在今年3月份開始,幾乎都沒進過linux了。7月底,聽到 tencen...
在Fedora 9 的搭建cvs server
在fedora 9 的搭建cvs server 1 安裝cvs包 yum cvs 命令可以檢查是否安裝了cvs 軟木包,如果沒有,它會自動在網上尋找並提示安裝 2 配置 xinetd 安裝cvs之後會在目錄生產這個檔案 etc xinetd.d cvs,要修改讓它可以啟動。怎麼修改就隨便找資料看看,...