windows下以指定用戶訪問SMB服務器進行讀寫


需求:最近要開發某系統前端界面,但是該系統是部署在linux服務器上,前端是用php開發,實時調試運行需要linux下系統環境支持,

           每次修改都需要手動傳到服務器上,尤其是debug階段,每修改一點就要傳一次,甚是麻煩,一開始使用subversion,比手動

           上傳是簡單點,后來采用UltraEdit的ftp遠程編輯,但除了編輯功能外,其他功能都沒了,不夠用;於是考慮是否將服務器上的

           指定目錄映射到win7本地,然后借助ultraEdit的強大編輯能力進行遠程編輯,繼而直接在瀏覽器端輸出進行調試,采用samba,

           要解決對指定目錄以指定用戶指定權限進行讀寫操作。

環境:Ubuntu server 12.04.2 X86_64   

           需要共享的目錄是/opt/zlgci   目錄的用戶和群組分別是 zlgci:root

           新建目錄默認是drwxr-xr-x   755 文件是-rw-r--r--    644

           強制遠程也是使用zlgci:root對目錄進行讀寫


首先當然是要安裝samba了,呵呵:

1
sudo  apt-get  install  samba smbfs -y

====================================================

假設你要共享的文件夾為: /home/ray/share

首先創建這個文件夾

1
2
mkdir  /home/ray/share
chmod  777  /home/ray/share

====================================================

備份並編輯smb.conf允許網絡用戶訪問

1
2
sudo  cp  /etc/samba/smb .conf  /etc/samba/smb .conf_backup
sudo  gedit  /etc/samba/smb .conf

添加如下代碼:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
security = user
username map =  /etc/samba/smbusers
  
[Share]
comment = Shared Folder  for  debug  in  remote win client
netbios name=zlgciserver
path= /opt/zlgci
valid  users =zlgci
create mask=0644
directory mask=0755
force user=zlgci
force group=root
public= yes
writable= yes
browseable= yes
available= yes

粗略的解釋一下,1,2行需要添加在[global]那一節里面,是啟用user認證機制

5行是注釋,6行是在win端網絡鄰居能夠查看到的名字

7行是要共享的目錄,

8行是能夠訪問該共享的用戶,可用通配符

9,10行是新建文件目錄時的權限

11,12行表示進行讀寫時映射到服務器端對應的用戶和用戶組----很關鍵

14行表示可寫,15行表示可以瀏覽。

找到[global]把 workgroup = MSHOME 改成workgroup = WORKGROUP

就是改為跟你的win在同一個工作組

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

現在要添加newsfan這個網絡訪問帳戶。如果系統中當前沒有這個帳戶,那么
代碼: sudo useradd newsfan
要注意,上面只是增加了newsfan這個用戶,卻沒有給用戶賦予本機登錄密碼。所以這個用戶將只能從遠程訪問,不能從本機登錄。而且samba的登錄密碼可以和本機登錄密碼不一樣。

現在要新增網絡使用者的帳號:
代碼: sudo smbpasswd -a newsfan

更改newsfan的網絡訪問密碼也是一樣,刪除網絡使用者的帳號的命令把上面的 -a 改成 -x

sudo gedit /etc/samba/smbusers

在新建立的文件內加入下面這一行並保存
代碼: newsfan = "network username"

======================================

這里是指定用戶訪問,因而無需新建用戶,直接修改對應用戶在samba的密碼

1
2
3
sudo  smbpasswd -a zlgci
sudo  testparm
sudo  /etc/init .d /smbd  restart

第一行執行后兩次輸入密碼,

第二行是驗證samba的配置文件是否正確。
最后退出重新登錄或者重新啟動一下機器。


在win端訪問,兩種方式,一種是直接在運行框中輸入    

1
\\xx.xx.xx.xx

第二種是映射網絡驅動器,點開我的電腦,在中間部分點擊映射網絡驅動器后,彈出的框中輸入

1
\\xx.xx.xx.xx\share               

       



免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM