Samba/從 Shell 使用 Samba 配置工作組
安裝 Samba 後,你需要配置它
Samba 的配置透過編輯 smb.conf 檔案進行,該檔案通常位於 /etc/samba/ 目錄下。 通常有一個 smb.conf.example 檔案,該檔案有很好的註釋,可以幫助你配置伺服器。 只需編輯它並儲存為 smb.conf 即可輕鬆啟動伺服器。
要啟動 samba,請啟動其兩個守護程序,smbd 和 nmbd。
現在,你的電腦的共享目錄和檔案也應該可以在你的 Windows 網路(我的網路位置)上檢視。
要在 Linux 環境中檢視 Windows 共享,請執行 smbtree 命令。
本主題分叉成兩個分支
- 伺服器(檔案、列印等)
- 域控制器
當然,這是一個過度簡化。 你可以將這些方法結合起來,但現在保持簡單,以避免不必要的麻煩。
- 檔案伺服器由網路中由 smbd 守護程序控制的計算機共享組成 - 檔案、印表機、裝置、佇列等。
smbd 的作用是負責授予或拒絕對這些部分的受控訪問。
配置和安裝 Samba 的方法有很多。 最好是保持簡單,關注你的需求。 對於匆忙的系統管理員,甚至窮人,我建議使用一些基本方法,將複雜性和安全調整推遲到以後的迭代。
簡而言之,它是一個用於集中任務的獨立伺服器:檔案和列印服務。
備份 smb.conf 中的原始檔案
# cd /etc/samba # mv smb.conf smb.conf.orig # touch smb.conf
並將這些行插入新的檔案中
[global] workgroup = SAMBAGRP netbios name = SAMBAKISS security = SHARE passdb backend = guest [data] comment = Public Data path = /srv/myshares read only = no
此方法只需要一個帳戶 - guest - 才能連線。 要新增 guest 帳戶,請按照指令碼操作
- 在 Unix 系統上建立 guest 帳戶
- 將 shell 更改為 false 來阻止本地訪問
- 從 guest 帳戶中刪除密碼
adduser 指令碼非常適合
# adduser --home /dev/null --shell /bin/false --no-create-home --uid 65533 --disabled-password guest
- 建立或對映 Samba 帳戶
# smbpasswd -a guest New SMB password: (type ENTER) Retype new SMB password: (type ENTER) Added user guest.
[TODO]
在啟動之前,最好檢查主機上執行的 Samba 部分
$ ps ax ¦ grep .*mbd
通常有兩個程序,nmbd 和 smbd(smbd 例項的數量和守護程序的路徑可能有所不同)。 這表明 Samba 正在執行。
$ ps ax ¦ grep mbd 29402 ? Ss 0:03 /usr/sbin/nmbd -D 29404 ? Ss 0:00 /usr/sbin/smbd -D
另一種方法(更復雜)需要 root 許可權
$ sudo smbcontrol nmbd ping PONG from pid 29402 $ sudo smbcontrol smbd ping PONG from pid 29407 (number of smbd daemons may vary)
Samba 的主要部分是名為 smbd 和 nmbd 的守護程序。
- smbd:負責檔案、登入、共享等
- nmbd:處理名稱
當使用 Samba 套件時,你是在向這些守護程序傳送請求,主要是向 smbd 傳送請求。
Samba 使用檔案來儲存其控制。 主要關注兩種型別的檔案:平面檔案和微不足道的資料庫檔案。
必須建立和初始化使用者資料庫,並使用共享和系統引數準備主配置檔案。 在嘗試實現實際的生產站點之前,最好閱讀一下現有文件,識別並可能寫下說明。
通常,Samba 伺服器是基於即時啟動和遺忘哲學啟動的,後來(每年一次)不得不匆忙恢復同一伺服器,卻發現你記不起如何新增使用者、調整等。
- 檢查 smb.conf
在配置或更改 smb.conf 後,建議在啟動之前測試修改。 你可以透過執行並閱讀可能的錯誤訊息或異常來做到這一點
$mybox:~$ sudo testparm
- 啟動/停止 Samba
實際上,根據你的發行版,你將執行一個之前準備好的批處理檔案來啟動 Samba,該檔案駐留在啟動指令碼集中。
基於 Debian 的發行版使用
$mybox:~$ sudo /etc/init.d/samba start # starts samba
$mybox:~$ sudo /etc/init.d/samba stop # stops samba
- 一步重啟並檢查
# /etc/init.d/samba restart && ps ax | grep mbd
- 新增/刪除使用者
[TODO]
Using smbpasswd to - add user - change password
- 檢查日誌檔案
[TODO]
- 備份 smb.conf 和 tdb 資料庫
[TODO]