Linux和Win7之间的文件共享

参考链接:http://www.linuxidc.com/Linux/2011-09/43848.htm 

http://apps.hi.baidu.com/share/detail/24793837

samba 是ubuntu和windows之间实现网络共享的工具。

1. 安装samba 

sudo apt-get install samba
查看安装是否成功:
sudo dpkg -l samba*

输入上面命令会看到如下输出:

Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name           Version        Description
+++-==============-==============-============================================
ii  samba          2:3.5.11~dfsg- SMB/CIFS file, print, and login server for U
un  samba-client   <none>         (no description available)
ii  samba-common   2:3.5.11~dfsg- common files used by both the Samba server a
ii  samba-common-b 2:3.5.11~dfsg- common files used by both the Samba server a
un  samba-tools    <none>         (no description available)
un  samba4         <none>         (no description available)
un  samba4-clients <none>         (no description available)
un  samba4-common  <none>         (no description available)
前面显示ii表示安装成功了。

2.创建共享目录

假设用户名为user_z

mkdir /home/user_z/share (创建share文件夹用来共享)
chmod 777 /home/user_z/share (更改chare的文件权限为所有用户可读可写可运行)

3. 备份并编辑smb.conf

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

找到 Authentication参数, 设置 security。

security 的设置可以是为 share, 也可以为 user。设置为 share时,访问不需要用户名和密码,也不需要映射用户和添加用户密码。但是为了安全考虑,此处我们设置为 user, 并设置访问密码

security = user(这里也可以设置为share,这时访问就不需要用户名和密码了。那么就不需要映射用户和添加用户与密码)
username map = /etc/samba/smbusers

设置[share]参数,假设允许访问share文件夹的网络用户名是guest_z(后面要相应地添加该用户)

[Share]
comment = Shared Folder with username and password
path = /home/user_z/share
public = yes
writable = yes
valid users = guest_z
create mask = 0700
directory mask = 0700
force user = nobody
force group = nogroup
available = yes
browseable = yes

找到Global Settings,设置:
workgroup = WORKGROUP #注意,这里的WORKGROUP是共享中的工作组名称
#下面的三行是为了防止出现中文目录乱码的情况
display charset = UTF-8
unix charset = UTF-8
dos charset = cp936


4.添加网络账户guest_z
sudo useradd guest_z
要注意,上面只是增加了new这个用户,却没有给用户赋予本机登录密码。所以这个用户将只能从远程访问,不能从本机登录。而且samba的登录密码可以和本机登录密码不一样。现在要新增网络使用者的帐号:
sudo smbpasswd -a guest_z
(设置你的new密码,这个密码不是开机登录时候用的,是你要访问WIN共享文件或者WIN共享文件访问你的时候要填的密码)

5. 编辑smbusers文件,(若第一次添加用户,此文件可能不存在,输入下面命令,系统会为我们新建一个smbusers文件)
sudo gedit /etc/samba/smbusers
在smbusers文件中加上
new = “network username”
保存,退出。

删除网络使用者的帐号的命令把上面的 -a 改成 -x;如 sudo smbpasswd -x guest_z

6. 测试并重启samba,Samba服务会同时启动两个服务,其中smbd主要用来管理共享出来的目录,nmbd主要用来解析NetBIOS名。在Windows系统中, 主机可以被加入一个组中,这样每个主机都必须有一个名字,这个名字是用于在网上被标志的名,并非机器的主机名,将其称为NetBIOS名。其中nmbd进 程是随着smbd进程启动而启动。
sudo testparm #测试
sudo smbd restart
sudo nmbd restart
这样,在win7命令行中输入\\linux ip,就可以访问你linux下的文件了。

7.遇到的访问错误:

“multiple connections to a server or shared resource”, 一种可能性如下:

(链接:http://social.msdn.microsoft.com/Forums/en-US/biztalkgeneral/thread/aeeb452d-0254-4bc2-a598-20f1f57ee8e0/

The network folder specified is currently mapped using a different 
user name and password. To connect using a different user name and 
password, first disconnect any existing mappings to this network 
share. 

To do this

net use * /delete

Press 'Y' on keyboard





發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章