歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> CentOS下Samba配置

CentOS下Samba配置

日期:2017/2/28 15:56:58   编辑:Linux教程
檢測安裝Samba服務

(1).檢查Samba服務包是否已安裝:
rpm -qa | grep samba

(2).如未安裝,則插入第一張安裝盤,執行:
mount /mnt/cdrom
cd /cdrom/RedHat/RPMS

(3).進入目錄後安裝Samba文件:
注意:運Samba至少需要三個文件,分別為:
samba-common-2.2.7a-7.9.0.i386.rpm //服務器和客戶端均需要的文件
samba-2.2.7a-7.9.0.i386.rpm //服務器端文件
samba-client-2.27a-7.9.0.i386.rpm //客戶端文件

安裝上述3個文件.
rpm -ivh samba-common-2.2.7a-7.9.0.i386.rpm //另外兩個省略不寫

(4).安裝完成後彈出光驅:
cd;eject


2.設置密碼文件.

(1).此設置的作用是將Linux中的系統用戶(/etc/passwd)導入到samba密碼文件中
(/etc/samba/smbpasswd)

cat /etc/passwd | mksmbpasswd.sh > /etc/samba/smbpasswd

(2).接下來給smbpasswd等文件及文件夾設置訪問權限.
chown root:root /etc/samba/smbpasswd
chmod 600 /etc/samba/smbpasswd
chmod 600 /etc/samba
查看一下:
ll -d etc/samba

(3).如果您想手動添加一個用戶,則首先要保證Linux中該用戶存在,步驟:
useradd austin
passwd austin
smbpasswd -a austin //此步為添加Samba用戶


3. 配置/etc/samba/smb.conf文件.

雖然文件內容眾多,但需要改動的不多,一般為按需所配:

(1).修改[global](全局配置參數)

workgroup = workgroup //工作組名稱

server string = samba server %v at %h //設置服務器名稱.%v為版本號,%h為運行
smb服務的主機名

host allow = 192.168.80. 192.168.70. //允許訪問服務器的主機

client code page = 939 //支持簡體中文共享名

上述四條為比較重要的.其他配置大家可按需按情況修改.


(2).創建共享文件夾.

由於用戶使用權限有多種(讀,寫,執行),而又訪問者又有多種(用戶,組),所以創建共享資源的訪問方式有多種,下面暫舉幾例:

例一: 建立資源,使登陸到該服務器的用戶均有權使用該空間(包括讀,寫)
<1>.編輯smb.conf文件
vi smb.conf
[resource]
comment = local resource
path = /var/samba/resource
read only = no
public = yes //允許guest用戶訪問

<2>. 建立共享文件夾
mkdir -p /var/samba/resource

<3>. 由於任何人都能使用,所以得給該文件夾設置訪問權限.
chmod 707 /var/samba/resource

<4>. 如果想在該文件夾中放置預共享文件,而又不想花
時間從別的文件夾中cp過來,此時可以使用指針.

比如想共享/usr/share/doc中的文件,則可以:

ln -s /usr/share/doc /var/samba/resource/doc

進入/var/samba/resource ls一下,是不是出現指針文件了!

例二: 建立一資源,只能讓用戶austin全權訪問.
<1>. 編輯smb.conf文件
vi smb.conf
[austin]
comment = austin
path = /var/samba/austin
vaild users = smz //只允許austin訪問
public = no
writable = yes

<2>. 建立共享文件夾
mkdir -p /var/samba/austin

<3>. 由於只能讓austin使用,所以得給該文件夾設置訪問權限.
chown austin:austin /var/samba/austin
chmod 700 /var/samba/austin
此時該文件夾屬於austin用戶,並且只能由austin用戶訪問.

例三: 建立一資源,只能讓root,zhang和wang訪問.
<1>. 編輯smb.conf文件
vi smb.conf
[zhang wang]
comment = zhang wang
path = /var/samba/zhangwang
vaild users = zhang wang
public = no
writable = yes
creat mask = 0707

<2>. 建立共享文件夾
mkdir -p /var/samba/zhangwang

<3>. 給該文件夾設置訪問權限.
chmod 707 /var/samba/zhangwang
此時該文件夾只能root,zhang,wang訪問了.

例四: 建立一資源,讓指定的組group2中的用戶訪問.
<1>. 編輯smb.conf文件
vi smb.conf
[group]
comment = group2
path = /var/samba/group2
public = yes
writable = yes
write list = @group2 //設置讀寫訪問用戶列表

<2>. 建立共享文件夾
mkdir -p /var/samba/group2

<3>. 給該文件夾設置訪問權限.
chown group2.group2 /var/samba/group2
chmod 770 /var/samba/group2
此時該文件夾只能由group2中的用戶訪問了.


(3). 以上為創建共享文件夾,下面為創建共享打印機.

<1>. 配置打印機的方面有很多,比如使用redhat-config-printer命令即可調出配置
菜單.

<2>. 當然smb.conf中也要設置啊:

[global]
printcap name = /etc/printcap //配置文件路徑

[printers]
writable = no
guest ok = yes //guest可用
browseable = no //不可浏覽
ptrintable = yes
path = /var/spool/samba //隊列位置
printer admin = root //打印機管理員

其他配置不變或按情配置

接下來再添加print驅動設置:
[print$]
comment = printer drivers
path = /etc/samba/drivers
browseable = yes
guest ok = no
read only = yes
write list = root

接著創建drivers文件夾: mkdir -p /etc/samba/drivers

最後給用戶准備打印機驅動,並啟動打印共享:
cupsaddsmb -a -U root //-a為共享所有打印機 -U為以root身份執行
cupsaddsmb命令


4. 測試並啟動Samba服務器.
testparm //測試
service smb start
pstree | grep mbd //查看是否啟動



5. 訪問Samba

(1). 從Windows端訪問.
使用"網絡鄰居"訪問即可.

(2). 訪問時可以使用IP地址,也可以使用主機名訪問.
vi /etc/samba/lmhosts
192.168.80.35 smz_f91 //創建主機名與IP的映射

訪問時,使用smbclient命令,使用方法如下:

smbclient -L IP/主機名 [-U 用戶名] //浏覽Linux/Windows資源列表

smbclient -L 192.168.80.35 //浏覽Linux

smbclient -L 192.168.80.45 -U administrator //浏覽Windows

smbclient //IP/共享文件夾名 -U 系統用戶名 //詳細查看某一共享資源的
內容

smbclient //192.168.80.45/123 -U root/administrator //以root或administrator身份
登陸45主機訪問共享文件夾123
Copyright © Linux教程網 All Rights Reserved