Samba是一種軟件,它能夠運行在非Windows平臺上,好比UNIX, Linux, IBM System 390, OpenVMS或其餘操做系統。Samba使用安裝在主機上的TCP/IP協議。當正確配置完成後,Samba可使主機與Windows客戶端或服務器交互,這臺主機就好像變成了Windows的文件和打印服務器。linux
配置好samba以後就能夠在windows下編寫代碼,提交代碼,而後在linux環境下編譯代碼。ubuntu
安裝步驟以下:vim
1.安裝sambawindows
yum install samba服務器
(ubuntu下面能夠用apt-get install 來安裝)測試
安裝完成以後能夠用spa
rpm -qa|grep samba 命令來驗證是否安裝成功。操作系統
2.配置samba3d
修改samba的配置文件。在修改配置文件以前,記得要把配置文件備份一份,養成良好習慣。rest
使用cp(複製命令)進行備份
cp /etc/samba/smb.conf /etc/samba/smb.conf_backup
而後編輯這個配置文件
vim /etc/samba/smb.conf
在配置文件的最後加上
[workspace]
path=/workspace
browseable=yes
writeable=yes
guest ok=yes
[workspace]包含的名稱是windows中顯示的文件目錄
保存
使用testparm測試一下配置文件的語法
3.重啓samba
service smb restart
4.創建一個共享目錄
mkdir /workspace
5.訪問
這個時候可能訪問不到,多是防火牆的緣由,
Samba用到了下列端口:
1)Port 137 (UDP) - NetBIOS 名字服務 ; nmbd
2)Port 138 (UDP) - NetBIOS 數據報服務
3)Port 139 (TCP) - 文件和打印共享 ; smbd (基於SMB(Server Message Block)協議,主要在局域網中使用,文件共享協議)
4)Port 389 (TCP) - 用於 LDAP (Active Directory Mode)
5)Port 445 (TCP) - NetBIOS服務在windos 2000及之後版本使用此端口, (Common Internet File System,CIFS,它是SMB協議擴展到Internet後,實現Internet文件共享)
6)Port 901 (TCP) - 用於 SWAT,用於網頁管理Samba
通常只要打開139端口就能夠了。
編輯iptables配置文件,
vim /etc/sysconfig/iptables
將139端口加上去,重啓iptables,
/etc/init.d/iptables restart
再次訪問共享目錄,訪問是能訪問了,不過須要密碼
這個時候就要在smb.conf裏面作一些更改,
在security = user下面加上
map to guest = Bad User
重啓samba。再訪問共享目錄,可見能顯示文件夾了
可是仍是不能進入文件夾
由於linux不容許修改此文件夾,這個時候能夠用如下命令
chcon -t samba_share_t /workspace
將workspace標記爲samba_share_t,就能夠打開文件夾了。
可是如今還不能在文件夾中建立文件,這個是由於匿名用戶沒有相關權限
查詢一下nobody在系統中的屬性
id nobody
經過chown命令將匿名用戶加上去,chown nobody:nobody /workspace
(chown的做用是改變相關目錄文件夾的擁有者及羣組,chown nobody:nobody /workspace,是將workspace的擁有者變成nobody匿名用戶)
或者
chmod 777 /workspace
(
chmod命令,全稱是change file mode bits,使用ls –l能夠查看全部文件的屬性狀況
drwxr-xr-x 中 第一個表示類型,d表示目錄directory,第二到第四rwx表示擁有者有讀寫運行權限,第五到第七r-x表示擁有者所在的組有讀和運行權限但沒有寫入權限,第八到第十r-x表示其餘用戶有讀和運行權限但沒有寫入權限
)
至此建立共享目錄就完成了。