注意——有关在Ubuntu10.10下安装VMTools的过程请参见日志“ubuntu10.10下安装VMTools”
1、联网,启动Ubuntu终端;(注:虚拟机的联网方式应该选择Bridged)
2、安装samba(sudo apt-get install samba);
3、安装smbclient(sudo apt-get install smbclient);(注:安装samba时,smbclient同时也被安装上了)
4、安装smbfs(sudo apt-get install smbfs);
5、共享群组可读写文件夹,假设你要共享的文件夹为: /home/bfx/share (注:bfx为Ubuntu的登录用户)
首先创建这个文件夹,代码:
mkdir /home/bfx/share
chmod 777 /home/bfx/share
6、备份并编辑smb.conf允许网络用户访问,代码:
sudo cp /etc/samba/smb.conf /etc/samba/smb.conf_backup
sudo gedit /etc/samba/smb.conf
在打开的smb.conf文件中,我并没有修改太多内容,只是在文件的最后加上了如下代码:
[share]
path = /home/bfx/share
public = yes
available = yes
browseable = yes
writable = yes
保存smb.conf文件,退出gedit。
注意:1)、并没有出现中文乱码的现象;
2)、smb.conf文件中相关项的说明:
[global]
#WINDOWS 中显示的工作组
workgroup=workgroup
#windows中显示的计算机名
netbios name=baileyking
#samba服务器的介绍
server string=welcome
#验证和登陆方式,有好多中,选share就不用设置用户和密码了
security=share
#在windows中显示出来的目录名
[download]
#设置共享目录放在哪里
path=/home/download
#是否可写
wirteable=yes
#是否可浏览
browseable=yes
#匿名帐户以guest用户登陆
guest ok=yes
这些内容都可以在“共享的文件夹”中自动配置。
7、重启samba(sudo /etc/init.d/smbd restart)
在Win下就可以看到并直接访问了,具体访问方法如下:
1)、在Ubuntu终端输入命令“ifconfig eth0”,查看虚拟机的本地IP,我的是“\\192.168.1.160”
2)、在winXP的运行框中输入“\\192.168.1.160”,则会弹出Ubuntu中的共享文件夹share,至此就可以实现主机WinXP和虚拟机Ubuntu的共享了,可以实现分别在两端对共享文件夹中的文件进行操作。
执行sudo /etc/init.d/smbd restart命令时网上给的都是samba,实际上在ubuntu是smbd。
注意:1)、添加共享文件夹可以在“系统——系统管理——共享的文件夹”里面设置,也可以直接编辑上面的smb.conf。
2)、也可以添加SMB账户。【我在修改smb.conf是并没有设置SMB账号,所以从WinXP直接就能登录】
添加SMB账号方法如下(可以不需要设置SMB账号):
a]使用前面的命令sudo gedit /etc/samba/smb.conf修改smb.conf文件
搜寻这一行文字代码:
# security = user
在其下方输入如下两行代码:
security = user
username map = /etc/samba/smbusers
b]将下列几行代码添加到文件的最后面,假设允许访问的用户为:bfx。而文件夹的共享名为share代码:
[share]
comment = Shared Folder with username and password
path = /home/bfx/share
public = yes
writable = yes
valid users = bfx
create mask = 0700
directory mask = 0700
force user = nobody
force group = nogroup
available = yes
browseable = yes
c]如果系统中当前没有bfx(我的ubuntu登陆账号,我直接用来作为网络访问账号,没有重新建账号)这个帐户,那么就要添加bfx这个网络访问帐户,代码:
sudo useradd bfx
要注意,上面只是增加了bfx这个用户,却没有给用户赋予本机登录密码。所以这个用户将只能从远程访问,不能从本机登录。而且samba的登录密码可以和本机登录密码不一样。现在要新增网络使用者的帐号,代码:
sudo smbpasswd -a bfx (为网络访问账号bfx添加访问密码,此密码可以与登陆ubuntu密码不同)
d]接下来新建网络访问账号存储文件smbusers,代码:
sudo gedit /etc/samba/smbusers
在新建立的smbusers文件内加入下面这一行并保存,代码:
bfx = “network username”
如果将来需要更改newsfan的网络访问密码,也用这个命令更改,代码:
sudo smbpasswd -a bfx
删除网络使用者的帐号的命令把上面的 -a 改成 -x。
e]测试参数,可以查看smb.conf文件中设置的参数,代码:
sudo testparm
f]重启smbd服务(注意ubuntu的/etc/init.d/目录下显示的是smbd文件,而非网上所列的mamba)
sudo /etc/init.d/smbd restart
g]使用smbd服务,方法见上边,只是多了输入网络访问账号和密码而已。
3)、以上讲到得都是共享ubuntu的文件,下面简要补充共享winXP的文件方法:
在winXP中使用创建共享文件的向导创建网络共享,ubuntu桌面上就会出现winXP下的共享文件夹,这样就可以在winXP下任意创建文件或文件夹,将其属性设置为共享,ubuntu就可以直接访问。
PS:这篇文章写完,突然有一天就意识到一点——使用U盘就不用配神马smbd了,真的是这样,把文件放到U盘中,就可以,只是需要来回切换罢了。