您好,登錄后才能下訂單哦!
1.簡介
Samba是在Linux和UNIX系統上實現SMB協議的一個免費軟件,由服務器及客戶端程序構成。SMB(Server Messages Block,信息服務塊)是一種在局域網上共享文件和打印機的一種通信協議,它為局域網內的不同計算機之間提供文件及打印機等資源的共享服務。SMB協議是客戶機/服務器型協議,客戶機通過該協議可以訪問服務器上的共享文件系統、打印機及其他資源。通過設置“NetBIOS over TCP/IP”使得Samba不但能與局域網絡主機分享資源,還能與全世界的電腦分享資源。
2.環境
操作系統:Red Hat Enterprise Linux Server release 7.2 (Maipo)
IP:10.0.1.16
安裝包:samba-4.6.4
3.部署
3.1 下載samba-latest.tar.zip文件
到官網http://www.samba.org下載最新版的samba源碼包(目前最新版本是samba-4.6.4)
3.2 安裝
A. 安裝依賴包和編譯環境
yum install gnutls-devel python python-devel python-lib* libacl-devel openldap-devel -y
yum install gcc icc ICL cc -y
B.用filezilla或者winscp把samba-latest.tar.zip上傳到/usr/local目錄下,然后解壓
tar -zvxf samba-latest.tar.zip
解壓后會多了一個samba-4.6.4目錄,然后進入samba-4.6.4目錄
cd samba-4.6.4
B. 運行./configure腳本偵測作業環境
C. 編譯安裝
make && make install
3.3 配置samba
默認是沒有smb.conf這個配置文件的,需要從安裝包samba-4.6.4/packaging/LSB/下復制smb.conf到/usr/local/samba/etc下,使用如下命令
cp packaging/LSB/smb.conf /usr/local/samba/etc/
3.3.1 配置共享目錄
vim /usr/local/samba/etc/smb.conf
默認共享home目錄,也可以按照對應格式自定義共享目錄,但是共享目錄要存在,例如
[
pub
]共享的路徑
comment = share to public 描述
path =
/share/time 共享路徑
valid
users
= test 訪問共享文件夾的用戶
write list = test 訪問共享文件夾的用戶組
printable = no 不允許打印
create mask = 0755 創建文件的權限
directory mask = 0755 創建目錄的權限
3.3.2 創建samba用戶
samba所使用的用戶,必須是系統用戶,并且需要加入到samba用戶中。例如:
#創建系統本地用戶
useradd test
passwd test
密碼設置為test
#創建samba用戶
pdbedit -a -u test #添加一個samba用戶
pdbedit -x -u test #刪除一個samba用戶
pdbedit -L #查看samba用戶
3.3.3 啟動samba
/usr/local/samba/sbin/smbd
netstat -anutp | grep smbd #查看是否啟動
3.3.4 創建自定義服務開機啟動
vim /lib/systemd/system/smb.service
添加
[Unit]
Description=samba
After=syslog.target network.target nmb.service winbind.service
[Service]
Type=forking
ExecStart=/usr/local/samba/sbin/smbd start
ExecReload=/usr/local/samba/sbin/smb_restart.sh
ExecStop=/usr/local/samba/sbin/smb_stop.sh
PrivateTmp=true
[Install]
WantedBy=multi-user.target
注:為避免格式問題,請手動輸入
3.3.5 創建smb_restart.sh,smb_stop.sh腳本
cd /usr/local/samba/sbin/
vim smb_restart.sh
添加
pid=`cat /usr/local/samba/var/run/smbd.pid`
kill $pid
/usr/local/samba/sbin/smbd
vim smb_stop.sh
添加
pid=`cat /usr/local/samba/var/run/smbd.pid`
kill $pid
注:為避免格式問題,請手動輸入
4.測試
啟動smb服務
#systemctl start smb
#systemctl restart smb
A. Linux客戶端測試
創建掛載點
mkdir /mnt/samba
賦予用戶寫權限
# setfacl -m u:test:rwx /share/time/
先掛載共享目錄
mount -t cifs //10.0.1.16/pub /mnt/samba -o username=test
如果出現如下報錯:
請執行命令:yum install cifs* -y
查看掛載是否成功
df -h
開機自動掛載
vim /etc/fstab
添加
//10.0.1.16/pub /mnt /mnt/samba cifs credentials=/etc/samba/test.passwd 0 0
vi /etc/samba/zhi.passwd ##防止密碼泄露,所以另建文件
#chmod 600 /etc/samba/test.passwd ##設置該密碼文件權限
#umount /mnt/samba ##卸載
B. Windows客戶端測試
開始-->運行-->輸入//10.0.1.16/pub
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。