檢測安裝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