Linux笔记--网络文件共享(TFTP,Samba,NFS)

环境CentOS7

TFTP

概述

FTP(File Transfer Protocol,文件传输协议)用于在Internet上控制文件的双向传输。FTP也是一个应用程序,基于不同的操作系统有不同的FTP应用程序,而所有这些应用程序都遵守同一种协议以传输文件。
TFTP(Trivial File Transfer Protocol,简单文件传输协议)是FTP的简化版本,当用户确切地了解想要获取的文件名及其准确位置时,可以选择使用TFTP。TFTP易用快捷,它并不能提供像FTP那样的强大功能。

FTP与TFTP的区别:

  • FTP的功能只限于列表和目录操作、文件内容输入,以及在主机间进行文件复制,TFTP不提供目录浏览功能,它只能完成文件的发送和接收操作。
  • FTP 是完整的、面向会话的、常规用途的文件传输协议,而 TFTP 用作特殊目的文件传输协议。FTP支持双向传输文件,而 TFTP 仅允许单向传输文件。
  • FTP 提供身份验证,而TFTP 不需要。
  • FTP 使用已知的TCP 端口号:端口号20对应数据,端口号21用于连接对话框。 TFTP 使用它的文件传输活动 UDP 端口号 69。
  • FTP 依赖于 TCP,面向连接并提供可靠的控件。TFTP 依赖于UDP,需要减少开销,几乎不提供控件。

安装、配置

查询本机是否安装了TFTP服务

rpm -q tftp
#或者
rpm -qa|grep tftp

利用yum命令进行安装

yum install xinetd
yum install tftp
yum install tftp-server

以上命令安装了3个服务,分别是xinetd、tftp-server和tftp。

  • xinet d (extended Internet services daemon)是新一代的网络守护进程服务程序,又称超级Internet服务器,经常用于管理多种轻量型Internet服务,xinetd提供类似于inetd + tcp_wrapper的功能,但是更加强大和安全。
  • tftp一个应用非常广的场景是与开发板传输文件。嵌入式Linux的tftp开发环境包括两个方面:一是Linux服务器端的tftp-server支持,二是嵌入式目标系统的tftp-client支持。

查看并修改TFTP服务的配置文件/etc/xinetd.d/tftp。

# 打开
vim /etc/xinetd.d/tftp

# 修改以下两行
server_args =-c -s /tftpboot
disable =no

配置文件夹
如果根目录下存在tftpboot目录,则可以直接修改权限,以方便共享后被其他用户访问;如果没有该目录,则可以进行创建并修改其权限。

cd ~
mkdir /tftpboot
chmod 777 /tftpboot

使用

启动TFTP服务

service xinet start

查看TFTP服务状态

netstat -a|grep tftp
#或者
service xinet status

执行命令关闭SELinux

# 暂时关闭
setenforce 0
# 永久关闭
vim /etc/sysconfig/selinux
修改 SELINUX = disabled

传输文件

# 首先登陆
tftp ip地址
# 然后进入tftp命令模式
get aaa # 从服务器下载文件aaa
put bbb # 上传bbb到服务器
status # 查看状态
quit # 退出tftp

·mode:显示文件传输模式。
·put:上传文件到目标主机开放的tftpboot目录。
·get:从目标主机开放的tftpboot目录下载文件。
·quit:退出。
·tarce:显示包路径。
·binary:二进制传输模式。
·rexmt:设置包传输的超时时间。
·help:显示帮助信息。
·verbose:显示详细的处理信息。
·status:显示当前状态信息。
·ascii:ascii传送模式。
·timeout:设置重传的超时时间。
·?:帮助信息。

Samba

概述

Samba是可以应用Microsoft网络通信协议到Linux系统的软件, SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,Samba软件是将SMB通信协议应用到Linux系统上而形成的。
Samba可以实现Linux与Windows系统直接的文件共享和打印共享,该软件非常灵活,既可以实现Windows与Linux之间的文件共享,也可以实现Linux与Linux之间的资源共享。在实际应用中, Linux与Linux之间的数据共享更多地使用NFS(网络文件系统),Samba更多地应用在Linux与Windows系统之间的数据共享。

安装、配置

查询本机是否安装了Samba服务

rpm -q samba
#或者
rpm -qa|grep samba

利用yum命令进行安装

yum install samba

Samba服务器安装完毕,会生成配置文件目录/etc/samba,该目录下的smb.conf文件是Samba的核心配置文件。如下:
在这里插入图片描述
按照该文件中的显示格式,添加如下内容:

[smbtest]
	path=/smbtest		#开放目录真实路径
	browseable=yes
	writable=yes		#允许写入
	guestok=yes

security安全验证方式可以有4种选项,其对应功能如下:
share:无须验证密码。
user:需要输入有效的用户名和密码才能访问Samba服务器。
server:独立远程主机验证密码(集中管理账号)。
domain:PDC验证(password server=IP)。

根据在配置文件中的设置内容创建/smbtest目录并设置其权限

cd ~
mkdir /smbtest
chmod 777 /smbtest

使用

使用smbpasswd命令添加一个已经存在的Linux用户。

smbpasswd -a 用户名

新建用户:
useradd username
passwd username

启动Samba服务

service smb start
# 或者
systemctl start smb

以上都失败可以尝试:sudo systemctl start smbd

关闭SELinux,并关闭防火墙。

setenforce 0
systemctl stop firewalld.service

在Windows窗口上方地址栏中输入地址,访问共享的smbtest目录。需要输入添加的Samba用户名及密码进行验证。

NFS

概述

NFS(Network File System,网络文件系统),是由SUN公司研制的UNIX表示层协议,基于UDP,是当前主流异构平台共享文件系统之一。在进行文件传送或信息传送的过程中,依赖远程过程调用协议(remote procedure call,RPC)。该协议是使客户端能够执行其他系统中程序的一种机制。NFS本身不提供信息传输的协议和功能,但由于RPC提供的传输协议,NFS可以实现资料的共享。因此,可以说NFS就是使用PRC的一个程序。在实际应用中,客户端通过挂载的方式将NFS服务器端共享的数据目录挂载到本地目录下。实质上是将一台机器中共享的目录挂载在另一台机器的某个目录中,从而实现文件共享。

安装、配置

查询本机是否安装了Samba服务

rpm -q nfs-utils
#或者
rpm -qa|grep nfs-utils

利用yum命令进行安装

yum install nfs-utils

创建共享目录/nfstest,并修改其权限。

cd ~
mkdir /nfstest
chmod 777 /nfstest

修改配置文件/etc/exports,添加导出目录信息。

vim /etc/exports
/nfstest *(rw,no_root_squash)

在这里插入图片描述可以执行命令查看导出目录情况。

exportfs参数说明:
-a:全部挂载或卸载 /etc/exports中的内容。
-r:重新读取/etc/exports 中的信息,并同步更新/etc/exports和/var/lib/nfs/xtab。
-u:卸载单一目录(和-a一起使用,则卸载所有/etc/exports文件中的目录)。
-v:输出详细的共享参数。

使用

重启NFS服务,并关闭防火墙。

systemctl restart nfs.service
systemctl stop firewalld.service

在另一台主机上挂载该共享目录。

cd ~
mkdir test
mount ip地址:/nfstest /root/test -o nolock

cd test # 可以开始使用共享目录了
ls
  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Cheney822

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值