一、相关介绍 

  Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成。SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务。SMB协议是客户机/服务器型协议,客户机通过该协议可以访问服务器上的共享文件系统、打印机及其他资源。通过设置“NetBIOS over TCP/IP”使得Samba不但能与局域网络主机分享资源,还能与全世界的电脑分享资源。Samba是 SMB/CIFS网络协议的重新实现,作为NFS的补充使得在Linux和Windows系统之间进行文件共享、打印更容易实现。本文介绍如何在Linux环境下搭建Samba服务器和怎样在Windows下访问Linux共享文件。

  SAMBA套件:
  (1)samba:这个套件主要包含了SAMBA的主要daemon档案(smbd及nmbd),SAMBA的文档(document),以及其它与SAMBA相关的logrotate设定文件及开机预设选项档案等。
  (2)samba-common:这个套件主要提供了SAMBA得主要设定档(smb.conf),smb.conf语法检验的测试程序(testparm)等。
  (3)samba-client:这个条件则提供了当Linux做为SAMBA Client端时,所需要的工具指令,例如挂载SAMBA档案格式的执行档smbmount等。

二、配置步骤

  备注:以下是在非root用户下的配置,如果是在root用户下,把sudo 去掉即可。

1、安装和卸载samba命令:
  sudo apt-get install samba samba-common
  sudo apt-get install smbclient
  sudo apt-get autoremove samba

2、建立samba访问目录,并且增加目录的权限
  sudo mkdir /home/myshare
  sudo chmod 777 /home/myshare

3、samba服务添加用户(我的ubuntu用户名为:xiaow)
  sudo smbpasswd -a xiaow (输入访问Samba的密码),这个密码很重要,请大家记住。

4、配置smb.conf
  sudo vi /etc/samba/smb.conf

  在文件最后添加
  [myshare ]
  comment=This is samba dir
  path=/home/myshare
  create mask=0755
  directory mask=0755
  writeable=yes
  valid users=xiaow
  browseable=yes

  path为你上面建立的共享目录/home/myshare,
  valid users为你访问Samba的用户xiaow
  其他条件写读和创建文件及文件夹的权限

5、启动、停止、重启Samba服务:

  启动Samba服务器只需执行如下命令:
  sudo /etc/init.d/samba start

  关闭Samba服务器:
  sudo /etc/init.d/samba stop

  重启Samba服务
  sudo /etc/init.d/smbd restart 或者 sudo service smbd restart
  注:修改了smb.conf配置文件,需要重启Samba服务才生效 我这儿直接重启Samba服务器

6、ifconfig查看ip地址

  注意:这里虚拟机里面的ubuntu一定要和windows主机能够相互ping通。我这儿虚拟机网络连接采用NAT模式才能ping通windows主机,如果可以ping通windows主机,则此步骤略过。

6.最后打开我的电脑,空白位置右键添加一个网络位置
  输入 \\ip地址(linux)\myshare 按提示步骤输入用户名和密码。

然后会出现这个快捷方式,双击出现输入用户名和密码的提示框,我这里输入的是Ubuntu的用户名xiaow以及刚才要求大家记住的密码

然后我往myshare文件夹里面放入一个文件file.txt,在Linux下也可查看到。

如此,Linux下Samba服务器的搭建以及配置圆满完成。

