歡迎您光臨本站 註冊首頁

Linux與Windows 通過samba互訪共享資源

←手機掃碼閱讀     火星人 @ 2014-03-12 , reply:0
   

關於samba網上有很多的資料,不過網上資料一般傾向於企業級別的伺服器搭建。最簡單的、最基本的個人pc之間的訪問,寫的比較少,網路資料的繁多也讓人無所適從,可能通常高手都不屑於寫太簡單文檔。我記錄下最簡單的配置,僅供參考。

 

一、目的:

 

1.linux訪問windows共享文件

 

2.windows訪問linux共享文件(user模式-需要輸入用戶名和密碼)

 

簡單描述:

只需要在linux伺服器上做samba服務的配置,兩者就可以互相訪問。

 

windows訪問linux通過網上鄰居來訪問,和訪問windows主機沒有區別。

 

linux訪問windows要通過mount工具來實現——把遠程windows上的共享文件掛載到本地目錄

 

二、操作系統版本:

 

1.windows機器-- windowsxp sp2

 

2.linux機器-- Fedora8

 

三、samba配置

 

假設我們已經安裝好了samba軟體包。沒有可以下載rpm包安裝或者通過yum安裝。samba配置關鍵就是對/etc/samba/smb.conf的編輯配置,還需要對/etc/samba/lmhost做配置。

 

samba配置根據安全方式,我們只配置兩種;

 

share方式——匿名方式,不需要用戶名和密碼就可以訪問共享資源

 

user方式—— 訪問需要用戶名和密碼

 

1、share方式

這種方式比較簡單,不過不安全,網路上所有人都可以訪問。

 

1)配置/etc/samba/lmhosts

內容:ip netbios

 

2)配置文檔:/etc/samba/smb.conf:

 

[global]

netbios=sambaserver #這個用了表示samba主機,和主機名不一樣

security=share #指定這個訪問方式

server string= samba server #對主機的描述

workgroup = workgroup # windows主機的所在工作組

#要share出來的文件

[test] #這個可以隨便寫

path=/test1

browseable=yes #能否在瀏覽器裡面訪問。可否http訪問

writable=yes #是否可寫

guest ok=yes # 客戶訪問

 

2、user方式

1)配置lmhosts,同share方式

 

2)添加samba用戶

這個samba用戶指的是,用於登錄samba主機的用戶,這個是在samba主機上設定。

 

注意:這個samba用戶首先必須是linux系統用戶,這個很好理解,你只有是linux上的系統用戶,你才能夠登錄linux主機,而對samba服務的訪問,實際上也是對linux主機的訪問。

 

a、首先,要添加一個linux系統用戶,根用戶是root,可以使用根用戶,也可以添加新用戶。我添加新用戶dudu

 

b、添加samba用戶。

 

執行命令:smbpasswd -a dudu # 然後輸入密碼,這個密碼是用來登錄samba的。

 

c、配置smb.conf:

#主機方面的一些參數

 

[global]

#主機名稱相關的參數

workgroup = WORKGROUP

netbios name = ergo_haier

server string = ergo's haier notebook

 

#登錄日誌

 

log file = /var/log/samba/%m.log

max log size = 50

 

#採取那種安全認證方式

 

security = user

 

#給密碼加密

encrypt passwords = yes

smb passwd file = /etc/samba/smbpasswd

 

#samba所有用戶信息

username map = /etc/samba/smbusers

 

#定義那些機器可以訪問,或者那些可以拒絕

hosts allow = 10.153.11.xx

#以上可以是網段,10.153.11. 這個代表10.153.11.0-255網段。

#也可以是多個網段

#以下是你想要共享的目錄設置

[haierdoc]

comment = Haier doc

path = /doc

browseable = yes

writable = yes

valid users = dudu

 

d、檢查配置

可以使用命令:testparm

 

執行后,回車,會列出你所有的配置,方便觀察。

 

配置完成後,重啟/etc/init.d/smb restart

 

四、linux和windows互相訪問

 

1.windows訪問linux

這個比較簡單,通過網上鄰居就可以,和訪問workgroup中的一台主機是一樣的,不多做介紹

 

2.linux訪問windows

如果windows有共享目錄,那麼需要我們通過mount命令,將遠程主機上的共享目錄掛載到本地目錄:

 

1)查看遠程主機共享目錄

Smbclient -L 遠程主機IP -U windows_user_name #注意 -U 後面是windows用戶名

 

輸入密碼,就會出現共享的目錄:

[root@ErgoN samba]# smbclient -L 10.153.11.1xx -U xx

Password:

Domain=[92D68C913D67417] OS=[Windows 5.1] Server=[Windows 2000 LAN Manager]

 

Sharename Type Comment

--------- ---- -------

G (G) Disk

centos5.1 Disk

IPC$ IPC 遠程 IPC

session request to 10.153.11.142 failed (Called name not present)

session request to 10 failed (Called name not present)

Domain=[92D68C913D67417] OS=[Windows 5.1] Server=[Windows 2000 LAN Manager]

 

Server Comment

--------- -------

 

Workgroup Master

--------- -------

 

2)掛載遠程資源

mount.cifs //10.153.11.1xx/centos5.1 /mnt -o user=xxx

 

NOTE:網上很多文章說用smbmount,其實這個命令在比較新的系統裡面已經沒有了,2.6內核以後應該都沒有了,使用上面的命令來代替。

 

也可使用 mount -t cifs .... cifs協議包括了smbfs協議。現在也沒有單獨的smbfs選項了。

 

可能出現問題

 

1.如果出現中文亂碼,可能是掛載字元問題,可以選擇不同字元掛載選項

 

2.如果出現不能寫入等問題,一般為許可權問題。

(責任編輯:A6)



[火星人 ] Linux與Windows 通過samba互訪共享資源已經有457次圍觀

http://coctec.com/docs/net/show-post-68255.html