Linux学习之ftp安装、vsftpd安装和使用

ftp需要两个端口:

数据端口
命令端口

ftp有两种模式:

被动模式:建立命令连接之后,服务器等待客户端发起请求。
主动模式:建立命令连接之后,服务器主动向客户端发起数据连接,因为客户端可能有防火墙,或者在内网中,客户端无法发送数据请求,一般不使用。

当前的主机名是Sea1,主机ip172.31.0.180
在这里插入图片描述

Sea1上执行yum install -y vsftpd ftp安装vsftpdftp
在这里插入图片描述

systemctl start vsftpd.service打开vsftpd服务,systemctl status vsftpd.service可以看到状态是active (running)
在这里插入图片描述

再打开同一个内网里边的服务器作为客户端,主机名为Sea2ip172.31.0.150
在这里插入图片描述

Sea2也需要yum install -y ftp安装ftp
在这里插入图片描述

Sea2使用cd /shelllearn/转到 /shelllearn目录下。
在这里插入图片描述

Sea2执行ftp 172.31.0.180连接ftp然后使用匿名用户ftp登录,不用输入密码。
在这里插入图片描述

客户端ftp匿名用户登录到远程ftp服务器上之后能够进入的目录是/var/ftp

先在服务器Sea1上使用seq 1 5 >> /var/ftp/testFtp/var/ftp/目录下创建一个文件为testFtp(用于测试ftp从服务器下载文件),这个文件里边的内容如下:

1
2
3
4
5

在这里插入图片描述
要是不太理解seq命令的使用,可以看我以前的《Linux学习之sed删除、追加、插入、更改、读写文件、下一行、打印、退出和seq命令》中seq命令使用方法。

若是在客户端Sea2上ftp连接中执行pwd的话,可以看到当前工作目录是/ls -l可以看一下服务器上当前目录里边有什么文件,而上边在服务器上新建的testFtp就在文件列表里边。
在这里插入图片描述

ftp连接中客户端在命令之前加上!就表明在本地执行命令,不是在服务器端执行命令。
Sea2在ftp连接中使用!ls -l看到的就是Sea2/shelllearn 目录下文件列表信息,!pwd看到的就是Sea2的当前工作目录。

在这里插入图片描述

Sea2在ftp连接中使用get testFtp就可以把Sea1中的/var/ftp/testFtp文件下载下来,!ls -l就可以验证Sea2已经成功下载到testFtp文件。
在这里插入图片描述

Sea2在ftp连接中使用!cat catRedirectSh.sh看一下Sea2catRedirectSh.sh的内容为:

#!/bin/bash
echo "I am learning!"

Sea2在ftp连接中使用put catRedirectSh.sh想要上传文件到服务器Sea1,结果报错Permission deniedquit可以退出来ftp连接。
在这里插入图片描述

此文章为8月Day 21学习笔记,内容来源于极客时间《Linux 实战技能 100 讲》。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/83860.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

iOS 17 正式版预计 9 月中下旬发布,部分新功能延后推出

苹果公司预计将在 9 月中下旬推出 iOS 17 正式版,iPhone XS 及更新的机型可免费更新。这次更新包含了许多新功能,但是根据苹果公司的网站显示,并不是所有的功能都会立即可用。苹果表示有一些功能“将在今年晚些时候推出”,比如&am…

STM32F4X 定时器中断

STM32F4X 定时器中断 什么是定时器STM32F4X 定时器分类有关定时器的概念预分频(PSC)自动重装载值(ARR) STM32F4X定时器例程定时器相关函数定时器例程 什么是定时器 定时器(Timer)最基本的功能就是定时,比如定时翻转LED灯,定时向串口发送数据等。除此之外…

webpack 和 ts 简单配置及使用

