Blog Details

Linux 作業系統 cutexyz > Blog > Linux 服務架設 > Linux Samba Service HOW-TO

Linux Samba Service HOW-TO

透過 Linux 的 samba service 我們可以讓 Linux 將某個資料匣分享到網路上(一般來說是指內網, 類似 windows 網路芳鄰), 那麼要如何進行設定呢? 我們以下就以一個超簡單的範例來做說明!!

安裝相關套件
sudo apt -y install samba samba-client samba-common

其中
samba-client, 這是用來讓你的 linux 成為別人的 client 去連到別人分享的資料匣
samba-common, 這個套件則主要提供了 samba 的主要設定檔 (smb.conf), 語法檢驗的測試程式

== 接下來要設定使用該服務的帳號 ==
設定不須登入/操作 Shell 的系統帳號 smbuser(範例), 這邊會問你密碼, 我們使用 "smbuser"
sudo adduser smbuser --shell /bin/false

這邊是設定給 samba 用的帳號所屬密碼, 跟上一行的帳號密碼只有帳號必須一樣, 密碼則可以不一樣喔!! 要特別注意
sudo smbpasswd -a smbuser

如果要移除使用者
移除 samba 服務內的帳號
smbpasswd -x smbuser
移除 linux 內給予 samba 服務擁有者的帳號
userdel -r smbuser

修改設定檔 
sudo nano /etc/samba/smb.conf

在檔尾加入以下設定內容(#註解可不要加入喔!!)
 [share]
 path = /home/smbuser 
# 這個是要分享的資料夾路徑, 記得要將他的整個資料匣權限設定為該帳號的喔
# 這邊的範例因為把分享匣的路徑設為 smbuser 的 home, 所以不用另外設定權限, 如果是另外新建立的資料匣
# 可以用 chown -R account:group 資料匣名稱 來正確設定權限
 available = yes
 valid users = smbuser #這個是可以使用這個分享資料夾的使用者,要具有 path 所指定的路徑的權限才行
 read only = no
 browseable = yes
 public = yes
 writable = yes

重啟 Samba Server
service smbd restart

在 Server 本機進行確認, 使用以下指令, 他會列出相關的資訊
smbclient -L localhost -N

設定完成之後, 接下來我們去 Client 端進行連線, 這邊採用 windows 與 linux 方式進行示範

== 使用 windows 連結 Samba server ==
打開檔案總管( File Explorer ), 在路徑處貼上如下內容
\\{Samba Server IP}\share

PS: 如果你的 VM 是架設在 windows 下, 因為 Windows OS 本身限制問題, 無法給予 445 通行!!
因此無法進行分享資料匣的連線, 請特別注意!!!



== 使用 linux 連結 Samba server ==
建立一個要掛在的路徑
sudo mkdir -p /mnt/share

進行連線設定
sudo mount -t cifs  //{Samba Server IP}/share /mnt/share -o username=smbuser,password=123456789

如果不用了, 可以卸載
umount /mnt/share

Leave A Comment

All fields marked with an asterisk (*) are required