很多时候,做嵌入式开发,都是在windows上安装虚拟,在虚拟机中安装Linux操作系统。这个时候,我们经常需要Linux操作系统下有一个目录能在windows下自由访问。要想实现这个功能我们只需要在linux下配置好samba服务。
samba服务主要完成的功能是完成目录共享。
打开谷歌或者百度搜索samba服务配置,铺天盖地的帖子,照着做,通过修改各种配置文件,最后的结果。。。
其实,有一种最简单的方法。下面以ubuntu 12.04为例。
1. 打开ubuntu文件管理的图形界面,随便找一个目录文件,右击,选择共享选项。
2. 这个时候,如果系统中没有安装samba服务,就会出现一个对话框,要求装一些软件,安装默认的操作步骤进行就可以 。
3. 装好之后,在终端上输入sudo smbpasswd -a 用户名
这里的用户名是在系统中已经注册的用户名,一般可以写当前登录的用户的名称。
4. 配置共享目录,准许用户读写目录。
注:以上是在桌面系统下,若是server下,因为没有桌面不可操作文件,可通过配置文件/etc/samba/smb.con实现上述目标,增加如下配置项:
[vmlinux] path=/home/wang/vmlinux writable=yes browseable=yes public=yes guest ok=yes
其中vmlinux是共享文件路径名。参考:Linux设置文件夹共享
5. 开启smb服务
service smbd start 或 /etc/init.d/smb restart
service smbd status 查询状态
6. windows下,window+R打开运行窗口,在运行窗口输入如下命令:\ip地址 (当前安装有samba服务器的ip地址),即可打开samba 的共享目录。
7. 然后在winods下,右击我的电脑,选择映射网络驱动器
注:samba通过虚拟盘符方式访问,驱动器可随意选择。
文件夹:直接输入\ipvmlinux即可。
在文件夹的输入宽中输入:\Linux系统的主机名共享目录名称或者\linux 系统的ip共享目录名。
输入完之后,会出现一个对话框,输入刚刚通过smbpasswd命令添加的用户和密码即可。
过程问题解析
在做的的过程中,遇到一些特殊的问题如下:
1.右击文件夹,选择共享目录选项之后,下载软件包的时候提示”未知错误”,解决如下
这个错误是由于软件包的依赖关系出了文件。
A. 执行sudo apt-get install samba
出现,软件包依赖错误
B.执行sudo apt-get remove 依赖的软件包
C.再次执行sudo apt-get install samba
安装则成功
2.右击文件夹,没有共享目录选项,解决如下
sudo apt-get install nautilus-share
安装完后,注销一下系统就有了。