文件传输教程

来自tutorials.sdfcn.org - sdf中文html教程
Gao66留言 | 贡献2025年8月20日 (三) 01:32的版本
跳转到导航 跳转到搜索

本教程讨论了将数据从本地(或外部)机器输入和输出 SDF 的各种方法。

代办事项:

  • x/y/zmodem 传输
  • kermit 传输

简介

要在 SDF 和您的本地(或任何其他外部)机器之间传输数据,有多种方法。它们的可用性取决于您在 SDF 的会员级别(请参阅常见FAQ, 会员部分以获取更多信息),外部系统及其连接。

FTP - File Transfer Protocol

FTP (File Transfer Protocol) 在 SDF 上仅用于 下载 公共文件,这是出于安全原因。对于私人文件的上传和下载,必须使用 scp 和 sftp

注意:ARPA 会员可以允许通过 FTP 进行上&下载;然而,如果可能的话,最好使用 scp 或 sftp,因为 FTP 是不加密的,而且你的密码也必须在明文状态下传输。

对于下载,将你的 FTP 程序指向 sdf.org,并使用匿名 FTP 来读取数据(用户名 anonymous ,密码 yourlogin@sdf.org , 或您其他的电子邮件地址)。

scp 和 sftp - secure copying 和 ftp

scp 和 sftp 是基于 ssh(secure shell)的安全数据传输方式。如果您之前只使用过 ftp,您会惊讶于使用 scp 的便捷性和好处。

假设您已登录到 sdf,并希望将一些图片从您的家用计算机(在本例中命名为 foo)传输到您的 sdf 主目录。您需要使用以下命令:

scp *.jpg [email protected] :/your/remote/home/

我们来分解一下这个命令:

scp

该命令本身。

*.jpg

您想要传输的文件。

[email protected]

您希望连接的服务器的用户名。

:/your/remote/home/

你想要上传的目录。

除非你已经安装了 ssh 授权密钥,否则系统会提示你输入用户名和密码。之后,你应该会看到类似以下的输出:

[me@local Pictures]# scp *.jpg [email protected]:~/your/remote/home
IMG_016.jpg 100% 1802KB 45.7KB/s 00:39
IMG_017.jpg 100% 1253KB 46.1KB/s 00:40
IMG_018.jpg 100% 1243KB 48.6KB/s 00:25
IMG_020.jpg 100% 1131KB 45.9KB/s 00:39
[foo@local Pictures]#

在 SDF 上,你需要成为 ARPA 会员才能使用它们。请查阅 scp 和 ssh 的手册页以获取更多信息和使用选项。

在 Windows 机器上,你可以使用 PuTTY 程序 。

ssh 和 tar - 安全复制目录

tar 归档工具可以与 ssh 配合使用,快速复制整个目录树:

tar cf - target_dir | ssh [email protected] " tar xf - -C ~/path/ "

注意:此技巧需要本地和远程系统上安装兼容版本的 tar 工具。

Gopher 和 HTTP - 利用互联网进行下载

要从本地机器上的SDF中获取数据,当然可以将它们发布到你的Gopher或网站上。请查阅常见问题解答(FAQ)中的GOPHER部分以及网站教程,以获取有关如何设置这些网站的详细信息。

请注意,HTTP 流量受带宽限制,具体取决于您的会员级别;如果您的流量超过配额,您的网站将被暂时封锁!

要防止任何人访问,请参阅常见问题解答(FAQ)中密码保护的部分。

终端(Terminal) - 通过终端直接复制

对于传输少量文本数据(脚本、表格、源代码片段)的情况,建议直接在终端中进行复制粘贴!如果你是MetaARPA,那么你可以利用screen及其内置的复制功能在不同屏幕之间传输数据。

要在终端中将文本输入追加到SDF上的文件中,您可以使用您喜欢的文本编辑器打开SDF上的文件。或者直接使用命令 cat >>file,将数据发送到终端(通过粘贴功能),并以一行仅包含 ^D (CTRL-D) 的内容结束--要在终端中这样做,请点击 RETURN、CTRL-D、RETURN;这将关闭 cat 正在读取的标准输入。

电子邮件 - 仅用于小文件

如果您需要传输二进制数据,但不能使用 scp(因为您不是 ARPA,这很可惜),那么您可能需要通过电子邮件传输文件。为此,您需要将要输入 SDF 的数据附加到一封邮件中,然后发送到您在 SDF 上的地址(yourlogin@sdf.org)。在 SDF 上,您可以阅读邮件,并将附件保存到需要数据的地方(例如,您的主目录,您可以使用 mv 将其移动到该目录)。

这对大附件可能不起作用,因为无处不在的电子邮件系统并不是为文件传输而设计的。如果你需要经常传输大文件,你应该认真考虑成为 ARPA!

术语表

ARPA 和 MetaARPA

            这些是SDF上的额外会员等级,可使用更多功能,提供更大空间,并带来支持SDF的良好体验!

下载(download)

            将数据从SDF传输到本地机器;想象SDF位于某个高处,以便所有人都能看到它——然后你从SDF下载数据。

PuTTY

            这是一套适用于 Windows 电脑的软件,用于 ssh 和 scp 连接。

SDF

            Super Dimensional Fortress - 如果你不知道那是什么,那你为什么要读这篇文章?<wink

terminal (终端)

            用于以文本模式连接到计算机的设备(更准确的定义请参见相应的维基百科条目),或在本教程中仅指以文本模式访问SDF的窗口。如果你使用的是Windows系统,这可能是Telnet窗口(或建议使用PuTTY通过SSH进行安全连接——即使不属于ARPA,这也同样可行),而在Linux机器上则是一个xterm窗口。

upload (上传)

            将数据从本地机器传输到SDF;请参阅下载(download)。


$Id: filetransfer.html,v 1.17 2020/01/01 22:27:19 niro Exp $