Try   HackMD

教學: linux環境下設置samba並設定windows共享資料夾

緣起

一開始是工作上有透過samba server搭建測試環境的需求, 當中學習到的手法就應用在實現自家的
linux to windows檔案共享.
這篇既是教學分享, 也是做個筆記; 紀錄自己的學習軌跡.

註: 以下設定環境皆是在相同網域(內網)之下

流程

  • 1 server端安裝samba (linux)
  • 2 設定使用者資訊
  • 3 編輯samba config
  • 4 client端相關設定 (windows)

server端安裝samba (linux)

  • server端安裝Samba Server
    sudo apt install samba

筆者個人的習慣, 會先備份設定檔, 避免改錯卻無法回復的狀況
以下操作與安裝套件可根據個人狀況做決定

  • 建立備份用資料夾
    mkdir ~/config_backUp

  • 將samba server設定檔同步備份至資料夾
    rsync -avP /etc/samba/smb.conf ~/config_backUp/


設定使用者資訊

  • 設定使用者id和密碼
    sudo smbpasswd -a user-id (筆者這邊使用yu1)

重要: 使用者id必須與linux系統內存在的user相符, 且接下來輸入的密碼, 即client端登入共享資料夾時所需要輸入之密碼


編輯samba config

  • 開啟設定檔 (也可使用vim以外的編輯器)
    vim /etc/samba/smb.conf

  • 拉到文件最底下, 並新增:

​​​​[shareFromLinux]
​​​​path = /home/yu1/shareFromWindows "linux server中, 欲分享檔案實際存放的路徑"
​​​​available = yes
​​​​guest ok = no
​​​​browseable = yes
​​​​writable = yes
​​​​valid users = yu1 root 
  • 存檔後離開, 並重新啟動samba server服務:
    sudo /etc/init.d/smbd restart

client端相關設定

windows環境下(10, 11)要注意, 必須先開啟SMB服務

​​​​* 打開"控制台"
​​​​* 選擇"程式集"
​​​​* 在"程式與功能"分類下, 選擇"開啟或關閉Windows功能"
​​​​* 選擇"SMB 1.0/CIFS 檔案共用支援"項目並點選開啟

如圖
重新啟動之後就會開啟服務

  • 打開資料夾, 輸入samba server端所在ip address和先前設定之服務名稱
    \\192.168.xxx.xxx\shareFromLinux

    密碼為先前於samba服務中設定之密碼