一、概述
windows挂载linux文件夹采用samba服务,本文将介绍此种类型。
二、搭建
实验的环境 一台Linux:CentOS7.3,一台Windows:Win 10Server端:192.168.56.88 文件实际存放的服务器(linux)Client端:192.168.56.1 挂载的服务器(windows),即将server端的共享文件夹挂载到client端
【Server端】
1. 安装samba服务
[root@localhost ~]# yum install samba
2. 修改配置文件/etc/samba/smb.conf
[global]workgroup = SAMBAsecurity = userpassdb backend = tdbsamprinting = cupsprintcap name = cupsload printers = yescups options = raw[gxwjj]path = /u02writable = yescreate mask = 0664directory mask = 0775
说明:[global]不用更改,删除[homes]、[printers]、[print$]添加[gxwjj],中括号里面的名称随意命名path = /u02 共享的目录writable = yes 可读写create mask = 0664 文件的权限directory mask = 0775 目录的权限
3. 创建用于共享资源的账户
首先创建linux账户,接着创建samba账户,与linux用户名一样
[root@localhost ~]# useradd bao[root@localhost ~]# pdbedit -a -u bao
注意这里输入的密码尽量不要与linux用户的密码相同,否则容易引起数据泄露,因为别人可能直接通过这个账户和密码就进到服务器端了。
4. 创建共享目录
[root@localhost ~]# mkdir /u02[root@localhost ~]# chown bao: /u02
5. 关闭防火墙和selinux,启动samba服务,注意服务名是smb,而不是samba
[root@localhost ~]# systemctl stop firewalld[root@localhost ~]# setenforce 0[root@localhost ~]# sed -i "s/SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config[root@localhost ~]# systemctl start smb
【Client端】
1. 挂载
打开windows界面,输入两个\\和server端的ip地址,回车
密码就填“pdbedit -a -u bao”这步输入的密码
这里显示的gxwjj就是写在server端smb.conf里的配置项
2. 写入测试文件
去server端查看,就能找到在client端创建的文件了
三、linux挂载linux
samba不仅适用于windows挂载linux文件夹,同样也适用于linux挂载linux文件夹。再找一台linux机器(192.168.56.77)做client端
[root@oracle19c1 ~]# yum install cifs-utils[root@oracle19c1 ~]# mkdir /share[root@oracle19c1 ~]# mount //192.168.56.88/gxwjj /share -o username=bao,password=xxx 密码就填“pdbedit -a -u bao”这步输入的密码
如果想开机自动挂载可以写在/etc/fstab中
vi /etc/fstab//192.168.56.88/gxwjj /share cifs defaults,username=bao,password=xxx 0 0
四、samba需要开通的端口
查看samba用到的端口,可以看到smbd用到445和139端口,如果server端防火墙没关闭,测试下来,对于客户端是linux,那么就需要开通139或445任一端口即可,对于客户端是windows,则必须开通445端口,139端口无用。具体实验留给读者自行完成。
[root@localhost ~]# netstat -tpnlActive Internet connections (only servers)Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program nametcp 0 0 0.0.0.0:139 0.0.0.0:* LISTEN 2685/smbdtcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 1/systemdtcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1027/sshdtcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1301/mastertcp 0 0 0.0.0.0:445 0.0.0.0:* LISTEN 2685/smbdtcp6 0 0 :::139 :::* LISTEN 2685/smbdtcp6 0 0 :::111 :::* LISTEN 1/systemdtcp6 0 0 :::22 :::* LISTEN 1027/sshdtcp6 0 0 ::1:25 :::* LISTEN 1301/mastertcp6 0 0 :::445 :::* LISTEN 2685/smbd
五、总结
- windows挂载linux文件夹,linux挂载linux文件夹都可以采用samba服务。linux挂载linux文件夹还可以采用nfs。具体选用哪种方式呢?如果server端共享文件夹,不知道client端的类型,那么就采用samba服务。如果确定client端只有linux,那么就用nfs,因为nfs配置简单。
- server端的selinux和防火墙需要关闭,如果防火墙没关,那么需要开通445端口。