共计 3197 个字符,预计需要花费 8 分钟才能阅读完成。
这篇文章主要介绍了如何部署 Samba 使 Linux 和 Windows 进行文件共享的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇如何部署 Samba 使 Linux 和 Windows 进行文件共享文章都会有所收获,下面我们一起来看看吧。
Samba 是 SMB/CIFS 网络协议的重新实现, 它作为 NFS 的补充使得在 Linux 和 Windows 系统中进行文件共享、打印机共享更容易实现。ubuntu 系统一般自带 samba 服务,不需要我们单独安装。
下面以 ubuntu16.04 为例来说明如部署 Samba 服务。
1. 配置文件参数介绍
在正式开始部署之前,我们先来了解一下 samba 配置文件的详细参数。对文件共享服务要求不是很高的读者可以跳过这一步。直接开始我们的”三部曲“。如果想要配置更为复杂的文件共享服务,可以后面再来参考这部分。
samba 的配置文件为 /etc/samba/smb.conf,通过修改这个配置文件来可以完成我们的各种需求。
global 参数
在 global 当中的就是一些主机的整体参数了,包括工作组、主机的 NetBIOS 名称、字符编码的显示、登录文件的设定、是否使用密码以及使用密码验证的机制等等。在 [global] 部分关于主机名信息方面的参数主要有:
workgroup = 工作组的名称:注意,主机群要相同
netbios name = 主机的 NetBIOS 名称啊,每部主机均不同
server string = 主机的简易说明,这个随便写即可
除此之外,还有登录文件方面的信息,包括这些参数:
log file = 登录档放置的档案,文件名可能会使用变量处理;
max log size = 登录档 *** 仅能到多少 Kbytes,若大于该数字,则会被 rotate 掉
还有跟密码有关的参数,包括这几个:
security = user, server, domain, share 四选一,这四个设定值分别代表:
user:使用 SAMBA 本身的密码数据库,密码数据库与底下的 smb passwd file 有关
server, domain:使用外部主机的密码,亦即 SAMBA 是客户端之意,如果设定这个项目,你还得要提供 password server = IP 的设定值才行
share:分享的数据不需要密码即可分享
encrypt passwords = Yes 代表密码要加密
smb passwd file = 密码放置的档案,通常是 /etc/samba/smbpasswd
共享文件参数设置
[分享文件夹名称] 是针对你开放的目录来进权限方面的设定,包括谁可以浏览该目录、是否可以读写等参数。
[分享文件夹名称]:这个分享名称很重要,他是一个『代号』而已。
comment:分享文件夹的说明
path:分享文件夹的路径
read only:是否只读
public:是否让所有可以登入的用户看到这个项目
writable:是否可以写入
create mode 和 directory mode 都与权限有关
valid users = 用户,这个项目可以指定能够进入到此资源的特定使用者。
2. 部署开放的 samba 服务
新建共享文件夹
sudo mkdir -p /samba/test
注意,一定要给文件设置正确的权限。
chmod -R 777 /samba/test
配置参数文件
用 vim 打开 Samba 配置文件
sudo vim /etc/samba/smb.conf
注意:建议大家把这里面的配置信息全部删掉,然后全部自己重写,以免信息的错乱。
修改配置文件为
[global] workgroup = WORKGROUP server string = Samba Server %v netbios name = ubuntu security = user map to guest = bad user dns proxy = no [temp] path =/samba/test browsable =yes writable = yes guest ok = yes read only = no creat mode=777 force creat mode=777 directory mode = 777 force directory mode = 777
测试
重启 samba 服务
sudo /etc/init.d/samba restart
在 ubuntu 上的浏览器上输入 file://192.168.1.11/ 看能否访问到共享文件 “`(注意,要把 ip 地址换成是自己的服务器的地址), 看似否可以访问自己的共享目录。
在 windows 上打开资源管理器直接输入 \\192.168.1.11 直接访问。尝试通过拖放将文件上传到共享,看看它是否正常工作,传输速度如何。注意,在 windows 端显示的共享文件夹的名称是参数配置文件中文件夹的名称,这里为 temp)
3. 部署需要密码的 samba 服务
添加用户并创建共享文件夹
创建系统用户
sudo useradd user01
设置用户密码
sudo passwd user01
把系统用户 user01 添加为 samba 用户并设置 samba 用户登录密码
sudo smbpasswd -a user01
查看 samba 用户
sudo pdbedit ndash;L
创建共享目录
sudo mkdir -p /samba/data
目录分配 *** 权限
sudo chmod 777 /samba/data
更改目录所属用户
sudo chown root:user1 data
配置参数文件
用 vim 打开 Samba 配置文件:
sudo vim /etc/samba/smb.conf
修改配置文件为
[global] workgroup = WORKGROUP server string = Samba Server %v netbios name = ubuntu security = user map to guest = bad user dns proxy = no [data] path =/samba/data browsable =yes writable = yes guest ok = no read only = no valid users=@user1
测试
测试和上面的一样,在 windows 端进入,点击 data 文件夹,会发现提示输入用户和密码,输入对应的用户名和密码,拖拽文件进行测试。
4. 绑定服务器 ip(可选)
服务器重启后,路由器会重新分配 ip,这给使用带来了很大的不方便。我们 *** 把服务器的地址绑定到某个固定的 ip。这里我们以绑定到 192.168.1.11 为例。
网络参数文件位于 /etc/network/ 下面,执行如下命令:
suod gedit /etc/network/interfaces
添加以下内容
auto lo iface lo inet loopback auto enp0s31f6 iface enp0s31f6 inet static address 192.168.1.11 gateway 192.168.1.1 netmask 255.255.255.0
参数的意义如下:
enp0s316:自己网卡而名称,可以通过 ifconfig 来查看
address:要绑定的 ip
gateway 和 netmastk:自己查看电脑的参数。
***,我们还要使配置生效
/etc/ini.d/network-manager restart ifdown enp0s31f6 ifup enp0s31f6
关于“如何部署 Samba 使 Linux 和 Windows 进行文件共享”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“如何部署 Samba 使 Linux 和 Windows 进行文件共享”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注丸趣 TV 行业资讯频道。