那么如何在linux下进行window中文件的访问呢。在回答这个问题之前可以先想一想,平时我们在window下要获得另外一个电脑里的数据下是怎么做的,我想大家最常用的就是用U盘或者硬盘这些第三方的存储介质了,这种方法确实便捷,省事,但是如果文件比较大或者两台电脑不在同一个地方,还能用U盘吗?那该怎么办呢?另外一种最普及的方式是通过网络,我们平时可以用它来下载远方服务器上的文件,可以用它聊天,建立局域网玩游戏 .etc 要通过网络建立进行数据的传输,必然要使用服务器,linux下有一款叫samba的软件,我们可以使用它来进行服务器的搭建,实现文件的访问,下面我来介绍一下具体方法。

准备:

①Centos7.6两台

192.168.1.67
client端
192.168.1.88
server端

linux设置samba共享文件可读写 linux samba共享服务_linux设置samba共享文件可读写

②停掉防火墙和selinux,关闭防火墙默认开机启动

systemctl stop firewalld
systemctl disable firewalld
# 查看selinux运行状态
getenforce
# 修改selinux状态
vim /etc/selinux/config

linux设置samba共享文件可读写 linux samba共享服务_配置文件_02

一、server端安装samba,client安装samba-client

yum install samba samba-client -y
systemctl start smb nmb
# 查看samba运行状态
netstat -antp

linux设置samba共享文件可读写 linux samba共享服务_linux samba 文件共享_03

二、新建一个无登录权限的linux用户,将它添加为samba用户并设置密码

# 创建一个不能登录的linux用户
useradd -s /sbin/nologin wenlong
# 将linux系统用户设为samba用户,并按照提示设置密码
pdbedit -a wenlong
# //读取当前samba用户列表
pdbedit -L

linux设置samba共享文件可读写 linux samba共享服务_linux samba 文件共享_04

三、查看samba共享文件,默认是wenlong的家目录

# 在客户端192.168.1.67查看wenlong用户的共享信息,默认是wenlong的家目录
smbclient -U wenlong -L //192.168.1.88

linux设置samba共享文件可读写 linux samba共享服务_linux samba 文件共享_05

# 在客户端client登录查看共享文件
smbclient -U wenlong //192.168.1.88/wenlong

linux设置samba共享文件可读写 linux samba共享服务_linux samba 文件共享_06

四、自定义共享空间,测试

①在server端编辑samba配置文件smb.conf,添加下边sambatest块代码,节点名sambatest

vim /etc/samba/smb.conf
[sambatest]
# 共享目录是根目录下的test文件夹
path = /test
public = yes
# 是否可见
browseable = yes
guest ok = yes
writable = yes

②在server端新建配置文件中path标注的共享目录,并赋予权限

# 创建共享测试文件夹test
mkdir /test
# 修改权限,777给所有用户提供读写执行权。1粘着位,表示仅允许删除或重命名自己的文件
# 这里涉及到SUID、SGID、SBIT,代表文件包括/etc/passwd,/usr/bin/locate,和下边这种情况
# SUID用4表示,SGID用2表示,SBIT用1表示
# 备注:大多数情况不需要修改,除非特殊情况
chmod 1777 /test/

③重启server端samba服务,并测试配置文件修改是否正确

# 修改配置文件后,重启smb服务
systemctl restart smb nmb
# 查看配置文件是否正确
testparm

linux设置samba共享文件可读写 linux samba共享服务_linux_07

linux设置samba共享文件可读写 linux samba共享服务_vim_08

④client客户端查看共享文件夹,看到了节点名为sambatest的共享文件夹

# 再次查看wenlong共享的文件
smbclient -U wenlong -L //192.168.1.88

linux设置samba共享文件可读写 linux samba共享服务_linux_09

⑤client客户端登录分享节点sambatest,可以进行samba自有操作

# 在client端使用wenlong从共享文件节点sambatest登录
smbclient -U wenlong //192.168.1.88/sambatest

linux设置samba共享文件可读写 linux samba共享服务_配置文件_10

五、将共享挂载到本地目录上

①client端新建挂载点clienttest,根目录下创建  clienttest

# 创建挂载点
mkdir /clienttest

②创建临时挂载,查看挂载情况

# 临时挂载
mount -t cifs -o username=wenlong,password=123456 //192.168.1.88/sambatest /clienttest
# 查看挂载情况
df -h

linux设置samba共享文件可读写 linux samba共享服务_vim_11

③永久挂载,编辑client端fstab文件,重启服务器查看挂载情况

vim /etc/fstab
//192.168.1.88/sambatest /clienttest cifs defaults,username=wenlong,password=123456 0 0
df -h

linux设置samba共享文件可读写 linux samba共享服务_vim_12

④查看client端挂载的共享文件夹,新建测试文件

# 进入挂载点
cd /clienttest/
# 新建测试文件aaa
vim aaa
# 查看当前文件列表
ll
# 查看aaa文件内容
cat aaa

linux设置samba共享文件可读写 linux samba共享服务_配置文件_13

⑤在server服务端查看测试文件

cd /test/
ll
cat aaa

linux设置samba共享文件可读写 linux samba共享服务_linux设置samba共享文件可读写_14