共計 3197 個字符,預計需要花費 8 分鐘才能閱讀完成。
這篇文章主要介紹了如何部署 Samba 使 Linux 和 Windows 進行文件共享的相關知識,內容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇如何部署 Samba 使 Linux 和 Windows 進行文件共享文章都會有所收獲,下面我們一起來看看吧。
Samba 是 SMB/CIFS 網絡協議的重新實現, 它作為 NFS 的補充使得在 Linux 和 Windows 系統中進行文件共享、打印機共享更容易實現。ubuntu 系統一般自帶 samba 服務,不需要我們單獨安裝。
下面以 ubuntu16.04 為例來說明如部署 Samba 服務。
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 服務
新建共享文件夾
sudo mkdir -p /samba/test
注意,一定要給文件設置正確的權限。
chmod -R 777 /samba/test
配置參數文件
用 vim 打開 Samba 配置文件
sudo vim /etc/samba/smb.conf
注意:建議大家把這里面的配置信息全部刪掉,然后全部自己重寫,以免信息的錯亂。
修改配置文件為
[global] workgroup = WORKGROUP server string = Samba Server %v netbios name = ubuntu security = user map to guest = bad user dns proxy = no [temp] path =/samba/test browsable =yes writable = yes guest ok = yes read only = no creat mode=777 force creat mode=777 directory mode = 777 force directory mode = 777
測試
重啟 samba 服務
sudo /etc/init.d/samba restart
在 ubuntu 上的瀏覽器上輸入 file://192.168.1.11/ 看能否訪問到共享文件 “`(注意,要把 ip 地址換成是自己的服務器的地址), 看似否可以訪問自己的共享目錄。
在 windows 上打開資源管理器直接輸入 \\192.168.1.11 直接訪問。嘗試通過拖放將文件上傳到共享,看看它是否正常工作,傳輸速度如何。注意,在 windows 端顯示的共享文件夾的名稱是參數配置文件中文件夾的名稱,這里為 temp)
3. 部署需要密碼的 samba 服務
添加用戶并創建共享文件夾
創建系統用戶
sudo useradd user01
設置用戶密碼
sudo passwd user01
把系統用戶 user01 添加為 samba 用戶并設置 samba 用戶登錄密碼
sudo smbpasswd -a user01
查看 samba 用戶
sudo pdbedit ndash;L
創建共享目錄
sudo mkdir -p /samba/data
目錄分配 *** 權限
sudo chmod 777 /samba/data
更改目錄所屬用戶
sudo chown root:user1 data
配置參數文件
用 vim 打開 Samba 配置文件:
sudo vim /etc/samba/smb.conf
修改配置文件為
[global] workgroup = WORKGROUP server string = Samba Server %v netbios name = ubuntu security = user map to guest = bad user dns proxy = no [data] path =/samba/data browsable =yes writable = yes guest ok = no read only = no valid users=@user1
測試
測試和上面的一樣,在 windows 端進入,點擊 data 文件夾,會發現提示輸入用戶和密碼,輸入對應的用戶名和密碼,拖拽文件進行測試。
4. 綁定服務器 ip(可選)
服務器重啟后,路由器會重新分配 ip,這給使用帶來了很大的不方便。我們 *** 把服務器的地址綁定到某個固定的 ip。這里我們以綁定到 192.168.1.11 為例。
網絡參數文件位于 /etc/network/ 下面,執行如下命令:
suod gedit /etc/network/interfaces
添加以下內容
auto lo iface lo inet loopback auto enp0s31f6 iface enp0s31f6 inet static address 192.168.1.11 gateway 192.168.1.1 netmask 255.255.255.0
參數的意義如下:
enp0s316:自己網卡而名稱,可以通過 ifconfig 來查看
address:要綁定的 ip
gateway 和 netmastk:自己查看電腦的參數。
***,我們還要使配置生效
/etc/ini.d/network-manager restart ifdown enp0s31f6 ifup enp0s31f6
關于“如何部署 Samba 使 Linux 和 Windows 進行文件共享”這篇文章的內容就介紹到這里,感謝各位的閱讀!相信大家對“如何部署 Samba 使 Linux 和 Windows 進行文件共享”知識都有一定的了解,大家如果還想學習更多知識,歡迎關注丸趣 TV 行業資訊頻道。