Linux下Samba伺服器搭建
linux檔案共享之samba伺服器 ——ubuntu
宗旨:技術的學習是有限的,分享的精神是無限的。
關閉LINUX防火牆命令: #ufwdisable 然後就在windows下ping一下linux的IP,如果能ping通,就可以繼續下面的內容,如果ping不通就再找找原因
注:ubuntu 12.04已經安裝了最新版本的samba伺服器,無需安裝。如果使用12.04以前的版本,最好是按下邊的方法升級一下samba,12.04版本無需下列操作
Samba 是一款功能強大的共享工具,可以實現與windows的共享,就是我們經常在windows計算機之間使用的網路上的芳鄰功能,可以共享檔案和印表機等。今天要介紹的是在ubuntu 12.04 中安裝和設定,當然也可以在以前的版本上使用。
1 安裝Samba檔案
我們需要做的第一件事是安裝Samba,你可以在Ubuntu軟體中心搜尋軟體,然後安裝。如果你想通過終端安裝,可複製這個命令:
sudo apt-get install samba samba-common
2 為配置工具安裝一些依賴包(不要忘記安裝python-glade2)
sudo apt-get install python-glade2
3 安裝 Samba伺服器配置工具 :
安裝 samba 系統配置圖形介面工具
sudo apt-get install system-config-samba
4 新增一個 Linux/Unix user:
假定使用者名稱為pirat9,也可以用一個已存在的使用者名稱,若使用已存在的使用者名稱,則直接跳到第6步,在設定訪問許可權時,選擇已存在的使用者。
adduser pirat9
5 為使用者 pirat9設定密碼:
passwd pirat9
6 現在開啟 samba配置工具。
samba configuration tool
7 新增共享資料夾並設定許可權訪問。
share
設定許可權訪問
8 連線到共享前,你必須建立samba使用者:
sudo smbpasswd -a pirat9
New SMB password
retype New SMB Password
設定完成後重啟一下虛擬機器
9
開啟一個視窗,輸入伺服器地址:\\192.168.146.128
會彈出輸入使用者名稱和密碼的視窗,輸入使用者名稱和密碼即可。
Samba伺服器——redhat
1.檢測安裝Samba服務
(1).檢查Samba服務包是否已安裝:
rpm -qa | grep Samba
(2).如未安裝,則插入第一張安裝盤,執行:
mount /mnt/cdrom
cd/cdrom/Redhat/RPMS
(3).進入目錄後安裝Samba檔案:
注意:運Samba至少需要三個檔案,分別為:
Samba-common-2.2.7a-7.9.0.i386.rpm //伺服器和客戶端均需要的檔案
Samba-2.2.7a-7.9.0.i386.rpm //伺服器端檔案
Samba-client-2.27a-7.9.0.i386.rpm //客戶端檔案
安裝上述3個檔案.
rpm-ivh Samba-common-2.2.7a-7.9.0.i386.rpm //另外兩個省略不寫
(4).安裝完成後彈出光碟機:
cd;eject
2.設定密碼檔案.
(1).此設定的作用是將Linux中的系統使用者(/etc/passwd)匯入到Samba密碼檔案中
(/etc/Samba/smbpasswd)
cat/etc/passwd | mksmbpasswd.sh > /etc/Samba/smbpasswd
(2).接下來給smbpasswd等檔案及資料夾設定訪問許可權.
chown root.root /etc/Samba/smbpasswd
chmod600 /etc/Samba/smbpasswd
chmod600 /etc/Samba
檢視一下:
ll-d Samba
(3).如果您想手動新增一個使用者,則首先要保證Linux中該使用者存在,步驟:
useradd liu
passwdliu
smbpasswd-a liu //此步為新增Samba使用者
3. 配置/etc/Samba/smb.conf檔案
雖然檔案內容眾多,但需要改動的不多,一般為按需所配:
(1).修改[global](全域性配置引數)
workgroup = workgroup //工作組名稱
serverstring = Samba server %v at %h //設定伺服器名稱.%v為版本號,%h為執行
smb服務的主機名
hostallow = 192.168.80. 192.168.70. //允許訪問伺服器的主機
clientcode page = 939 //支援簡體中文共享名
上述四條為比較重要的.其他配置大家可按需按情況修改.
(2).建立共享資料夾.
由於使用者使用許可權有多種(讀,寫,執行),而又訪問者又有多種(使用者,組),所以建立共享資源的訪問方式有多種,下面暫舉幾例:
例一: 建立資源,使登陸到該伺服器的使用者均有權使用該空間(包括讀,寫)
<1>.編輯smb.conf檔案
vi smb.conf
[resource]
comment= local resource
path= /var/Samba/resource
readonly = no
public= yes //允許guest使用者訪問
<2>.建立共享資料夾
mkdir -p /var/Samba/resource
<3>. 由於任何人都能使用,所以得給該資料夾設定訪問許可權.
chmod 707 /var/Samba/resource
<4>.如果想在該資料夾中放置預共享檔案,而又不想花
時間從別的資料夾中cp過來,此時可以使用指標.
比如想共享/usr/share/doc中的檔案,則可以:
ln-s /usr/share/doc /var/Samba/resource/doc
進入/var/Samba/resourcels一下,是不是出現指標檔案了!
例二: 建立一資源,只能讓使用者liu全權訪問.
<1>. 編輯smb.conf檔案
vismb.conf
[liu]
comment= liu
path= /var/Samba/liu
vaildusers = smz //只允許liu訪問
public= no
writable= yes
<2>. 建立共享資料夾
mkdir -p /var/Samba/liu
<3>. 由於只能讓liu使用,所以得給該資料夾設定訪問許可權.
chown liu.liu /var/Samba/liu
chmod700 /var/Samba/liu
此時該資料夾屬於liu使用者,並且只能由liu使用者訪問.
例三: 建立一資源,只能讓root,zhang和wang訪問.
<1>. 編輯smb.conf檔案
vi smb.conf
[zhangwang]
comment= zhang wang
path= /var/Samba/liu
vaildusers = zhang wang
public= no
writable= yes
creatmask = 0707
<2>. 建立共享資料夾
mkdir -p /var/Samba/zhangwang
<3>. 給該資料夾設定訪問許可權.
chmod 707 /var/Samba/zhangwang
此時該資料夾只能root,zhang,wang訪問了.
例四: 建立一資源,讓指定的組group2中的使用者訪問.
<1>. 編輯smb.conf檔案
vi smb.conf
[group]
comment= group2
path= /var/Samba/group2
public= yes
writable= yes
writelist = @group2 //設定讀寫訪問使用者列表
<2>.建立共享資料夾
mkdir-p /var/Samba/group2
<3>. 給該資料夾設定訪問許可權.
chown group2.group2 /var/Samba/group2
chmod770 /var/Samba/group2
此時該資料夾只能由group2中的使用者訪問了.
(3). 以上為建立共享資料夾,下面為建立共享印表機.
<1>. 配置印表機的方面有很多,比如使用redhat-config-printer命令即可調出配置選單.
<2>. 當然smb.conf中也要設定啊:
[global]
printcapname = /etc/printcap //配置檔案路徑
[printers]
writable= no
guestok = yes //guest可用
browseable= no //不可瀏覽
ptrintable= yes
path= /var/spool/Samba //佇列位置
printeradmin = root //印表機管理員
其他配置不變或按情配置
接下來再新增print驅動設定:
[print$]
comment= printer drivers
path= /etc/Samba/drivers
browseable= yes
guestok = no
readonly = yes
writelist = root
接著建立drivers資料夾:mkdir-p /etc/Samba/drivers
最後給使用者準備印表機驅動,並啟動列印共享:
cupsaddsmb-a -U root //-a為共享所有印表機-U為以root身份執行
cupsaddsmb命令
4. 測試並啟動Samba伺服器.
testparm //測試
servicesmb start
pstree| grep mbd //檢視是否啟動
5. 訪問Samba
(1). 從Windows端訪問.
使用"網路鄰居"訪問即可.
(2). 訪問時可以使用IP地址,也可以使用主機名訪問.
vi /etc/Samba/lmhosts
192.168.80.35 smz_f91 //建立主機名與IP的對映
訪問時,使用smbclient命令,使用方法如下:
smbclient-L IP/主機名[-U 使用者名稱] //瀏覽Linux/Windows資源列表
smbclient-L 192.168.80.35 //瀏覽Linux
smbclient-L 192.168.80.45 -U administrator //瀏覽Windows
smbclient//IP/共享資料夾名-U 系統使用者名稱 //詳細檢視某一共享資源的內容
smbclient//192.168.80.45/123 -U root/administrator //以root或administrator身份
登陸45主機訪問共享資料夾123
至此,Samba伺服器的簡單建立到此結束。