FTP:文件传输协议(指令及响应代码)

文件传输协议(FTP)使得主机间能够共享文件。 FTP 使用 TCP 生成一个虚拟链接用于控制信息,而后再生成一个单独的 TCP 链接用于数据传输。控制链接使用相似 TELNET 协议在主机间交换命令和消息。

  FTP 的主要功能以下:服务器

  • 提供文件的共享(计算机程序 / 数据);
  • 支持间接使用远程计算机;
  • 使用户不因各种主机文件存储器系统的差别而受影响;
  • 可靠且有效的传输数据。

  FTP ,尽管能够直接被终端用户使用,但其应用主要仍是经过程序实现。网络

  FTP 控制帧即指 TELNET 交换信息,包含 TELNET 命令和选项。然而,大多数 FTP 控制帧是简单的 ASCII 文本,能够分为 FTP 命令或 FTP 消息。 FTP 消息是对 FTP 命令的响应,它由带有解释文本的应答代码构成。 数据结构


命令 描述
ABOR 中断数据链接程序
ACCT <account> 系统特权账号
ALLO <bytes> 为服务器上的文件存储器分配字节
APPE <filename> 添加文件到服务器同名文件
CDUP <dir path> 改变服务器上的父目录
CWD <dir path> 改变服务器上的工做目录
DELE <filename> 删除服务器上的指定文件
HELP <command> 返回指定命令信息
LIST <name> 若是是文件名列出文件信息,若是是目录则列出文件列表
MODE <mode> 传输模式(S=流模式,B=块模式,C=压缩模式)
MKD <directory> 在服务器上创建指定目录
NLST <directory> 列出指定目录内容
NOOP 无动做,除了来自服务器上的认可
PASS <password> 系统登陆密码
PASV 请求服务器等待数据链接
PORT <address> IP 地址和两字节的端口 ID
PWD 显示当前工做目录
QUIT 从 FTP 服务器上退出登陆
REIN 从新初始化登陆状态链接
REST <offset> 由特定偏移量重启文件传递
RETR <filename> 从服务器上找回(复制)文件
RMD <directory> 在服务器上删除指定目录
RNFR <old path> 对旧路径重命名
RNTO <new path> 对新路径重命名
SITE <params> 由服务器提供的站点特殊参数
SMNT <pathname> 挂载指定文件结构
STAT <directory> 在当前程序或目录上返回信息
STOR <filename> 储存(复制)文件到服务器上
STOU <filename> 储存文件到服务器名称上
STRU <type> 数据结构(F=文件,R=记录,P=页面)
SYST 返回服务器使用的操做系统
TYPE <data type> 数据类型(A=ASCII,E=EBCDIC,I=binary)
USER <username>> 系统登陆的用户名

标准 FTP 信息以下:

响应代码 解释说明
110 新文件指示器上的重启标记
120 服务器准备就绪的时间(分钟数)
125 打开数据链接,开始传输
150 打开链接
200 成功
202 命令没有执行
211 系统状态回复
212 目录状态回复
213 文件状态回复
214 帮助信息回复
215 系统类型回复
220 服务就绪
221 退出网络
225 打开数据链接
226 结束数据链接
227 进入被动模式(IP 地址、ID 端口)
230 登陆因特网
250 文件行为完成
257 路径名创建
331 要求密码
332 要求账号
350 文件行为暂停
421 服务关闭
425 没法打开数据链接
426 结束链接
450 文件不可用
451 遇到本地错误
452 磁盘空间不足
500 无效命令
501 错误参数
502 命令没有执行
503 错误指令序列
504 无效命令参数
530 未登陆网络
532 存储文件须要账号
550 文件不可用
551 不知道的页类型
552 超过存储分配
553 文件名不容许

FTP 由 IETF(http://www.ietf.org)在 RFC 959 中,并由222八、2640 和 2773 从新更新。
 spa