Samba是Ubuntu和Windows进行网络共享的工具,比如分享打印机,互相之间传输资料文件。
安装samba
sudo apt-get install samba
查看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.8~dfsg-1 SMB/CIFS file, print, and login server for U
un samba-client <none> (no description available)
ii samba-common 2:3.5.8~dfsg-1 common files used by both the Samba server a
ii samba-common-b 2:3.5.8~dfsg-1 common files used by both the Samba server a
un samba-gtk <none> (no description available)
un samba-ldb-tool <none> (no description available)
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)
un samba4-common- <none> (no description available)
最前面的ii表示安装成功。可以看到samba是安装好了。
配置win7访问linux
第一步创建共享目录: 比如要创建/home/用户名/share首先创建这个文件夹 (这个用户名就是你的用户名,比如xiaoming)
mkdir /home/用户名/share (新建share文件夹)
chmod 777 /home/用户名/share (设置该文件夹的权限使其让所有用户可读可写可运行)
备份并编辑smb.conf允许网络用户访问 (养成随时备份的好习惯,在关键的时候你会发现当初的备份是多么的明智!)代码:
sudo cp /etc/samba/smb.conf /etc/samba/smb.conf_backup
sudo gedit /etc/samba/smb.conf
搜寻这一行文字代码:
; security = user
用接下来这几行取代
security = user(这里也可以设置为share,这时访问就不需要用户名和密码了。那么就不需要映射用户和添加用户与密码)
username map = /etc/samba/smbusers
将下列几行新增到文件的最后面,假设允许访问的用户为:xiaoming。而文件夹的共享名为 Share #这里之所以这么写就是因为后面大家要创建一个smb用户xiaoming,并且让win7用户通过这个new来和大家进行数据交流。当然你可以写为自己喜欢的名字 只不过前后要一致就可以了
[Share]
comment = Shared Folder with username and password
path = /home/用户名/share
public = yes
writable = yes
valid users = xiaoming
create mask = 0700
directory mask = 0700
force user = nobody
force group = nogroup
available = yes
browseable = yes
然后顺便把这里改一下,找到[global]把 workgroup = MSHOME 改成 :(注意,这里的WORKGROUP是共享中的工作组名称)
workgroup = WORKGROUP
display charset = UTF-8
unix charset = UTF-8
dos charset = cp936
后面的三行是为了防止出现中文目录乱码的情况。现在要添加new这个网络访问帐户。一旦系统中当前没有这个帐户,那么
sudo useradd xiaoming
要注意,上面只是增加了new这个用户,却没有给用户赋予本机登录密码。所以这个用户将只能从远程访问,不能从本机登录。并且samba的登录密码可以和本机登录密码不一样。现在要新增网络使用者的帐号:
sudo smbpasswd -a xiaoming (设置你的new密码,这个密码不是开机登录时候用的,是你要访问WIN共享文件或者WIN共享文件访问你的时候要填的密码) sudo gedit /etc/samba/smbusers
在新建立的文件内加入接下来这一行并保存
new = “network username”
一旦将来需要更改new的网络访问密码,也用这个命令更改
sudo smbpasswd -a xiaoming
删除网络使用者的帐号的命令把上面的 -a 改成 -x sudo smbpasswd -x xiaoming
测试并重启samba
sudo testparm
sudo /etc/init.d/samba restart
这里注意,比如我的安装后/etc/init.d/中就没有samba(为什么没有我还不清楚,清楚的朋友告知以下,:-)),这重启的命令就不再是这个,而是接下来的Linux命令:
sudo smbd restart
sudo nmbd restart
这样,在win7命令行中输入\linux ip,就可以访问你linux下的文件了。