Samba Server 安裝及設定
BUBU 因開發環境是在 Linux 上面,所很常使用網路芳臨方式去連線使用這樣子比較好方便測試及開發。
安裝過程
CentOS 7
yum install samba samba-client samba-common -y
CentOS 8
dnf install samba samba-client samba-common -y
Debian \ Ubuntu
apt install samba
設定 Samba 先備一份設定檔
cp /etc/samba/smb.conf /etc/samba/smb.conf.orig
進到 samba 目錄下設定
vim /etc/samba/smb.conf
[global]
workgroup = WORKGROUP
security = user
netbios name = centos
passdb backend = tdbsam
printing = cups
printcap name = cups
load printers = yes
cups options = raw
[www]
path = /usr/share/nginx/html/ #分享的路徑
browsable =yes
writable = yes
guest ok = yes
read only = no
valid users = @smbgrp #群組權限
force user = nginx #權限
設定完之後存檔,啟動及設定自動啟動服務
CentOS 系統
systemctl enable smb.service ; systemctl enable nmb.service
systemctl restart smb.service ; systemctl restart nmb.service
Debian \ Ubuntu 系統
systemctl enable smbd ; systemctl enable nmbd
systemctl restart smbd ; systemctl restart nmbd
設定使用者群組及帳號
groupadd smbgrp #群組
useradd srijan -G smbgrp #使用者帳號並且加入該群組
smbpasswd -a srijan #使用者密碼
畫面如下
[root@server1 samba]# smbpasswd -a srijan
New SMB password:<--yoursambapassword
Retype new SMB password:<--yoursambapassword
Added user srijan.
- 到 win10 去輸入 \192.168.1.1 ,跳出此畫面輸入剛剛建立的帳號及密碼就可以開始使用了
補充說明
因為只有一個人會使用的話,那可以設定成無密碼方式來連線,前提之前是資料如果不是很重要的話
- 設定檔
[global]
workgroup = WORKGROUP
security = user
netbios name = thinkphp
#passdb backend = tdbsam
map to guest = bad user
printing = cups
printcap name = cups
load printers = yes
cups options = raw
[www]
path = /var/www/html/
browsable =yes
writable = yes
guest ok = yes
read only = no
- 分享的目錄要給於權限
chmod -R 777 html/
- 將現行帳號加入新的群組裡面
usermod [參數] [群組名稱] [使用者名稱]
usermod -g smbgrp username
- 參數說明
選項與參數:
-c :後面接帳號的說明,即 /etc/passwd 第五欄的說明欄,可以加入一些帳號的說明。
-d :後面接帳號的家目錄,即修改 /etc/passwd 的第六欄;
-e :後面接日期,格式是 YYYY-MM-DD 也就是在 /etc/shadow 內的第八個欄位資料啦!
-f :後面接天數,為 shadow 的第七欄位。
-g :後面接初始群組,修改 /etc/passwd 的第四個欄位,亦即是 GID 的欄位!
-G :後面接次要群組,修改這個使用者能夠支援的群組,修改的是 /etc/group 囉~
-a :與 -G 合用,可『增加次要群組的支援』而非『設定』喔!
-l :後面接帳號名稱。亦即是修改帳號名稱, /etc/passwd 的第一欄!
-s :後面接 Shell 的實際檔案,例如 /bin/bash 或 /bin/csh 等等。
-u :後面接 UID 數字啦!即 /etc/passwd 第三欄的資料;
-L :暫時將使用者的密碼凍結,讓他無法登入。其實僅改 /etc/shadow 的密碼欄。
-U :將 /etc/shadow 密碼欄的 ! 拿掉,解凍啦!
參考相關網頁
- Samba Server Installation and Configuration on CentOS 7
- How to Install Samba4 on CentOS 7 for File Sharing on Windows
- CentOS 7下Samba的安裝與配置
- centos7安裝使用samba服務器免密碼登錄簡單配置
- 第十三章、Linux 帳號管理與 ACL 權限設定
- [system]如何在Linux中把某個user加入群組 Howto: Linux Add User To Group
- How to Set Up a Samba Server on Debian 10 Buster
- Debian / Ubuntu 安裝設定 Samba