Ubuntu 16.04下Samba服务器搭建和配置(配截图)的更多相关文章

  1. CentOS 6.5下samba服务器搭建与配置

    转自:http://www.centoscn.com/CentosServer/ftp/2014/1023/3989.html 写在前面: 首先关闭防火墙:service iptables stop, ...

  2. Ubuntu 16.04下Java环境安装与配置

    首先下载linux下的安装包 登陆网址https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.h ...

  3. Ubuntu 16.04下编译安装Apache2.4和PHP7结合

    Ubuntu 16.04下编译安装Apache2.4和PHP7结合,并安装PDOmysql扩展. 1.编译安装apache2.4.20 1 第一步: ./configure --prefix=/usr ...

  4. Ubuntu 16.04下的LAMP环境配置

    在学习开发过程中,每当遇到新的问题时,通常都能在网上搜到解决的方法,但是网上的方法千千万,有些是已经过时了的,有些是跟自己开发环境不同的,总是不能第一时间能找到答案. 而当时遇到的问题可能在今后的开发 ...

  5. Ubuntu 18.04安装Samba服务器及配置

    Ubuntu 18.04安装Samba服务器及配置 局域网下使用samba服务在Linux系统与Windows系统直接共享文件是一项很方便的操作.以Ubuntu为例配置samba服务,Linux服务器 ...

  6. Ubuntu 16.04 下使用Xampp

    Ubuntu 16.04 下使用Xampp 什么是Xampp? XAMPP(Apache+MySQL+PHP+PERL) 是一个功能强大的建站集成软件包.这个软件包原来的名字是 LAMPP,但是为了避 ...

  7. Ubuntu 16.04下使用Eclipse:创建工程时卡死的解决方法

    问题如下: Ubuntu 16.04下使用Eclipse创建工程时出现卡顿和卡死,新建一个MapReduce项目卡了一下午,鼠标变成了圆圈进度条转了一下午,还关不掉. 当我直接去关闭新建项目的窗口时, ...

  8. Ubuntu 16.04 下简单安装使用golang之备忘

      刚开始学习Go语言,这里记录下我在Ubuntu 16.04下安装使用golang的过程,方便以后查询.   一.安装   1.添加源   如果使用默认的源安装golang的话,版本太低,只到1.6 ...

  9. Ubuntu 16.04下EasyOpenJTAG+OpenOCD的安装和使用【转】

    本文转载自:http://www.linuxdiyf.com/linux/24086.html Ubuntu 16.04下EasyOpenJTAG+OpenOCD的安装和使用 发布时间:2016-09 ...

随机推荐

  1. java对象之----(PO,VO,DAO,BO,POJO)

    转自http://www.cnblogs.com/bluestorm/archive/2012/09/26/2703234.html 一.PO :(persistant object ),持久对象 可 ...

  2. 为什么23种设计模式没有 MVC

    MVC的是为了把数据(Model)和视图(View)分离开来,然后用控制器(Controller)来粘合M和V之间的关系. MVC是观察者模式(Observer), 策略模式(Strategy)和组合 ...

  3. 在IIS上发布并运行ASP.NET Core

    英文原文地址:https://weblog.west-wind.com/posts/2016/Jun/06/Publishing-and-Running-ASPNET-Core-Application ...

  4. Java-常用工具方法

    一 Json转换 1 输出组装好的json ObjectMapper mapper = new ObjectMapper(); try { String requiredJson = mapper.w ...

  5. pyc文件

    1.pyc文件 是python预编译后的字节码文件,并不是机器码.2.PyCodeObject 是Python编译器真正编译成的结果: 当python程序运行时,编译的结果是保存在PyCodeObje ...

  6. ORM创建多表以及多表的增删改查

    一. 多表的创建 1. 一对一 在哪个表中设置都行,但是添加数据的时候需要现在没有外键的表中添加数据 models.OneToOneField(to="表名",to_field=& ...

  7. Python的list循环遍历中,删除数据的正确方法

    在遍历list,删除符合条件的数据时,总是报异常,代码如下: num_list = [1, 2, 3, 4, 5] print(num_list) for i in range(len(num_lis ...

  8. android:动态申请权限(一)

    环境: android版本6.0 对应SDK版本23 动态申请权限说明:所有动态申请的权限,必须在AndroidManifest.xml中进行声明 步骤 1.新建一个android工程 默认创建即可 ...

  9. css之absolute温习

    1.absolute:生成绝对定位的元素,相对于 static 定位以外的第一个父元素进行定位.(父元素不仅可以是相对定位(relative)) 2.当绝对定位的元素找不到定位类型是非static定位 ...

  10. window系统中 mongodb创建用户名和密码

    use admindb.createUser({user:"root",pwd:"root",roles:[{"role":"us ...