20170804 --马克斯
实现文件共享,最通用的连接 Ubuntu 和 Windows的方法之一是将 Samba 配置为文件服务器。
本部分包括设置Samba>服务器以便同 Windows 客户端共享文件。
- Samba简介
Samba(SMB)是一个网络服务器,主要用于Linux和 Windows共享文件。也可以用在linux和linux之间,不过后者有更好的网络文件系统NFS.
- 安装Samba
第一步是安装samba软件包。在终端提示符键入:
sudo apt-get install samba
sudo apt-get install smbclient
安装的问题已经完成,接下来需要配置Samba来共享文件。
- 配置Samba
安全起见,我们先备份一下需要配置的smb.conf文件,然后编辑使其允许网络用户访问。smb.conf文件放在/etc/samba/smb.conf 目录下,最好在root下操作,下面会提到原因。
sudo -i #进入root
cp /etc/samba/smb.conf /etc/samba/smb.conf_backup #备份smb.conf文件
gedit /etc/samba/smb.conf #用gedit打开并编辑该文件,也可以用vim
该配置文件主要分为两部分:
- Global Settings 全局设置
- Share Definitions 共享自定义
首先,将全局设置的安全级别设置为:security=share
然后,修改共享自定义,直接将定义的内容写在配置文件的最后面:
[share] #任意自定义共享目录名
comment=Shared Folder #描述性的信息,可以自定义
path =/home/share #共享路径
public = yes #设置是否共享,安全级别是share时,设置为yes
writable = yes #设置用户可写入
printable = no #打印可以共享
create mask = 0777 #创建文件时文件的默认权限
编辑完配置文件,还要重启一下Samba才能生效:
systemctl restart smbd.service nmbd.service
- 使用
配置完当然是要试一下怎么用啦,先创建一个共享文件夹“/home/share”
mkdir /home/share #创建文件夹share
chmod 777 /home/share #chmod 777使它实现共享
然后怎么知道已经连上Samba了呢?来验证一下:
使用ifconfig
查看IP地址为:192.168.1.104
root@pp:~# smbclient -L 192.168.1.104
WARNING: The "syslog" option is deprecated #这里出现警告,不用管它,后面要输入用户密码
Enter root's password:
Domain=[WORKGROUP] OS=[Windows 6.1] Server=[Samba 4.3.11-Ubuntu]
Sharename Type Comment
--------- ---- -------
print$ Disk Printer Drivers
share Disk Shared Folder require password
IPC$ IPC IPC Service (pp server (Samba, Ubuntu))
......
上面显示的是服务器的详细信息,到了这一步就说明已经连接上Samba了,大功告成~
一开始说建议在root权限下操作,为什么呢?如果没有在root下,配置smb.conf文件时会出现以下问题:
/etc/samba/smb.conf : 无法打开并写入文件