Linux16 ftp文件服务区、vsftpd文件系统服务安装、lftp客户端安装、NFS远程共享存储
目录
- 一、FTP基础
- ftp主动模式
- ftp被动模式
- 二、vsftpd配置
- 共享目录
- 编辑配置文件
- 使用windows 访问
- 三、客户端安装 (lftp)
- 匿名用户的一些操作(lftp {ip})
- ftp配置本地用户登录
- 配置本地用户ftp配置文件
- lftp操作
- NFS远程共享存储
- 安装nfs
- 客户端操作
一、FTP基础
- 软件包: vsftpd
- FTP端口: 控制端口:21/tcp
- 配置文件: /etc/vsftpd/vsftpd.conf
ftp主动模式
ftp主动模式:客户端开启一个端口N(>1023)向服务端的21端口,建立连接,同时开启一个N+1,告诉服务端,我监听的是N+1端口,服务端接到请求之后,用自己的20端口连接到客户端的N+1端口,进行传输
21端口建立连接
20端口传输数据
ftp被动模式
ftp被动模式:客户端同时开启两个端口(1024,1025),一个端口(1024)跟服务端的21端口建立连接,并请求,大哥,我连上了,你再开一个端口呗。服务端接到请求之后,随机会开启一个端口(1027)并告诉客户端我开启的是1027端口,客户端用另一个端口(1025)与服务端的(1027)端口进行连接,传输数据
二、vsftpd配置
环境需求
centos7
关闭防火墙
关闭 selinux
FTP Server(服务端)
实验环境--准备两台机器
关闭防火墙和selinux
systemctl stop firewalld
systemctl disable firewalld
setenforce 0
=========================================
ftp-server 192.168.246.160
client 192.168.246.161
==========================================
安装vsftpd
[root@ftp-server ~]$ yum install -y vsftpd
[root@ftp-server ~]$ systemctl start vsftpd
[root@ftp-server ~]$ systemctl enable vsftpd
共享目录
[root@localhost ~]$ mkdir /var/ftp/upload #创建自己的共享目录
[root@ftp-server ~]$ touch /var/ftp/upload/test.txt #创建文件到共享目录
[root@ftp-server ~]$ cd /var/ftp/
[root@ftp-server ftp]$ ls
pub upload
[root@ftp-server ftp]$ chown ftp.ftp * -R #修改根目录的属主与属组
编辑配置文件
打开配置目录
vim /etc/vsftpd/vsftpd.conf可以添加下列配置命令
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
anon_umask=022 #让用户拥有下载 上传的文件的权限

使用windows 访问
使用我的电脑即可访问

