VMware 与Ubuntu通过samba服务器共享文件
Linux和windows在虚拟机下文件共享有很多种方式,常用的有使用VMware Tools共享和Samba服务器进行共享
个人觉得Samba比VMware Tools方便很多,特别是在linux-server中。
利用sudo命令在liux上安装Samba服务器
sudo apt-get install samba samba-common sudo apt-get install system-config-samba cifs-utils
添加samba用户
sudo useradd samba_aa # 添加一个用户,samba_lennon为用户名 sudo smbpasswd –a samba_aa
注意:添加的用户必须是要存在的ubuntu用户,否则可能会出现:
Failed to add entry for user user1.
创建一个共享目录(自定义)
mkdir ~/home/share
配置服务器:
配置文件:/etc/samba/smb.conf
备份: cp /etc/samba/smb.conf /etc/samba/smb.conf.bak
文件中相关属性如下
sudo vi /etc/samba/smb.conf
在配置文件中添加一下代码
[share] path=/home/share available = yes browseable = yes public = yes writable = yes valid users = samba_aa create mask = 0700 directory mask = 0700 force user = nobody force group = nogroup
在global 里修改workgroup 这个与你当前计算机的要一致,具体查看方法请百度
workgroup = WORKGROUP
注意这里的工作组一定要正确填写!否则登陆不上!
其他设置:【找到相应的位置进行修改】
usershare allow guests = no #map to guest = bad user
重启服务器
sudo /etc/init.d/samba restart
测试
smbclient -L //localhost/share 或者 smbclient -L //127.0.0.1 -U samba_lennon //这时输入的密码就是你刚才设置的samba密码
在windows中访问共享目录
通过ifconfig获取ip地址
在你的电脑文件管理里选择映射网络驱动器
目录输入:\\ ip地址
回车
等待响应,然后输入你刚刚创建的用户名和密码
备注: 配置简单描述
全局设置部分
security = user 这行设置了samba的安全等级,Samba一共可以设置四个安全登记,由底到高分别为: share 这个选项表示任何人都可以不需要输入密码登录。 user 这个是Samba的默认级别,要求每个用户必须输入密码才能登录。 server user级别的密码都是保存在本机上,而server级别的密码和用户名都保存在另一台主机上。 domain 这个级别要求网络里必须有一台Windows的域控制器,验证工作由域控制器来完成。 需要注意,只要输入用户名和密码的级别,其用户名一定首先也是Linux系统内的用户
共享设置部分
添加一个共享文件夹设置如下
[share] 共享文件名,不需要与实际文件名一致 comment = my share directory 对这个共享分支的描述 path = /home/share 系统的共享目录,必须为绝对路径 public = yes 是否允许所有人都能够看到此目录,no为看不到 writable = yes 是否允许用户在此目录下可写,no为不可些,如果可写,还需要目录具有写权限 read only = yes 设置用户是否只读 vaild users = username 设置只有 username 用户有效。
另外smbpasswd 的几个常用选项:
-a 添加一个用户 -x 删除一个用户 -d 禁用一个用户 -e 解禁一个用户
samba常用的服务器管理命令:
# 停止 SAMBA 服务 sudo /etc/init.d/samba stop # 启动 SAMBA 服务 sudo /etc/init.d/samba start # 重新启动 sudo /etc/init.d/samba restart