Ubuntu samba的安裝及使用方法
說明
本文僅在Ubuntu系統上進行了安裝,centOS系統等存在一定差異,讀者可參考其他資源進行分析
安裝
sudo apt-get update
sudo apt-get install samba
配置
指定賬號的訪問
- 選擇一個共享路徑,假設爲/home/work/sharedir,不存在的情況下可以自己創建
sudo mkdir -p /home/work/sharedir
- 添加一個可訪問用戶到Ubuntu系統中,如smbuser,若存在則不需要創建
sudo useradd smbuser -s /usr/sbin/nologin
- 修改文件權限使得smbuser用戶能夠訪問共享路徑
sudo chown smbuser:smbuser /home/work/sharedir
- 將用戶smbuser添加到samba的smbpasswd file中(即在samba服務中註冊該賬戶)
sudo smbpasswd -a smbuser
#後續設置登錄密碼,用於遠程訪問
- 修改samba配置文件(/etc/samba/smb.conf)
# 打開文件
sudo vim /etc/samba/smb.conf
#在文件尾部添加以下信息,並保存(vim中:wq保存)
[secret] #共享目錄名,訪問時的展示名
comment = Secret File #該共享目錄的描述
path = /home/work/sharedir #訪問的實際路徑,前面設置的
valid users = smbuser #設置可訪問的用戶,此處爲前面添加的用戶smbuser(注意users不要拼寫錯誤)
guest ok = no #是否允許訪客,否
writable = yes #可寫,是
browsable = yes #可瀏覽,是
- 重啓服務,使上述設置生效
sudo service smbd restart
sudo service nmbd restart
#或者以下方法
sudo restart smbd
sudo restart nmbd
匿名訪問
匿名訪問的設置和上述指定賬號的類似
- 共享路徑設置,此處選擇的示例共享文件夾爲/home/work/shareAll,若存在不需要再次創建
sudo mkdir -p /home/work/shareAll
- 修改共享路徑的權限(按需操作)
默認創建的路徑權限是777 - $(umask)的結果,一般爲只讀權限
#對目錄的Others權限添加w(寫)權限
sudo chmod o+w /home/work/shareAll
- 修改samba配置文件(/etc/samba/smb.conf)
# 打開文件
sudo vim /etc/samba/smb.conf
# 尾部寫入以下內容並保存
[share]
comment = Ubuntu File Server
path = /home/work/shareAll
browsable = yes
guest ok = yes
read only = no
- 重啓服務
sudo service smbd restart
sudo service nmbd restart
#或者以下方法
sudo restart smbd
sudo restart nmbd
訪問
mac訪問
- 在finder(訪達,文件管理器)中用快捷鍵 cmd + k 打開鏈接對話框輸
- 輸入smb://IP(部署了samba服務的機器的ip地址)
- 選擇訪客,可以訪問設置的匿名目錄
- 選擇用戶,並輸入對應的用戶名(smbuser)密碼,可訪問指定賬戶的目錄
Linux訪問(ubuntu示例)
- 命令行掛載法,和掛載硬盤無本質差異
sudo mount -t cifs //ip/username local_dir -o user=xxx,passwd=xxx
# username是允許訪問的賬戶此處可爲smbuser
# local_dirs是掛載到本地的地址
# user=xxx指的是當前的用即user=smbuser
# passwd=xxx指的是用戶smbuser配對的密碼
# 解除掛載
sudo umount local_dir
- 圖形界面手動加載法
在ubuntu的文件管理器的網絡設備中添加該設備即可,參考鏈接
windows訪問
- 調出運行 win+r 快捷鍵 (也可在文件管理器的地址欄中執行以下操作)
- 輸入\\samba服務的地址
- 輸入對應的賬號密碼(指定用戶登錄需要,匿名登錄不需要)
windows用戶登錄會存在一些問題(常見的是:windows無法訪問),網上有一些解決方法,由於很少使用windows系統,沒有過多瞭解處理方法。
輔助命令
# 查看samba用戶列表
pdbedit -L
# 對samba用戶進行管理(用戶已經在系統中創建)
smbpasswd -h #查看支持的命令列表
# 異常時可查看日誌情況
cat /var/log/samba/log.%m