就算你不同時用windows和linux這兩個系統,我也建議你看一下
windows之間的文件共享很簡單,但是如果要實現windows和linux之間的文件共享,該怎麼辦呢?特別是在一個團隊中,一般會有一台裝有linux系統的伺服器,這個需求就顯得很迫切。
samba很好的解決了這個痛點。Samba 是 SMB/CIFS 網路協議的重新實現, 它作為 NFS 的補充使得在 Linux 和 Windows 系統中進行文件共享、印表機共享更容易實現。ubuntu系統一般自帶samba服務,不需要我們單獨安裝。
samba的部署很簡單,只需要三部:
第一步:創建共享文件夾,並賦予相應的許可權
第二步:配置samba參數文件
第三步:測試成功與否
下面以ubuntu16.04 為例來說明如部署該服務。
1
配置文件參數介紹
在正式開始部署之前,我們先來了解一下samba 配置文件的詳細參數。對文件共享服務要求不是很高的讀者可以跳過這一步。直接開始我們的」三部曲「。如果想要配置更為複雜的文件共享服務,可以後面再來參考這部分。
samba的配置文件為/etc/samba/smb.conf,通過修改這個配置文件來可以完成我們的各種需求。
global 參數
在 global 當中的就是一些主機的整體參數了,包括工作組、主機的 NetBIOS 名稱、字元編碼的顯示、登錄文件的設定、 是否使用密碼以及使用密碼驗證的機制等等。在 [global] 部分關於主機名信息方面的參數主要有:
workgroup = 工作組的名稱:注意,主機群要相同
netbios name = 主機的 NetBIOS 名稱啊,每部主機均不同
server string = 主機的簡易說明,這個隨便寫即可
除此之外,還有登錄文件方面的信息, 包括這些參數:
log file = 登錄檔放置的檔案,文件名可能會使用變數處理;
max log size = 登錄檔最大僅能到多少 Kbytes ,若大於該數字,則會被 rotate 掉
還有跟密碼有關的參數,包括這幾個:
security = user, server, domain, share 四選一,這四個設定值分別代表:
user :使用 SAMBA 本身的密碼資料庫,密碼資料庫與底下的 smb passwd file 有關
server, domain:使用外部主機的密碼,亦即 SAMBA 是客戶端之意,如果設定這個項目,你還得要提供 password server = IP的設定值才行
share:分享的數據不需要密碼即可分享
encrypt passwords = Yes 代表密碼要加密
smb passwd file = 密碼放置的檔案,通常是 /etc/samba/smbpasswd
共享文件參數設置
[分享文件夾名稱] 是針對你開放的目錄來進許可權方面的設定,包括誰可以瀏覽該目錄、是否可以讀寫等參數。
[分享文件夾名稱] :這個分享名稱很重要,他是一個『代號』而已。
comment :分享文件夾的說明
path :分享文件夾的路徑
read only:是否只讀
public :是否讓所有可以登入的用戶看到這個項目
writable :是否可以寫入
create mode 和 directory mode 都與許可權有關
valid users = 用戶,這個項目可以指定能夠進入到此資源的特定使用者。
2
部署開放的samba服務
新建共享文件夾
注意,一定要給文件設置正確的許可權。
配置參數文件
用vim打開Samba配置文件
注意:建議大家把這裡面的配置信息全部刪掉,然後全部自己重寫,以免信息的錯亂。
修改配置文件為
測試
重啟samba服務
在ubuntu上的瀏覽器上輸入看能否訪問到共享文件```(注意,要把ip地址換成是自己的伺服器的地址),看似否可以訪問自己的共享目錄。
在windows上打開資源管理器直接輸入直接訪問。嘗試通過拖放將文件上傳到共享,看看它是否正常工作,傳輸速度如何。注意,在windows端顯示的共享文件夾的名稱是參數配置文件中文件夾的名稱,這裡為temp)
3
部署需要密碼的samba服務
添加用戶並創建共享文件夾
創建系統用戶
設置用戶密碼
把系統用戶user01添加為samba用戶並設置samba用戶登錄密碼
查看samba用戶
創建共享目錄
目錄分配最高許可權
更改目錄所屬用戶
配置參數文件
用vim打開Samba配置文件:
修改配置文件為
測試
測試和上面的一樣,在windows端進入,點擊data文件夾,會發現提示輸入用戶和密碼,輸入對應的用戶名和密碼,拖拽文件進行測試。
4
綁定伺服器ip(可選)
伺服器重啟後,路由器會重新分配ip,這給使用帶來了很大的不方便。我們最好把伺服器的地址綁定到某個固定的ip。這裡我們以綁定到192.168.1.11為例。
網路參數文件位於/etc/network/下面, 執行如下命令:
添加以下內容
參數的意義如下:
enp0s316:自己網卡而名稱,可以通過來查看
address:要綁定的ip
gateway和netmastk:自己查看電腦的參數。
最後,我們還要使配置生效
至此,是不是覺得samba的部署既簡單,又實用,如果感覺有用的話,就趕緊行動起來吧。
※Windows和Ubuntu系統如何遠程連接Linux伺服器
TAG:輪子工廠 |