如何使用webpack 与 ts结合使用 新建项目 ,执行项目初始化 npm init -y会生成 {"name": "tsdemo01","version": "1.0.0","description": "","main": "index.js","scripts&…

2019年3月全国计算机等级考试真题(C语言二级)

2019年3月全国计算机等级考试真题(C语言二级) 第1题 负责数据库中查询操作的数据库语言是 A. 数据定义语言 B. 数据管理语言 C. 数据操纵语言 D. 数据控制语言 正确答案:C 第2题 有关系如下图所示,其违反了哪一类完整性约束 …

MetaMask Mobile +Chrome DevTools 调试Web3应用教程

注:本教程来源网络,有兴趣的可以直接到这里查看。 写好了WEB3应用,在本地调试用得好好的,但是用钱包软件访问就报莫名的错,但是又不知道是什么原因,排查的过程非常浪费时间 。 因此在本地同一局域网进行调试…

vite初始化vue3项目(配置自动格式化工具与git提交规范工具)

初始化项目 vite构建vue项目还是比较简单的,简单配置选择一下就行了 初始化命令 npm init vuelatest初始化最新版本vue项目 2. 基本选项含义 Add TypeScript 是否添加TSADD JSX是否支持JSXADD Vue Router是否添加Vue Router路由管理工具ADD Pinia 是否添加pinia…

用最简单的方式带你了解 MOS 管的七大封装类型

在制作 MOS 管之后,需要给 MOS 管芯片加上一个外壳,这就是 MOS 管封装。MOS 管封装不仅起着支撑、保护和冷却的作用,同时还可以为芯片提供电气连接和隔离,从而将管器件与其他元件构成完整的电路。为了更好地应用 MOS 管&#xff0…

微信小程序纯前端从阿里云OSS下载json数据-完整版

起因 因为云开发开始收费(貌似很久了),准备改造在以前的小程序,数据转到oss上,小程序使用原生,不算专业领域, 所以先百度.... 网上的教程真的是千篇一律,大部分开局就是require(ali-oss); 好点的npm install ali-oss --save开局,拼凑操作到最后发现要用云开发,因为云…

【UML】详解UML类图

目录 1.概述 2.权限 3.关系 3.1.连线关系 3.2.依赖 3.3.泛化(继承) 3.4.实现 3.5.关联 3.6.聚合 3.7.组合 1.概述 UML是什么?书面化一点的说法是: UML(Unified Modeling Language),…

实战:JVM调优命令工具

1、查看堆内存每个对象的信息 jmap -histo 12719 输出文件 jmap -histo 12719 > ./log.txt num: 序号 instances: 实例个数 bytes: 占用空间大小 class name: 类名称 2、查看堆内存信息 jmap -heap 12719 Heap Configuration: 分配的内存空间大小 Heap Usage: 使用的堆内存…

C#工程建立后修改工程文件名与命名空间

使用之前的项目做二次开发,项目快结束的时候,需要把主项目的名称修改成我们想要的。 之前从来没有这么干过,记录一下。 步骤如下: 1:打开vs2010项目解决方案,重命名,如下图所示: …

对类加载过程的通俗理解

开局一张图 一般来说,类加载分为:加载、验证、准备、解析、初始化 5个步骤。 各阶段略叙 1、加载 将.class文件加载进内存 2、验证 判断.class文件的格式是否正确 3、准备 为类的静态变量分配内存并设置初始值。只有b、c会在此阶段进行处理。 //…

麦肯锡发布《2023年度科技报告》!

在经历了 2022 年技术投资和人才的动荡之后,2023 年上半年,人们对技术促进商业和社会进步的潜力重新燃起了热情。生成式人工智能(Generative AI)在这一复兴过程中功不可没,但它只是众多进步中的一个,可以推…

P1328 [NOIP2014 提高组] 生活大爆炸版石头剪刀布

[NOIP2014 提高组] 生活大爆炸版石头剪刀布 题目描述 石头剪刀布是常见的猜拳游戏:石头胜剪刀,剪刀胜布,布胜石头。如果两个人出拳一样,则不分胜负。在《生活大爆炸》第二季第 8 集中出现了一种石头剪刀布的升级版游戏。 升级版游戏在传统的石头剪刀布游戏的基础…

常用系统命令

重定向 cat aa.txt > bbb.txt 将输出定向到bbb.txt cat aaa.txt >> bbb.txt 输出并追加查看进程 ps ps -ef 显示所有进程 例⼦:ps -ef | grep mysql |:管道符 kill pid 结束进程, 如 kill 3732;根据进程名结束进程可以先…

计算机竞赛 基于CNN实现谣言检测 - python 深度学习 机器学习

文章目录 1 前言1.1 背景 2 数据集3 实现过程4 CNN网络实现5 模型训练部分6 模型评估7 预测结果8 最后 1 前言 🔥 优质竞赛项目系列,今天要分享的是 基于CNN实现谣言检测 该项目较为新颖,适合作为竞赛课题方向,学长非常推荐&am…

opencv光流估计

光流估计 光流是空间运动物体在观测成像平面上的像素运动的“瞬时速度”,根据各个像素点的速度矢量特征,可以对图像进行动态分析,例如目标跟踪。 返回: 亮度恒定:同一点随着时间的变化,其亮度不会发生改变…

【STM32】串口通信乱码(认识系统时钟来源)

使用 stm32f407 与电脑主机进行串口通信时,串口助手打印乱码,主要从以下方面进行排查: 检查传输协议设置是否一致(波特率、数据位、停止位、校验位)检查MCU外部晶振频率是否和库函数设置的一致 最终发现是外部晶振频…

MySQL的安装以及卸载

下载官网 https://www.mysql.com/ 切到下载tab页 找到 MySQL Community Server 或者 MySQL Community (GPL) Downloads --> MySQL Community Server 点击download按钮: 点击download进入下载页面选择No thanks, just start my download就可以开始下载了。 下…

使用 Terraform 与事件驱动的 Amazon CodeBuild 提升云上数据应用运维效率

背景信息 企业客户在云上部署的一系列数据应用的过程中,数据开发团队往往负责脚本内容,而其背后一系列云上资源的管理通常由一支云运维职能团队通过 IaC(Infrastructre as Code)实现。然而,当数据开发团队开发及部署相…