天天看點

Linux samba 檔案共享

Linux samba 檔案共享

學校要求建立一個軟體共享平台。需求如下:普通使用者可以直接通路192.168.100.100,而不用輸入使用者密碼,權限是隻讀;而管理者登陸後可以對檔案夾,檔案進行管理操作。

有任何不足之處請高手指點。

一:挂載硬碟并分區

1:挂載好硬碟後輸入fdisk –l 檢視磁盤資訊

2:可以看到除了本地的sda外,還多了一個sdb的就是我們剛才挂上去的盤

然後用fdisk /dev/sdb進行分區:

3:進入fdisk指令,輸入h可以看到該指令的幫助,按n進行分區

4:這裡輸入e即分為邏輯分區,按p即分為主分區,我們要将這塊盤分為主分區即輸入p

5:到這裡輸入該主分區為第幾個主分區,由于是新盤輸入1來分第一個主分區

6:First Cylinder是選擇該分區的起始磁盤數,這裡可自定義也可不做選擇,預設是1,如無特殊需求強烈建議選擇預設,也就是1來分區(直接按回車)

7:接下來是定義該分區的大小,如果按預設(按回車)即是使用全部可用存儲額,也可以是用M或m機關結尾的數字(大寫M是大B的意思,如果輸入1M實際上是X8也就是8m的空間),這裡我們先分一個1G的空間,是以輸入+1024m

8:之後輸入w寫入分區,等待結束皆可

9:再輸入fdisk -l 可以看到我們剛才分的一個分區,之後用mkfs -t ext3 -c /dev/sdb1進行格式化,如有多個分區可把sdb1改成sdb2 sdb3...以此類推,具體可用fdisk -l看到每個分區的名字

10:上圖藍色部分是寫硬碟卷标的,如不想要卷标可直接按回車,現在分區好了我們用mount 挂載一下該分區即可使用了,這裡我把它挂載到/home/test目錄下,也可以自建一個 目錄挂載

Linux samba 檔案共享

11: 來看一下分區大小是否和預定的一樣,使用df -TH指令看一下目前挂載的分區和大小,看到剛分的分區了吧

Linux samba 檔案共享

12:如果想每次系統重新開機都能自動挂載該分區可修改/etc/fstab檔案,在最後加一段 /dev/sdb1    /www    ext3    defaults 1 2 (格式說明:/dev/sdb1 代表哪個分區  ext3是該分區的格式 defaults 是挂載時所要設定的參數(隻讀,讀寫,啟用quota等),輸入defaults包括的參數有(rw、dev、exec、auto、nouser、async) ,1是使用dump是否要記錄,0是不要。 2是開機時檢查的順序,是boot系統檔案就為1,其他檔案系統都為2,如不要檢查就為0)

Linux samba 檔案共享

二:samba伺服器的配置

1:安裝samba 服務

Rpm –ivh perl-Convert-ASN1-0.20-1.1.noarch.rpm

Rpm –ivh samba-3.0.33-3.28.el5.i386.rpm

Rpm –ivh samba-client-3.0.33-3.28.el5.i386.rpm

Rpm –ivh samba-common-3.0.33-3.28.el5.i386.rpm

Service smbd restart

2:  建立samba使用者資料庫(samba使用者賬戶必須有對應的系統使用者賬戶存在)

usreadd  test

usreadd  test1

smbpasswd  -a  test

smbpasswd  -a  test1

-h    顯示samba指令幫助資訊

-a    添加指定的samba使用者

-d    禁用指定的samba使用者

-e    啟用指定的samba使用者

-x    删除指定的samba使用者

基于Windows安全考慮。samba服務提供了使用者名映射功能,(将不同的使用者名對應為同一個samba賬戶,起到隐藏對應的系統使用者賬戶的效果,減少密碼窮舉攻擊的風險)

/etc/samba/smbusers

#  vi  /etc/samba/smbusers 

Test=smbadmin

3:samba主服務的配置

sanba思想:在samba的主目錄下建立一個或多個檔案夾,其中這些二級檔案夾是公布的,權限是隻讀,而管理的話則使用上級目錄進行管理。

配置檔案:vim /etc/samba/smb.conf

[global]

null password =yes                                  //匿名通路不用輸入賬戶密碼

bind interfaces only =yes

map to guest =Bad Password

encrypt password =yes

smb passwd file =/etc/samba/smbpasswd

#client code page 936

dos charset = CP936

unix charset=CP936

stat cache size 128

server string =test  server

workgroup=WORKGROUP

#security =share

security=user

os level =30

auto services=global

host msdfs =yes

max disk size =0

create mask =0775

directory mask =0755

load printers =no

template shell =/bin/false

winbind user default domain =no

username map=/etc/samba/smbusers              //賬戶映射

[cduestc]

commet= public share with test files               //一個名字,可随便取

path=/home/test/cduestc                       //設定要共享的目錄路徑

public=yes                                   //設定為匿名通路

read only =yes                                //權限隻讀

[test]

valid users =test,test1                        //可管理賬戶

path=/home/test                           //共享目錄的上層路徑

browseable = no                           //不可浏覽

writable =yes                             //可寫

write list =test,test1                      //管理權限使用者清單

sync always =yes                          //即使重新整理

directory mode =0755                     //管理者建立目錄的權限

create mode =0755                       //管理者建立檔案的權限

儲存後重新開機服務。

4:講smb服務設為開機啟動

Vim /etc/rc.d/rc.local

Linux samba 檔案共享

三:配置http通路

1:安裝httpd服務

Rpm –ivh httpd-2.2.3-43.el5.i386.rpm

Rpm –ivh httpd-manual-2.2.3-43.el5.i386.rpm

2:配置httpd

vi m /etc/httpd/conf.d/welcome.conf    把檔案的東西都注釋掉

Linux samba 檔案共享

vim /etc/httpd/conf/httpd.conf

DocumentRoot "/home/test"

<Directory "/home/test">

四:使用說明

samba服務以開機自動啟動,挂載點開機自動挂載

1: 匿名通路

權限:隻讀

ip:192.168.100.100

可直接通路檔案夾:test       more

(注:通路到的是test/cduestc,test/more)

2:管理者管理檔案

權限:可讀可寫可删除

在映射驅動器裡輸入:\\192.168.100.100\tes

賬戶有兩個:

test             test

test1               test1

管理者不慎把cduestc 或者more檔案夾删除後請重建相同名稱的檔案夾(并修改權限為777),

否則匿名将無法通路,管理者無法上傳删除此檔案夾檔案。

如要添加檔案夾及重命名,請到vi /etc/samba/smb.conf下添加如下配置:

[cduestc]                                    //匿名通路時顯示的檔案夾名

commet= public share with test files    //注釋

path=/home/test/cduestc                 //路徑

public=yes                                   //是否公開或允許匿名通路,yes為允許匿名

read only =yes                               //設為隻讀

然後把建立立的檔案夾的權限改為777(chmod 777 [folder name])這樣就能正常讀寫了。

效果圖:

Linux samba 檔案共享
Linux samba 檔案共享
Linux samba 檔案共享
Linux samba 檔案共享
Linux samba 檔案共享

繼續閱讀