三、客户端安装 (lftp)
- 用户机也需要关闭防火墙
匿名用户的一些操作(lftp {ip})
yum -y install lftp #安装客户端get命令(下载,首先要开启下载功能)
[root@client ~]# lftp 192.168.246.160
lftp 192.168.246.160:~> ls #查看文件列表
lftp 192.168.246.160:/> cd upload/ #进入某个目录
lftp 192.168.246.160:/upload> get test.txt #下载
lftp 192.168.246.160:/upload> exit #退出
[root@client ~]# ls #会下载到当前目录
lftp 192.168.246.160:/upload> mkdir dir #也可以创建目录
lftp 192.168.246.160:/upload> put /root/a.txt #上传文件
lftp 192.168.246.160:/upload> mirror -R /root/test/ #上传目录以及目录中的子文件
lftp 192.168.246.160:/upload> mirror test/ #下载目录
ftp配置本地用户登录
先创建两个用户
useradd zhangsan
useradd lisi
echo '123456' | passwd --stdin zhangsan #设置密码
echo '123456' | passwd --stdin lisi
配置本地用户ftp配置文件
[root@ftp-server ~]$ vim /etc/vsftpd/vsftpd.conf ---添加注释并修改
anonymous_enable=NO #将允许匿名登录关闭
#anon_umask=022 #匿名用户所上传文件的权限掩码
#anon_upload_enable=YES #允许匿名用户上传文件
#anon_mkdir_write_enable=YES #允许匿名用户创建目录
#anon_other_write_enable=YES #是否允许匿名用户有其他写入权(改名,删除,覆盖)103 chroot_list_enable=YES #启用限制登陆用户在主目录里面
104 # (default follows)
105 chroot_list_file=/etc/vsftpd/chroot_list #限制登陆的用户在这个文件列表中,一行一个用户
106 allow_writeable_chroot=YES #允许限制的用户对目录有写权限
新添加
local_root=/home/zhangsan # 设置本地用户的FTP根目录,一般为用户的家目录
local_root=/var/ftp # 让用户可以进入公共目录
local_max_rate=0 # 限制最大传输速率(字节/秒)0为无限制
lftp操作
get 下载单个文件
mget 下载多个文件
mirror 下载目录put 上传单个文件
mput 上传多个文件
mirror -R 上传目录mkdir 创建目录rm -rf 删除文件或者目录
NFS远程共享存储
实验环境
- centos 7
- 关闭selinux
- 关闭 firewalld
安装nfs
[root@nfs-server ~]# yum -y install rpcbind #安装rpc协议的包
[root@nfs-server ~]# yum -y install nfs-utils #安装nfs服务。
启动服务
[root@nfs-server ~]# systemctl start nfs
[root@nfs-server ~]# systemctl start rpcbind
[root@nfs-server ~]# mkdir /nfs-dir #创建存储目录
[root@nfs-server ~]# echo "nfs-test" >> /nfs-dir/index.html #制作test文件
[root@nfs-server ~]# vim /etc/exports #编辑共享文件
客户端操作
[root@web1 ~]# yum -y install rpcbind
[root@web1 ~]# yum -y install nfs-utils
[root@web1 ~]# mkdir /qf #创建挂载点
[root@web1 ~]# mount -t nfs 192.168.246.160:/nfs-dir /qf #挂载
-t:指定文件系统类型
[root@web1 ~]# df -Th
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/centos-root xfs 17G 1.1G 16G 7% /
tmpfs tmpfs 98M 0 98M 0% /run/user/0
192.168.246.160:/nfs-dir nfs4 17G 1.4G 16G 8% /qf
[root@web1 ~]# ls /qf
index.html
[root@web1 ~]# umount /qf #取消挂载制作开机挂载
[root@client.qfedu.com ~]# vim /etc/fstab
192.168.246.160:/nfs-dir /qf nfs defaults 0 0
[root@client.qfedu.com ~]# mount -a
完结撒花~~~~
相关文章:
Linux16 ftp文件服务区、vsftpd文件系统服务安装、lftp客户端安装、NFS远程共享存储
目录 一、FTP基础ftp主动模式ftp被动模式 二、vsftpd配置共享目录编辑配置文件使用windows 访问 三、客户端安装 (lftp)匿名用户的一些操作(lftp {ip})ftp配置本地用户登录配置本地用户ftp配置文件 lftp操作 NFS远程共享存储安装n…...
[排序篇] 冒泡排序
目录 一、概念 二、冒泡排序 2.1 冒泡降序(从大到小排序) 2.2 冒泡升序(从小到大排序) 三、冒泡排序应用 总结 一、概念 冒泡排序核心思想:每次比较两个相邻的元素,如果它们不符合排序规则(升序或降序)则把它们交换过来。…...
CGAL的四面体网格重构
1、多材料各向同性四面体网格重构 此软件包实现了等人提出的四边形网格质量重分算法。这种实用的迭代重分网格算法旨在通过迭代执行一系列基本操作来重分多材料四边形网格,这些操作包括边缘分裂、边缘折叠、边缘翻转和顶点重定位,这些操作是在拉普拉斯平…...
排序-选择排序与堆排序
文章目录 一、选择排序二、堆排序三、时间复杂度四、稳定性 一、选择排序 思想: 将数组第一个元素作为min,然后进行遍历与其他元素对比,找到比min小的数就进行交换,直到最后一个元素就停止,然后再将第二个元素min&…...
d2l绘图不显示的问题
之前试了各种方法都不行 在pycharm中还是不行,但是在anaconda中的命令行是可以的 anaconda prompt conda activaye py39 #进入f盘 F: #运行文件 python F:\python_code\softmax.py...
智能优化算法应用:基于人工蜂群算法3D无线传感器网络(WSN)覆盖优化 - 附代码
智能优化算法应用:基于人工蜂群算法3D无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用:基于人工蜂群算法3D无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.人工蜂群算法4.实验参数设定5.算法结果6.…...
云原生的 CI/CD 框架tekton - Trigger(二)
上一篇为大家详细介绍了tekton - pipeline,由于里面涉及到的概念比较多,因此需要好好消化下。同样,今天在特别为大家分享下tekton - Trigger以及案例演示,希望可以给大家提供一种思路哈。 文章目录 1. Tekton Trigger2. 工作流程3…...
maven环境搭建
maven历史版本下载:https://archive.apache.org/dist/maven/ 新建系统变量编辑Path,添加bin目录mvn -v测试查看版本号conf目录下新建repository文件夹,作为本地仓库 settings.xml <?xml version"1.0" encoding"UTF-8&…...
利用Rclone将阿里云对象存储迁移至雨云对象存储的教程,对象存储数据迁移教程
使用Rclone将阿里云对象存储(OSS)的文件全部迁移至雨云对象存储(ROS)的教程,其他的对象存储也可以参照本教程。 Rclone简介 Rclone 是一个用于和同步云平台同步文件和目录命令行工具。采用 Go 语言开发。 它允许在文件系统和云存储服务之间或在多个云存储服务之间…...
二叉树的前序遍历
问题描述: 给你二叉树的根节点root,返回节点值的前序遍历。 示例 1: 输入:root [1,null,2,3] 输出:[1,2,3]示例 2: 输入:root [] 输出:[]示例 3: 输入:ro…...
final的安全发布
final的安全发布 两个关键字“发布”“安全” 所谓发布通俗一点的理解就是创建一个对象,使这个对象能被当前范围之外的代码所使用 比如Object o new Object(); 然后接下来使用对象o 但是对于普通变量的创建,之前分析过,大致分为三个步骤&am…...
3易懂AI深度学习算法:长短期记忆网络(Long Short-Term Memory, LSTM)生成对抗网络 优化算法进化算法
继续写:https://blog.csdn.net/chenhao0568/article/details/134920391?spm1001.2014.3001.5502 1.https://blog.csdn.net/chenhao0568/article/details/134931993?spm1001.2014.3001.5502 2.https://blog.csdn.net/chenhao0568/article/details/134932800?spm10…...
云计算 云原生
一、引言 云计算需要终端把信息上传到服务器,服务器处理后再返回给终端。在之前人手一台手机的情况下,云计算还是能handle得过来的。但是随着物联网的发展,什么东西都要联网,那数据可就多了去了,服务器处理不过来&…...
深拷贝、浅拷贝 react的“不可变值”
知识获取源–晨哥(现实中的人 嘿嘿) react中如果你想让一个值始终不变 或者说其他操作不影响该值 它只是作用初始化的时候 使用了浅拷贝–改变了初始值 会改变初始值(selectList1) 都指向同一个地址 const selectList1 { title: 大大, value: 1 };con…...
赛宁网安多领域亮相第三届网络空间内生安全发展大会
2023年12月8日,第三届网络空间内生安全发展大会在宁开幕。两院院士、杰出专家学者和知名企业家相聚南京,围绕数字经济新生态、网络安全新范式进行广泛研讨,为筑牢数字安全底座贡献智慧和力量。 大会围绕“一会、一赛、一展”举办了丰富多彩的…...
LintCode 123 · Word Search (DFS字符处理经典题!)
123 Word Search Algorithms Medium Description Given a 2D board and a string word, find if the string word exists in the grid. The string word can be constructed from letters of sequentially adjacent cell, where “adjacent” cells are those horizontally o…...
SpringCloud面试题——Sentinel
一:什么是Sentinel? Sentinel是一个面向分布式架构的轻量级服务保护框架,实现服务降级、服务熔断、服务限流等功能 二:什么是服务降级? 比如当某个服务繁忙,不能让客户端的请求一直等待,应该立刻返回给客户端一个备…...
【精选】 VulnHub (超详细解题过程)
🍬 博主介绍👨🎓 博主介绍:大家好,我是 hacker-routing ,很高兴认识大家~ ✨主攻领域:【渗透领域】【应急响应】 【python】 【VulnHub靶场复现】【面试分析】 🎉点赞➕评论➕收藏…...
数据结构与算法-Rust 版读书笔记-2线性数据结构-队列
数据结构与算法-Rust 版读书笔记-2线性数据结构-队列 1、队列:先进先出 队列是项的有序集合,其中,添加新项的一端称为队尾,移除项的另一端称为队首。一个元素在从队尾进入队列后,就会一直向队首移动,直到…...
Android Kotlin Viewbinding封装
目录 Viewbinding配置 Activity封装 Activity使用 Fragment封装 Fragment使用 Dialog封装 Dialog使用 Viewbinding配置 android { viewBinding { enabled true } } Activity封装 import android.os.Bundle import android.view.LayoutInflater import androidx.ap…...
基于算法竞赛的c++编程(28)结构体的进阶应用
结构体的嵌套与复杂数据组织 在C中,结构体可以嵌套使用,形成更复杂的数据结构。例如,可以通过嵌套结构体描述多层级数据关系: struct Address {string city;string street;int zipCode; };struct Employee {string name;int id;…...
未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?
编辑:陈萍萍的公主一点人工一点智能 未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?RWM通过双自回归机制有效解决了复合误差、部分可观测性和随机动力学等关键挑战,在不依赖领域特定归纳偏见的条件下实现了卓越的预测准…...
云原生核心技术 (7/12): K8s 核心概念白话解读(上):Pod 和 Deployment 究竟是什么?
大家好,欢迎来到《云原生核心技术》系列的第七篇! 在上一篇,我们成功地使用 Minikube 或 kind 在自己的电脑上搭建起了一个迷你但功能完备的 Kubernetes 集群。现在,我们就像一个拥有了一块崭新数字土地的农场主,是时…...
SkyWalking 10.2.0 SWCK 配置过程
SkyWalking 10.2.0 & SWCK 配置过程 skywalking oap-server & ui 使用Docker安装在K8S集群以外,K8S集群中的微服务使用initContainer按命名空间将skywalking-java-agent注入到业务容器中。 SWCK有整套的解决方案,全安装在K8S群集中。 具体可参…...
docker详细操作--未完待续
docker介绍 docker官网: Docker:加速容器应用程序开发 harbor官网:Harbor - Harbor 中文 使用docker加速器: Docker镜像极速下载服务 - 毫秒镜像 是什么 Docker 是一种开源的容器化平台,用于将应用程序及其依赖项(如库、运行时环…...
树莓派超全系列教程文档--(61)树莓派摄像头高级使用方法
树莓派摄像头高级使用方法 配置通过调谐文件来调整相机行为 使用多个摄像头安装 libcam 和 rpicam-apps依赖关系开发包 文章来源: http://raspberry.dns8844.cn/documentation 原文网址 配置 大多数用例自动工作,无需更改相机配置。但是,一…...
rknn优化教程(二)
文章目录 1. 前述2. 三方库的封装2.1 xrepo中的库2.2 xrepo之外的库2.2.1 opencv2.2.2 rknnrt2.2.3 spdlog 3. rknn_engine库 1. 前述 OK,开始写第二篇的内容了。这篇博客主要能写一下: 如何给一些三方库按照xmake方式进行封装,供调用如何按…...
论文浅尝 | 基于判别指令微调生成式大语言模型的知识图谱补全方法(ISWC2024)
笔记整理:刘治强,浙江大学硕士生,研究方向为知识图谱表示学习,大语言模型 论文链接:http://arxiv.org/abs/2407.16127 发表会议:ISWC 2024 1. 动机 传统的知识图谱补全(KGC)模型通过…...
学习STC51单片机32(芯片为STC89C52RCRC)OLED显示屏2
每日一言 今天的每一份坚持,都是在为未来积攒底气。 案例:OLED显示一个A 这边观察到一个点,怎么雪花了就是都是乱七八糟的占满了屏幕。。 解释 : 如果代码里信号切换太快(比如 SDA 刚变,SCL 立刻变&#…...
均衡后的SNRSINR
本文主要摘自参考文献中的前两篇,相关文献中经常会出现MIMO检测后的SINR不过一直没有找到相关数学推到过程,其中文献[1]中给出了相关原理在此仅做记录。 1. 系统模型 复信道模型 n t n_t nt 根发送天线, n r n_r nr 根接收天线的 MIMO 系…...
