samba伺服器的搭建與配置
A. 如何配置samba伺服器
在linux平台,以二進製程序包和源代碼兩種方式安裝samba伺服器,並整理相關配置文件,並給出基本應用操作。
步驟:
1.機器上已經存在的samba服務,版本為3.0.21b,這是通過使用rpm命令得到的。如下:
# rpm –qa | grep samba
Samba-client-3.0.21b-2
Samba-common-3.0.21b-2
2.將上面的samba-client-3.0.21b-2卸載。使用命令:rpm –e samba-client-3.0.21b-2。
3.用rpm –e samba-common-3.0.21b-2來卸載common,因為依賴關系,不成功。
4.下載二進製程序包:
samba-common-3.0.23c-4.i386.rpm,
samba-client-3.0.23c-4.i386.rpm,
samba-doc-3.0.23c-4.i386.rpm,
samba -3.0.23c-4.i386.rpm。
5.安裝這些程序包。分別使用命令:
rpm –Uvh samba-common-3.0.23c-4.i386.rpm
rpm –ivh samba-client-3.0.23c-4.i386.rpm
rpm –ivh samba-3.0.23c-4.i386.rpm
rpm –ivh samba-doc-3.0.23c-4.i386.rpm
使用選項Uvh來安裝common是因為原來的common沒有被卸載,因此應進行升級安裝(U)。
6.安裝完畢後,可以使用rpm –qa samba來確認。會輸出samba-3.0.24c-4。
7.下面顫腔冊開始對samba服務進行配置。
8.首先,修改/etc/samba/lmhosts文件。加入一行,為本機上的Windows系統IP地址和主機名。這樣才可以通過Windows來訪問Unix的samba服務。
9.創建目錄/export/sambadir作為共享目錄。
命令:mkdir –p /export/sambadir
chmod 777 /export/sambadir
10.修改/etc/samba/smb.conf文件。這是samba的配置文件。
Security = user
Log file = /var/log/samba/log.%m
Path = /export/sambadir
11.使用testparam來測試修改結果。
12.加入一個用戶,並修改其密碼。
13.使用chkconfig命令來設圓配置在啟動級別5中啟動samba。命令如下:
Chkconfig –list | grep smb
Chkconfig –level 5 smb on
Chkconfig –list | grep smb
14.重新啟動網路服務:
/etc/rc.d/init.d/cups stop
/etc/rc.d/init.d/smb restart
15.然後就可以在Windows系統中通過12步中設定的用戶名和密碼來訪問Linux。
16.使用源代碼的安裝方式:下載samba-3.0.23c.tar.gz源代碼包,解壓。
Cd samba-3.0.23c/source
./autogen.sh
./茄宏configure –prefix=/usr –localstatedir=/var –with-configdir=/etc/samba –with-privatedir=/etc/samba –with-fhs –with-quotas –with-smbmount –enable-cups –with-pam_smbpass –with-syslog –with-utmp –with-swatdir=/usr/share/swat –with-shared-moles=idmap_rid –with-libsmbclient
Make
Make install
17.其餘步驟與7之後相同。
這是我實驗時寫的,平台是redhat 9
B. 如何配置samba伺服器
Linux系統默認已經安裝了Samba,但是沒有安裝Samba服務:
1,先查看安裝情況:rpm -qa|grep samba
根據系統的安裝情況選擇下載或者通過光碟機安裝所缺的rpm包。
我的安裝情況是:
使用命令:mount /dev/cdrom1 /mnt/cdrom1
通過mount把cdrom1掛載到系統臨時目錄/mnt/cdrom1,在Packets包下面使用命令:rpm -ivh
samba.*.rpm包安裝。
切換到放置rpm文件的目錄
[root@smb_server root]# rpm
-ivh samba-common-3.6.9-151.el6.x86_64
這是Samba 必備的程序,必須安裝
[root@smb_server root]# rpm
-ivh samba-3.6.9-151.el6.x86_64
安裝Samba 伺服器程序,洞判賀可以使我Windows 主機訪問Samba 伺服器共享的資源。
如果需要使Linux 主機訪問Windows 主機上的共享資源,則還應該安裝Samba 客戶端程序。
[root@smb_server root]# rpm
-ivh samba-client-3.6.9-151.el6.x86_64
2,安裝samba的rpm包完成後
samba-common-3.6.9-151.el6.x86_64
//主要提供samba伺服器的設置文件與設置文件語法檢驗程序testparm
samba-client-3.6.9-151.el6.x86_64
//客戶端軟體,主要提供linux主機作為客戶端時,所需要的工具指令集
samba-swat-3.6.9-151.el6.x86_64
//基於https協議的samba伺服器web配置界面
samba-3.6.9-151.el6.x86_64
//伺服器端軟體,主要提供samba伺服器的守護程序,共享文檔沖茄,日誌的輪替,開機默認選項
Samba伺服器安裝完畢,會生成配置文件目錄/etc/samba和其它一些samba可執行命令工具,/etc/samba/smb.conf是samba的核心配置文件,/etc/init.d/smb是samba的啟動/關閉文件。
5、查看samba的服務啟動情況
# service smb status
6、設置開機自啟動
# chkconfig --level 35 smb on //在3、5級別上自動運行samba服務
7、配置smb服務
[global]
workgroup = WORKGROUP
server string = Samba Server Version %v
netbios name = ImgPath05
[ImgPath]
comment = Public stuff
path =
/usr/local/nginx/html/img
public = yes
writeable = yes
browseable =
yes
guest ok = yes
共享目錄為:/usr/local/nginx/html/img,共享目錄對外名稱為:ImgPath 即在Windows看到的目錄名稱。
設置共享目錄許可權:chown -R nobody:nobody /usr/local/nginx/html/img/
8、啟動或者重啟smb服務
重啟smb服務
測試smb.conf配置是否正確
9 Windows訪問共享目錄,但是沒有寫許可權,通過以下方式修改防火牆設置。
將Linux smb服務添加到防火牆的例外中
以root用戶執行setup命令#setup彈出...重啟生效,如果不想重啟,用命令#setenforce 0
之前使用samba服務的時候沒有做好一些細節部納派分,現在把需要注意的內容記下來,人的記憶力有限啊!時刻提醒自己!
C. 如何配置samba伺服器
1、安裝有關Samba的RPM包(samba、samba-common、samba-client)
2、創建Samba用戶
3、修改配置文件
4、重啟samba服務
5、設置目錄訪問許可權
6、測試
具體步驟如下:
1、安裝RPM包(預設情況下RHEL5安裝了samba的相關軟體包,可以用如下命令查看)
[root@localhost ~]#rpm -qa | grep samba
samba -----samba伺服器程序的所有文件
samba-common -----提供了Samba伺服器和客戶機中都必須使用的公共文件
samba-client -----提供了Samba客戶機的所有文件
samba-swat -----以Web界面的形式提供了對Samba伺服器的管理功能
2、創建samba用戶
[root@localhost ~]#smbpasswd -a user1 (「-a」是創建samba用戶,「-x」是刪 [root@localhost ~]#smbpasswd -a user2 除samba用戶,「-d」是禁用samba用
[root@localhost ~]#smbpasswd -a user3 戶帳號,「-e」是啟用samba用戶帳號)
3、修改配置文件
samba配置文件的位置:/etc/samba/smb.conf
[root@localhost ~]#vim /etc/samba/smb.conf
Vi大開配置文件後,首先介紹一下Samba伺服器的安全級別,如圖所示:系統默認設置「user」
Samba伺服器的安全級別分為5種,分別是user、share、server、domain和ads。在設置不同的級別時,samba伺服器還會使用口令伺服器和加密口令。
1、user -----客戶端訪問伺服器時需要輸入用戶名和密碼,通過驗證後,才能使用伺服器的共享資源。此級別使用加密的方式傳送密碼。
2、share -----客戶端連接伺服器時不需要輸入用戶名和密碼
3、server -----客戶端在訪問時同樣需要輸入用戶名和密碼,但是,密碼驗證需要密碼驗證伺服器來負責。
4、domain -----採用域控制器對用戶進行身份驗證
5、ads -----若samba伺服器加入到Windows活動目錄中,則使用ads安全級別,ads安全級別也必須指定口令伺服器
共享目錄的配置
[homes] -----samba用戶的宿主目錄
comment = Home Directories -----設置共享的說明信息
browseable = no -----目錄瀏覽許可權
writable = yes -----用戶對共享目錄可寫
這個共享目錄只有用戶本身可以使用,默認情況下,用戶主目錄位於/home目錄下,每個Linux用戶有一個以用戶名命名的子目錄。
以下是共享列印機的設置:
[printers] -----共享列印機
comment = All Printers -----設置共享的說明信息
path = /var/spool/samba -----指定共享目錄的路徑
browseable = no -----目錄瀏覽許可權
guest ok = no -----允許來賓訪問
writable = no -----用戶對共享目錄可寫
printable = yes -----可以列印
以上是系統默認設置
添加自定義的共享目錄:( user1對/ASUS有所有權,user2擁有隻讀許可權,其他用戶不能訪問;public共享目錄允許所有用戶訪問及上傳文件)
[ASUS]
comment = user1 Directories -----設置共享的說明信息
browseable = yes -----所有samba用戶都可以看到該目錄
writable = yes -----用戶對共享目錄可寫
path = /ASUS -----指定共享目錄的路徑
[public]
comment = all user Directories -----設置共享的說明信息
browseable = yes -----所有samba用戶都可以看到該目錄
writable = yes -----用戶對共享目錄可寫
path = /public -----指定共享目錄的路徑
guest ok = yes -----允許來賓訪問
4、修改完配置文件後需要重啟samba服務
[root@localhost ~]#service smb restart
Samba伺服器包括兩個服務程序
2 smbd
? smbd服務程序為客戶機提供了伺服器中共享資源的訪問
2 nmbd
? nmbd服務程序提供了NetBIOS主機名稱的解析,為Windows網路中域或者工作組內的主機進行主機名稱的解析
5、設置目錄許可權
[root@localhost ~]#mkdir /ASUS ------創建要共享目錄
[root@localhost ~]#mkdir /public ------創建要共享的目錄
[root@localhost ~]#chmod 750 /ASUS ------修改/ASUS許可權(屬主擁有
所有權,屬組只讀,其它用戶不能訪問)
[root@localhost ~]#chown user1 /ASUS ------將/ASUS的屬主改為user1
[root@localhost ~]#groupadd ASUS ------添加ASUS組
[root@localhost ~]#usermod –G ASUS user1 ------將user1加入到ASUS組
[root@localhost ~]#usermod –G ASUS user2 ------將user2加入到ASUS組
[root@localhost ~]#chgrp ASUS /ASUS ------將/ASUS的屬組改為
ASUS
[root@localhost ~]#chmod 777 /public ------給所有用戶分配完全控制
許可權
配置完成後,還要檢查/etc/service文件中以「netbios」開頭的記錄,正確的文件
記錄如下所示,如果這些記錄前有#或沒有這些記錄,應手工添加,否則用戶無
法訪問Linux伺服器上的共享資源
6、測試
找一台內網windows客戶端,打開「網上鄰居 」,輸入samba伺服器的IP點擊
「搜索」
如圖所示:已經搜索到
雙擊打開,如圖所示:提示輸入用戶名和密碼,先來輸入user1的用戶名和密碼
作測試。
登錄成功,
打開user1的宿主目錄,此目錄user1是擁有所有許可權的,創建一個目錄測試一
下,如圖所示:可以創建
Public目錄是允許任何用戶上傳、下載及刪除文件,如圖所示
User1對ASUS目錄擁有完全控制許可權,所以user1可以在此目錄下作任何操作
切換另一個用戶測試,由於我們在同一台計算機上作測試,測試之前首先要清楚
計算機上的緩存,如圖所示:打開 「命令提示符模式」,「net use /del *」是清
除計算機上緩存
重新打開網上鄰居,找到Samba 伺服器的共享資源,以user2的身份登錄
以下幾幅圖片可以看到,user2對ASUS目錄擁有隻讀許可權,對public、user2目
錄擁有所有權
再切換一個用戶登錄,記得要清除緩存哦,輸入user3的用戶名及密碼
如圖所示:user3無法訪問ASUS目錄
User3隻對user3和public目錄擁有所有權
D. 如何配置samba伺服器
這個簡單,可以參考 《鳥哥的linux私房菜 伺服器》 第一個伺服器就是samba伺服器。。具體的來說:
【samba配置文件smb.conf】
一般你裝系統的時候會默認安裝samba,如果沒有安裝,只需要運行這個命令安裝(CentOS):
「yum install -y samba samba-client」
Samba的配置文件為/etc/samba/smb.conf,通過修改這個配置文件來完成我們的各種需求。打開這個配置文件,你會發現很多內容都用」#」或者」;」注視掉了。咐鏈先看一下未被注釋掉的部分:
[global]
workgroup = MYGROUP
server string = Samba Server Version %v
security = user
passdb backend = tdbsam
load printers = yes
cups options = raw
[homes]
comment = Home Directories
browseable = no
writable = yes
[printers]
comment = All Printers
path = /var/spool/samba
browseable = no
guest ok = no
writable = no
printable = yes
主要有以上三個部分:[global], [homes], [printers]。
[global]定義全局的配置,」workgroup」用來定義工作組,相信如果你安裝過windows的系統,你會對這個workgroup不陌生。一般情況下,需要我們橋簡宴把這里的」MYGROUP」改成」WORKGROUP」(windows默認的工作組名字)。
security = user #這里指定samba的安全等級。關於安全等級有四種:
share:用戶不需要賬戶及密碼即可登錄samba伺服器
user:由提供服務的samba伺服器負責檢查賬戶及密碼(默認)
server:檢查賬戶及密碼的工作由另一台windows或samba伺服器負責
domain:指定windows域控制伺服器來驗證用戶的賬戶及密碼。
passdb backend = tdbsam # passdb backend (用戶後台),samba有三種用戶後台:smbpasswd, tdbsam和ldapsam.
smbpasswd:該方式是使用smb工具smbpasswd給系統用戶(真實用戶或者虛擬用戶)設置一個Samba 密碼,客戶端就用此密碼訪問Samba資源。smbpasswd在/etc/samba中,有時需要手工創建該文件。
tdbsam:使用資料庫文件創建用戶資料庫。資料庫敏銀文件叫passdb.tdb,在/etc/samba中。passdb.tdb用戶資料庫可使用smbpasswd –a創建Samba用戶,要創建的Samba用戶必須先是系統用戶。也可使用pdbedit創建Samba賬戶。pdbedit參數很多,列出幾個主要的:
pdbedit –a username:新建Samba賬戶。
pdbedit –x username:刪除Samba賬戶。
pdbedit –L:列出Samba用戶列表,讀取passdb.tdb資料庫文件。
pdbedit –Lv:列出Samba用戶列表詳細信息。
pdbedit –c 「[D]」–u username:暫停該Samba用戶賬號。
pdbedit –c 「[]」–u username:恢復該Samba用戶賬號。
ldapsam:基於LDAP賬戶管理方式驗證用戶。首先要建立LDAP服務,設置「passdb backend = ldapsam:ldap://LDAP Server」
load printers 和 cups options 兩個參數用來設置列印機相關。
除了這些參數外,還有幾個參數需要你了解:
netbios name = MYSERVER # 設置出現在「網上鄰居」中的主機名
hosts allow = 127. 192.168.12. 192.168.13. # 用來設置允許的主機,如果在前面加」;」則表示允許所有主機
E. samba安裝、配置、排錯
零:場景:
| 共享名 | 路徑 | 許可權 |
| SHAREDOC | /smb/docs | 所有人員包括來賓均可以訪問 |
| RDDOCS | /smb/tech | 僅允許特定組的用戶進行讀寫訪問 |
特定組的組名為RD,目前的Alice、Jack、Tom三個人
一、 安裝Samba
//或者使用rpm安裝
//查看安裝版本信息
Tips:也之前的SAMBA 3有一個重大的變化是:security不再支持share
WARNING: Ignoring invalid value 'share' forparameter 'security'.
二、 配置Samba伺服器
1.創建共享目錄(假設共享/smb目錄下的文件)
2.配置內核參數
3.配置smb.conf文件
1)備份原配置文件:
2)刪除原有所有內容,添加如下內容:
[global]
workgroup=BIGCLOUD
netbios name=ZZSRV2
server string=Samba Server
security=user
map to guest = Bad User
[SHAREDOCS]
path=/smb/docs
readonly=yes
browseable=yes
guest ok=yes
[RDDOCS]
path = /smb/tech/
public = no
writable = yes
write list = @RD
valisers = @RD
三、 創建用戶並分配許可權
1.創建操作系統用戶
2.修改用戶的組
uid=1000(alice) gid=1000(alice)groups=1000(alice),1003(RD)
3.創建SAMBA用戶
4.修改目錄許可權
5.查看服務狀態
drwxrwx--- 2 RD RD 4096 Aug 11 17:08 /smb/tech/
smb.service - Samba SMB Daemon
Loaded: loaded(/usr/lib/systemd/system/smb.service; enabled)
Active: active (running) since Tue2014-08-12 11:38:29 CST; 14s ago
Main PID: 16807 (smbd)
Status: "smbd: ready to serveconnections..."
CGroup: /system.slice/smb.service
16807 /usr/sbin/smbd
16808 /usr/sbin/smbd
systemd[1]:Starting Samba SMB Daemon...
smbd[16807]:[2014/08/12 11:38:29.255341, 0]../lib/util/become_daemon.c:136(daemon_ready)
systemd[1]:Started Samba SMB Daemon.
smbd[16808]:STATUS=daemon 'smbd' finished starting up and ready to serve connectionsfailedto retrieve print...CCESSFUL
Hint:Some lines were ellipsized, use -l to show in full.
四、 測試連通性
1.Linux上測試
Domain=[BIGCLOUD] OS=[Unix] Server=[Samba 4.1.1]
Domain=[BIGCLOUD] OS=[Unix] Server=[Samba 4.1.1]
2.Windows上測試
1)使用虛擬機(如VMware)安裝Linux(如Ubuntu)系統時,為方便Windows和Linux文件互通方便(主要是Windows下訪問Linux文件了),一般都會在LINUX下安裝Samba伺服器。
在XP下,可以通過[//192.168.3.104](file://192.168.3.104/)(Linux系統IP)進行訪問其共享文件,但在WIN7或VISTA下卻不行,因為Samba只支持NTLM認證,而WIN7或VISTA則採用NTLMv2認證,因此必須經過一些設置才行,具體設置如下:
開始->運行->secpol.msc->本地策略->安全選項->網路安全:LAN管理器身份驗證級別->發送 LM 和 NTLMv2 ,如果已協商,則使用NTLMv2 (會話安全 &)->完成設置。(如下圖所示)
這時,再使用[//192.168.3.104](file://192.168.3.104/)(Linux系統IP)就可以訪問Linux共享文件了 _
2)C:>netuse * /del
您有以下的遠程連接:
繼續運行會取消連接。
您想繼續此操作嗎? (Y/N) [N]: y
命令成功完成。
C:>netuse 192.168.188.12 P@ssw0rd /U:alice
命令成功完成。
3)打開資源管理器進行寫入測試
4)如果windows下登錄samba伺服器後無法訪問linux下共享目錄,提示沒有許可權。則檢查:
a、確保linux下防火牆關閉或者是開放共享目錄許可權;
b、確保samba伺服器配置文件smb.conf設置沒有問題,可網上查閱資料看配置辦法 ;
c、確保setlinux關閉,可以用setenforce 0命令執行。 默認的,SELinux禁止網路上對Samba伺服器上的共享目錄進行寫操作,即使你在smb.conf中允許了這項操作。
F. 如何配置samba伺服器
1、 下載及安裝Samba
推薦用yum來安裝,這樣它可以自己解決包的依賴關系,省時、省事又方便。一條命令搞定:
yum -y install samba
2、 配置Samba
關於Samba的配置網上資料一大堆,可照著很多教程一步一步做下去發現最後就是用不了,郁悶至極啊。
我的目的不是多仔細,多深入的教你Samba的好,而是教會你如何快速的可以將Samba用起來,因此安全性方面的東西考慮的不是很多。但為了照顧到大家不同檔次的水平和口味,我還是盡可能的多寫一些東西。
首先,我強烈的建議大家在修改系統原有任何文件的時候一定要養成「先備份,後修改」的好習慣,相信我,這個習慣會為儂節約很多不必要浪費的時間。接下來我要做的是將/home/目錄下的用戶「koorey」的主目錄給挖出來,供我在windows下訪問。步驟如下:
1). 備份Samba的配置文件:cp /etc/samba/smb.conf /etc/samba/smb.conf.bak
2). 網上很多教程說針對/etc/samba/smb.conf文滲帶件要在[global]欄位中加入下配置項:
dos charset = GB2312←將Windows 客戶端的文字編碼設置為簡體中文 GB2312
unix charset =GB2312←指定Samba所在的CentOS服務端新建文件或目錄時的編碼為 GB2312
display charset= GB2312←指定使用SWAT(一種通過瀏覽器控尺喚制Samba的工具)時頁面的默認文字編碼
directory mask =0777←指定新建目錄的屬性(以下4行)
force directorymode = 0777
directorysecurity mask = 0777
force directorysecurity mode = 0777
create mask =0777←指定新建文件的屬性(以下4行)
force createmode = 0777
security mask =0777
force securitymode = 0777
聲明:我沒有加這些配置,而且在我在共享出來的目錄里添加,修改刪除文件都沒任何問題,還沒有亂碼現象。
我在/etc/samba/smb.conf文件的末尾之添加如下欄位:
[koorey]
comment = koorey
path = /home/koorey
writable = yes
3). Linux中/etc/passwd里的用戶和Samba里的用戶幾乎沒啥關系,硬說有的話,那就是:Samba的所有用戶都必須是系統里已存在的用戶。我們要授權系統用戶訪問Samba的話,通過命令:
smbpasswd -a koorey #添加用戶koorey到Samba用戶資料庫中
這條命令輸入完後,會提示為新建的用戶koorey設陵喊凱置訪問密碼。最後再執行一下service smb restart命令就OK了。至此,Samba伺服器就架設好了。不信?為啥?因為後面還有章節,哈哈,說的沒錯。理論上說確實已經架設好了,可千萬不要忽略了Linux的安全機制的存在:iptables和selinux。其中本人就吃了selinux不少苦頭。因為只弄了iptables,卻忘記了selinux這個牛叉叉的傢伙。關於iptables本人會在後面的博客從頭到腳,從里到外,循序漸進的以此和大家交待它的來龍去脈。當然,如果你感興趣的話。
3、 在對待iptables的問題上:
普通青年:直接在命令行敲…
service iptables stop。
文藝青年:依次在命令行敲…
iptables -I RH-Firewall-1-INPUT 5 -m state --state NEW -m tcp -p tcp --dport 139 -j ACCEPT
iptables -I RH-Firewall-1-INPUT 5 -m state --state NEW -m tcp -p tcp --dport 445 -j ACCEPT
iptables -I RH-Firewall-1-INPUT 5 -p udp -m udp --dport 137 -j ACCEPT
iptables -I RH-Firewall-1-INPUT 5 -p udp -m udp --dport 138-j ACCEPT
iptables-save
service iptables restart
4、 同樣,在對在selinux的問題上:(這丫的把我坑慘了呀)
普通青年:直接在命令行敲…
setenforce 0
vi /etc/selinux/config
將SELINUX=enforcing改為SELINUX=disabled為開機重啟後不再執行setenfore節約光陰。
文藝青年:依次在命令行敲…
setsebool -Psamba_enable_home_dirs on
setsebool -Psamba_export_all_rw on
完事兒之後再:getsebool -a | grep samba一把,你懂得…
5、最後在Windows系統里,訪問結果如下:
6、打完收工。
不管你是普通青年還是文藝青年,如果你是一步一步照著做下來的,結果最後Samba還不通,請留言告訴我。
G. 如何搭建samba伺服器
samba安裝和啟動
samba的源碼安裝採用最新版本samba-4.1.14,官網下載。安裝過程如下:
$ sudo mkdir /usr/local/samba-4.1.14
$ ./configure --prefix=/usr/local/samba-4.1.14
...
Checking for program xsltproc : not found
Checking for program python : /usr/bin/python
Checking for program python : /usr/bin/python
Checking for program python : /usr/bin/python
Checking for Python version >= 2.5.0 : ok 2.7.6
Checking for library python2.7 : not found
Checking for library python2.7 : yes
Checking for program python2.7-config : not found
Checking for program python-config-2.7 : not found
Checking
for custom code
: Could not find the python development headers
/home/anonymalias/Downloads/samba-4.1.14/wscript:100:
error: the configuration failed (see
'/home/anonymalias/Downloads/samba-4.1.14/bin/config.log')
上面錯誤的原因是samba必須依賴python,執行
$ sudo apt-get install python-dev
後面就是make && sudo make install,安裝ok後,安裝目錄結構如下:
/usr/local/samba-4.1.14$ ls
bin etc include lib private sbin share va
將源碼文件下默認的conf文件拷貝到安裝目錄下的etc目錄中
/usr/local/samba-4.1.14$ cp /home/anonymalias/Downloads/samba-4.1.14/examples/smb.conf.default etc/smb.conf
修改smb.conf中配置
global段添加如下欄位
[global]
...
netbios name = ubuntu
共享資源欄位採用默認配置
[homes]
comment = Home Directories
browseable = no
writable = yes
# NOTE: If you have a BSD-style print system there is no need to
# specifically define each indivial printer
[printers]
comment = All Printers
path = /usr/spool/samba
browseable = no
# Set public = yes to allow user 'guest account' to print
guest ok = no
writable = no
printable = yes
添加用戶名為Ubuntu的賬戶,
/usr/local/samba-4.1.14$ sudo bin/smbpasswd -a ubuntu
New SMB password:
Retype new SMB password:
samba伺服器的用戶是依賴於linux的用戶,只能添加linux中已存在的用戶,否則會出現如下錯誤:
/usr/local/samba-4.1.14$ sudo bin/smbpasswd -a user1
New SMB password:
Retype new SMB password:
Failed to add entry for user user1.
啟動samba 服務
/usr/local/samba-4.1.14$ sudo sbin/nmbd
/usr/local/samba-4.1.14$ sudo sbin/smbd
在Windwos文件管理器或直接win+R,輸入server ip,可以看到如下界面:
H. 怎樣在Linux系統搭建Samba共享伺服器
17.2. 配置 Samba 伺服器 默認的配置文件(/etc/samba/smb.conf)允許用戶作為 Samba 共享來查看他們的 Red Hat Linux 主目錄。它還把為 Red Hat Linux 配置的列印機作為 Samba 共享列印機來共享。換一句話說,你可以在你的 Red Hat Linux 系統上連接列印機,然後從網路上的 Windows 機器來列印。 17.2.1. 圖形化配置 要使用圖形化界面來配置 Samba,使用 Samba 伺服器配置工具。要使用命令行來配置,請跳到第 17.2.2 節。 Samba 伺服器配置工具是用來管理 Samba 共享、用戶、以及基本伺服器設置的圖形化界面。它修改 /etc/samba/ 目錄中的配置文件。沒有使用該程序進行的改變都會被保留。 要使用該程序,你必須在運行 X 窗口系統,具備根特權,並且安裝了 redhat-config-samba RPM 軟體包。要從桌面啟動 Samba 伺服器配置工具,點擊面板上的「主菜單」 => 「系統設置」 => 「伺服器設置」 => 「Samba 伺服器」,或在 shell 提示(如 XTerm 或 GNOME 終端)下鍵入 redhat-config-samba 命令。 圖 17-1. Samba 伺服器配置工具 注記 Samba 伺服器配置工具不顯示允許用戶在 Samba 伺服器上查看他們自己的主目錄的共享列印機或默認文件段。 17.2.1.1. 配置伺服器設置 配置 Samba 伺服器的第一步是配置伺服器的基本設置和幾個安全選項。啟動了應用程序後,選擇 「首選項」 => 「伺服器設置」。「基本」活頁標簽如 圖 17-2所示。 圖 17-2. 配置基本伺服器設置 在「基本」標簽上,指定計算機應在的工作組以及對計算機的簡短描述。它們與 smb.conf 中的 workgroup 和 server string 選項相對應。 圖 17-3. 配置安全伺服器設置 「安全」標簽包含以下選項: 「驗證模式」 — 它和 security 選項相對應。選擇以下驗證模式中的一種。 「域」 — Samba 伺服器依賴於 Windows NT 主要或備份域控制器來校驗用戶。伺服器把用戶名和口令傳遞給控制器,然後等待它們被返回。在「驗證伺服器」欄位中指定主要或備份域控制器的 NetBIOS 名稱。 「加密口令」選項如果被選,它必須被設置為「是」。