Samba 是一种在局域网上共享文件的一种通信协议,它为局域网内的不同计算机之间提供文件的共享服务。
(1)下载并安装 Samba 工具。

  确定 Ubuntu 已连接到互联网, 执行如下命令下载 Samba 工具:
  sudo apt-get install samba samba-common

安装完成如下图:

    安装完成后安装如下工具:

  sudo apt-get install libtalloc2 

2) 设置 Samba 登录密码。
  sudo smbpasswd -a xxx
  xxx系统用户, smbpasswd 命令将会为系统用户开启 Samba 功能并设置登陆密码,请牢Samba 陆密码 。
3) 配置 Samba 用户信息。
  编辑"/etc/samba/smb.conf"文件 ,在末尾添加如下内容:

[xxx]
    comment = Samba Share Directory
    path = /home/xxx
    browseable = yes
    writable = yes
    public = yes
    valid users = xxx
    create mask = 0644
    directory mask = 0775
    available = yes

4) 重启 Samba。 

  sudo restart smbd && sudo restart nmbd
  
这时就可以使用Samba服务器在windows上共享Ubuntu的文件了,但是一定要保证Windows和Ubuntu能互相ping通。比如我Ubuntu的IP为 192.168.0.200,此时在Windows下输入“win + R”在框内输入“\\192.168.0.200”,如下图:

 

 

 

点击确定之后,便会弹出一个名为xxx的文件夹,如下图:

 

 

该文件夹中的内容正是Ubuntu的/home/xxx目录,因为我的用户名为linux,因此该文件夹名为linux 。

 

(5)问题解决

 1. 在第一步运行sudo apt-get install samba samba-common 命令的时候,报出一堆“404 not found”

  更新可用软件包及其版本,这个过程可能会非常漫长,更新完了再安装samba服务器就好了。

 2. Ubuntu无法联网

  先ping一下百度:ping www.baidu.com 

  如果ping不同则表示Ubuntu无法上网,需要作如下修改:

  a)将虚拟机网卡设置为NAT模式

    点击 虚拟机->设置->网络适配器,将网络连接设置为NAT模式,如下图:

 

     b)将Ubuntu的IP设置为动态IP:

    编辑 /etc/network/interfaces 文件,eth0的设置改为: 

auto eth0
iface eth0 inet dhcp

    保存文件,然后重启网卡,重启网卡的指令为:sudo /etc/init.d/networking restart

   如此,Ubuntu便能联网了,ping百度的结果如下:

 

  3. 重启Samba服务器后,在windows上无法访问

    a)将虚拟机网卡设置为桥接模式:

  点击虚拟机->设置->网络是配置,改为桥接模式后点确定,如下图:

  

   b)将Ubuntu的IP设置为静态IP:

  编辑 /etc/network/interfaces 文件,eth0的设置改为:  

auto eth0
iface eth0 inet static
address 192.168.0.200
netmask 255.255.255.0
gatewayip 192.168.0.1

保存后输入如下指令重启网卡:sudo /etc/init.d/networking restart

 此时用ifconfig指令可以看到IP已经改到192.168.0.200了:

 

  c)将windows的IP设置为静态IP,并且与Ubuntu在同一网段

打开控制面板->网络和Internet->网络和共享中心->更改适配器设置,进入如下图界面:

 

 在“以太网”这个图标上右键-属性->双击“Internet协议版本4(TCP/IPv4)”,选择“使用下面的IP地址”,并设置好IP,如下图:

 

 d)检测windows与Ubuntu网络能否互通

在windows下按“WIN + R”组合键,在弹出的对话框中输入cmd后回车,在弹出的界面中可以ping Ubuntu。

一般来说到这一步是直接能互通的但在我这里却ping不通,输入ipconfig命令,发现我的以太网适配器这里压根就没有IP,如下图:

 

 这时,我把网线插到一个交换机任何一个口上,交换器其他口不接任何设备,再用ipconfig查看,此时竟然奇迹般的有了IP,如下图:

 

不知道咋回事,然后测试ping Ubuntu,发现能ping通了。

4. 提示因为文件共享不安全。。。

 

在控制面板中点击 程序->启动或关闭Windows功能,找到SMB 1.0/CIFS 文件共享支持,并勾选了,如下图:

 

确定之后重启就好了。

5. 在Ubuntu18.04中安装,运行“sudo restart smbd && sudo restart nmbd” 这条指令时报:“restart: command not found”不知道是系统没安装这条命令还是到Ubuntu18就不支持了,他报这个错也没关系,重启系统就行了。

6. 重装系统之后提示:“你不能访问此共享文件夹,因为你组织的安全策略阻止未经身份验证的来宾访问。”

  参见这篇文章:https://iknow.lenovo.com.cn/detail/dc_174997.html