利用Sambaserver在Ubuntu系统和Win7系统间共享目录
1 介绍
如今是网络化的时代,我们每一个人要更好的发展。离不开网络化、信息化的支持。利用网络的支持。在不同的操作系统间共享文件等信息,是计算机专业学生必备的一项技能。
本文所讲的就是怎样建立、设置、链接Sambaserver,使得处在网络中的两台电脑,一台装的是Ubuntu操作系统,一台装的是Win7,通过共享目录的形式来共享信息。这两台电脑在网络上处的位置和网络架构为图1所看到的。
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvUm9iZXJ0Q2hlbkd1YW5nemhp/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
在图1的两台电脑实际上它们的物理位置都在我旁边,仅仅是因为物理RJ47port太少,就仅仅有让台式机连接到Rj47port上。而我的笔记本电脑则通过无线路由器连接到网络上。为了方便这两台电脑间的文件和信息交流。我就想通过共享目录的方式实现这个功能。
假设两台电脑都是windows系统的话好办。但如今一个是Ubuntu系统,一个Win7系统,怎么实现共享目录的功能呢?
在參照文献[1]的基础上。利用Sambaserver,我顺利实现了该功能。请看以下的具体介绍。
2 创建和配置一个Sambaserver
因为要实现网络上Ubuntu系统与Win7系统之间共享目录,而Sambaserver是一个在Ubuntu系统上支持与windows系统文件交互等功能的server,我们的思路自然就是:在台式机上创建一个Sambaserver,而Win7系统以client的方式訪问server上共享出来的目录。也就是Utuntu系统上的目录。Samba于1992年出现,它最初的目的就是方便Unix系统与Windows系统间共享文件,但又不限于此。也支持各种不同系统之间的交互共享文件,比如Ubuntu对Ubuntu。Mac OS对Mac OS等等。
2.1 安装Sambaserver
假设你使用的是Ubuntu Server distribution,它本身就会预装,你能够跳过此步骤。直接进入下一步骤。假设你使用的是普通的Ubuntu distribution,则它本身没有安装,须要你先安装Samba。你能够通过Ubuntu Software Center以图形化的方式来安装Samba,也能够以Terminal命令的方式来安装。以Terminal方式安装的命令例如以下:
sudo apt-get install samba
sudo apt-get install smbfs
2.2 确定一个在Ubuntu系统上要共享的目录
这个目录能够是一个事先存在的目录。假设你为了不让共享目录与你的其它目录混淆,最好新建一个单独的目录专门用作共享。用下面Terminal命令创建要共享的目录,并赋予其读写的权限:
sudo mkdir /home/share
sudo chmod 777 /home/share
2.3 编辑smb.conf文件
为了让网络上的其它电脑以client的方式訪问Sambaserver,你首要做的事情就是配置/etc/samba/smb.conf文件。该配置文件类似于Windows下的ini文件,方便管理人员配置server的相关信息。请更随下面步骤:
1.利用一个编辑器打开smb.conf文件。
因为该文件须要权限才干改动。不要利用直接点击的方式打开,最好使用命令sudo vim /etc/samba/smb.conf或者sudo gedit /etc/samba/smb.conf的方式打开。
2.找到[global]以下的内容将workgroup = WORKGROUP前面的分号(;)去掉(分号打头的代表的是凝视),并在它的后面加入内容,终于变为
workgroup = WORKGROUP
display charset = UTF-8
unix charset = UTF-8
dos charset = cp936
3.找到security = user这一行,将其前面的分号去掉,并在其后面加入内容,终于变为:
security = user
username map = /etc/samba/smbusers
4.将要共享的目录加入到Sambaserver上,并指定同意訪问的用户。通过下面来实现,在文件的末尾加入下面内容(当然,下面的内容你也能够通过图形化的Samba配置管 理器来设置。设置后,在本文件中会自己主动体现。
):
[share] //windows系统下显示的要共享的名
comment = test whether the method is good //凝视,你用于共享加入的凝视。能够提供共享的目的
path = /home/share //前面步骤在Ubuntu系统上建立的用于共享的目录
public = yes
writeable = yes
valid users = chgzhi //訪问Sambaserver的用户,但它必须又是一个Ubuntu用户,同一时候还必须一个单独的不同于登录Ubuntu系统的password当然你可让它们一致。
create mask = 0700
directory mask = 0700
force user = nobody
force group = nogroup
available = yes
browseable = yes
5. 保存并退出该文件的编辑过程。
2.4 定义Samba用户的訪问password
注意,仅仅要已经合法存在的Ubuntu系统的用户才干够作为Sambaserver的用户。如今假定你Ubuntu系统已经有一个用户chgzhi,这正是在上小节中我们设置的用户(valid users = chgzhi)。我们如今要做的是给改用户设置对应的password。假设是初次设置password採用下面命令:
sudo smbpasswd -achgzhi
假设你早前一设置过此password,则去掉參数a。
2.5 又一次启动Sambaserver
因为刚刚又一次配置了server。此时我们最好又一次启动server。使用的命令例如以下:
sudo service smbd restart
3 关闭防火墙
由于Ubuntu系统处于server的地位,所以我们仅仅须要关闭Ubuntu系统的防火墙就可以,对于Win7系统的防火墙不须要关闭。命令例如以下:
sudo ufw disable
至此,server端我们须要做的工作已经完成。接下来就是利用client连接共享的目录了。
4 client连接
4.1 smbclient客户端程序
这是一个Samba server程序自带的client命令行程序。它支持在另外一台Ubuntu系统已装Samba 的情况下的訪问。在此我们利用它測试刚建立的server是否成功。例如以下图2 所看到的。 我们这里仅仅是本机測试,并没有利用另外的一台电脑连接Sambaserver。图2中能够看出,我们连接成功,而且进入了client交互命令提示符(smb: \>),有各种各样的命令可供你使用,详细的请參看文献[1] 的第535页的表22-2。图中输入的password时你利用2.4节的方法设立的password。我已经在享受共享目录带来的便利,图2就是在台式机的buntu系统上截图而得,并通过共享目录同意Win7系统訪问,而本文的书写是在Win7
系统上进行的。
Figure 2 smbclient客户端程序演示样例
4.2 利用Win7系统以client的形式连接Sambaserver
在装有Win7系统的笔记本上来訪问Ubuntu 电脑上设置的共享目录,过程非常easy,不须要转不论什么的client程序。
1.点击MyComputer 出现图3。再点击图中的Map network drive,然后出现图4。
2.在图4中的folder 文本框中输入Ubuntu 机器的IP 地址和共享的目录名share。
点击finish 出现图5。
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvUm9iZXJ0Q2hlbkd1YW5nemhp/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
Figure 4 Win7连接示意
3.在图5中输入你的Samba帐户,也就是在2.4节建立的。点击Ok button。令人激动的时刻到了。连接成功,如图6。你能够自由自在的在两个不同的操作系统间共享文件了, 享受网络化带来的成果吧!
Figure 5 Win7 连接---输入Sambausername和password
Figure 6 在Win7 系统下连接的Samba server共享的目录share
5 总结
本文讲述的共享目录设置的方法。要求读者具有Ubuntu 使用的基本知识,特别是Terminal 下Bash Shell的使用。关于Ubuntu 系统基本用法的介绍,推荐书籍[1]。该书类似于大学新生入学针对Windows 系统的《计算机文化基础课程》。但更有用化。
我相信,本文介绍的方法不过一种方法而已,肯定存在更好的共享目录的方法。
假设哪位读者有更好的方法,请赐教。
References
[1] Richard Blum. Ubuntu Linux Secrets. Wiley, Indianapolis, IN, 2009.
利用Sambaserver在Ubuntu系统和Win7系统间共享目录的更多相关文章
- 更换jupyter notebook风格主题、修改默认工作路径(Ubuntu系统和Win系统)
默认的风格对代码关键词的颜色提醒很不明显,而且白色背景长久使用非常刺眼,所以考虑更换主题. 在更换途中,发现代码输出行,前几个字符被遮挡显示不出来,找了很久才解决,备忘一些要点. 1:替换主题方法 h ...
- 扫盲--CRM系统和ERP系统的区别
企业规模在逐步扩大的时候,为了提高生产和管理的效率,经常需要用到相关管理软件.很多企业管理者在选择管理软件的时候犯了难,面对CRM系统和ERP系统不知如何选择无法下手.那么,CRM和ERP的区别是什么 ...
- android系统和ios系统是如何实现推送的,ios为什么没有后台推送
ios系统为什么没有后台推送? iOS 为了真正地为用户体验负责,不允许应用在后台活动.有了这个限制,但是对于终端设备,应用又是有必要“通知”到达用户的,随时与用户主动沟通起来的(典型的如聊天应用). ...
- VMware10中的CentOS6.5命令行安装VMwaretools工具启用windows与虚拟机中Linux系统的共享目录
VMware10中的CentOS6.5命令行安装VMwaretools工具启用windows与虚拟机中Linux系统的共享目录 一.描述 系统描述:win7旗舰版64位系统+VMware Workst ...
- virtualBox下面安装linux系统如何共享目录
背景: 系统是win+virtualBox 在虚拟机中安装了linuxMint系统. 如何共享目录呢 第一步: 在虚拟机中安装增强功能 2,在virtualBox中设置共享目录 3,在linux下创建 ...
- 六、利用frp穿透连接内网的linx系统和windows系统
服务端的配置 # frps.ini [common] bind_port = 7000 说明:防火墙放行该端口 启动:./frps -c ./frps.ini 后台启动:nohup ./frps -c ...
- 对比Linux系统和Windows系统哪个更好
最近半年来,我一直在读一本叫做<Linux就该这么学>的Linux教材,确实让我进步的很快,也慢慢的让Linux系统走入了我的知识认知中,那么学习前我们来对比下Windows和Linux的 ...
- ubuntu上安装win7系统(64位的)
http://www.linuxidc.com/Linux/2012-11/74195.htm deb文件在ubuntu上直接用dpkg -i xxx.deb 如果虚拟机上只显示32位,则可能是cpu ...
- Ubuntu安装教程--Win7系统中含100M保留分区
1.检查 Win7 保留分区 1)进入 Win7 打开库目录.在左側栏找到"计算机",瞄准点右键选择"管理"菜单: 2)在出来的管理面板左边找到"磁盘 ...
随机推荐
- Swift - 判断设备类型开发兼容的iOS应用(iPad使用分隔视图控制器)
1,分割视图控制器(UISplitViewController) 在iPhone应用中,使用导航控制器由上一层界面进入下一层界面. 但iPad屏幕较大,通常使用SplitViewController来 ...
- Swift - 控制流/控制结构说明(if,switch,for,while)
1,if语句 1 2 3 4 5 if count >=3 { println("yes") }else{ println("no") } ...
- D2010 RTTI + Attribute 简单实现ORM
还记得David I 今年四月来盛大时,被问及“反射机制能再做得好一点吗?我们想放弃RTTI”,David I 回答“这的确是需要考虑的地方,当然RTTI我们不会放弃的”.(这个白胡子的老哥哥还真很可 ...
- C++ STL中Map的相关排序操作:按Key排序和按Value排序 - 编程小径 - 博客频道 - CSDN.NET
C++ STL中Map的相关排序操作:按Key排序和按Value排序 - 编程小径 - 博客频道 - CSDN.NET C++ STL中Map的相关排序操作:按Key排序和按Value排序 分类: C ...
- 飘逸的python - yield简明教程
发现还有非常多人对yield不理解,云里雾里,于是试着用文字表述. 仅仅要函数含有yield语句,它就返回一个生成器.所以我们与其把其看成函数定义,不如看作是生成器定义.函数用return返回,而生成 ...
- Android中关于JNI 的学习(六)JNI中注冊方法的实现
在前面的样例中,我们会发现,当在Java类中定义一个方法的时候,例如以下: public class ParamTransferTest { public static int testval = 1 ...
- MTK Android Driver:GPIO
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY2JrODYxMTEw/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA ...
- hdu1151+poj2594(最小路径覆盖)
传送门:hdu1151 Air Raid 题意:在一个城镇,有m个路口,和n条路,这些路都是单向的,而且路不会形成环,现在要弄一些伞兵去巡查这个城镇,伞兵只能沿着路的方向走,问最少需要多少伞兵才能把所 ...
- cookie是指web浏览器存储的少量数据,该数据会在每次请求一个相关的URL时自动传到服务器中(转)
基本概念:cookie是指web浏览器存储的少量数据,该数据会在每次请求一个相关的URL时自动传到服务器中. 以博客园为例,我们看看cookie有哪些属性: 1.Name:cookie的名称: 2.V ...
- hdu 5015 233 Matrix(构造矩阵)
http://acm.hdu.edu.cn/showproblem.php?pid=5015 由于是个二维的递推式,当时没有想到能够这样构造矩阵.从列上看,当前这一列都是由前一列递推得到.依据这一点来 ...