文件传输教程:修订间差异
创建页面,内容为“本教程讨论了将数据从本地(或外部)机器输入和输出 SDF 的各种方法。” |
无编辑摘要 |
||
| (未显示同一用户的3个中间版本) | |||
| 第1行: | 第1行: | ||
本教程讨论了将数据从本地(或外部)机器输入和输出 SDF 的各种方法。 | 本教程讨论了将数据从本地(或外部)机器输入和输出 SDF 的各种方法。 | ||
'''待办事项:''' | |||
* x/y/zmodem 传输 | |||
* kermit 传输 | |||
---- | |||
== 简介 == | |||
要在 SDF 和您的本地(或任何其他外部)机器之间传输数据,有多种方法。它们的可用性取决于您在 SDF 的会员级别(请参阅常见[http://sdf.org/index.cgi?faq?MEMBERS FAQ, 会员部分]以获取更多信息),外部系统及其连接。 | |||
== FTP - File Transfer Protocol == | |||
[http://en.wikipedia.org/wiki/File_Transfer_Protocol FTP (File Transfer Protocol)] 在 SDF 上仅用于 '''下载''' 公共文件,这是出于安全原因。对于私人文件的上传和下载,必须使用 [[文件传输教程#scp 和 sftp - secure copying 和 ftp|scp 和 sftp]]。 | |||
<small>注意:ARPA 会员可以允许通过 FTP 进行上&下载;然而,如果可能的话,最好使用 scp 或 sftp,因为 FTP 是不加密的,而且你的密码也必须在明文状态下传输。</small> | |||
对于下载,将你的 FTP 程序指向 sdf.org,并使用匿名 FTP 来读取数据(用户名 <code>anonymous</code> ,密码 <code>''yourlogin''@sdf.org</code> , 或您其他的电子邮件地址)。 | |||
== scp 和 sftp - secure copying 和 ftp == | |||
scp 和 sftp 是基于 ssh(secure shell)的安全数据传输方式。如果您之前只使用过 ftp,您会惊讶于使用 scp 的便捷性和好处。 | |||
假设您已登录到 sdf,并希望将一些图片从您的家用计算机(在本例中命名为 foo)传输到您的 sdf 主目录。您需要使用以下命令:<syntaxhighlight lang="shell">scp *.jpg [email protected] :/your/remote/home/</syntaxhighlight>我们来分解一下这个命令: | |||
scp | |||
该命令本身。 | |||
<nowiki>*</nowiki>.jpg | |||
您想要传输的文件。 | |||
您希望连接的服务器的用户名。 | |||
<nowiki>:</nowiki>/your/remote/home/ | |||
你想要上传的目录。 | |||
除非你已经安装了 ssh 授权密钥,否则系统会提示你输入用户名和密码。之后,你应该会看到类似以下的输出:<syntaxhighlight lang="shell"> | |||
[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]# | |||
</syntaxhighlight>在 SDF 上,你需要成为 ARPA 会员才能使用它们。请查阅 scp 和 ssh 的手册页以获取更多信息和使用选项。 | |||
在 Windows 机器上,你可以使用 PuTTY 程序 。 | |||
== ssh 和 tar - 安全复制目录 == | |||
tar 归档工具可以与 ssh 配合使用,快速复制整个目录树: | |||
<code>tar cf - ''target_dir'' | ssh [email protected] " tar xf - -C ~/''path''/ "</code> | |||
注意:此技巧需要本地和远程系统上安装兼容版本的 tar 工具。 | |||
== Gopher 和 HTTP - 利用互联网进行下载 == | |||
要从本地机器上的SDF中获取数据,当然可以将它们发布到你的Gopher或网站上。请查阅[http://sdf.org/index.cgi?faq?GOPHER 常见问题解答(FAQ)中的GOPHER部分]以及[http://sdf.org/index.cgi?tutorials/building_a_website 网站教程],以获取有关如何设置这些网站的详细信息。 | |||
请注意,HTTP 流量受带宽限制,具体取决于您的会员级别;如果您的流量超过配额,您的网站将被暂时封锁! | |||
要防止任何人访问,请参阅常见问题解答(FAQ)中[http://sdf.org/index.cgi?faq?WEB?04 密码保护]的部分。 | |||
== 终端(Terminal) - 通过终端直接复制 == | |||
对于传输少量文本数据(脚本、表格、源代码片段)的情况,建议直接在终端中进行复制粘贴!如果你是[http://sdf.org/index.cgi?faq?MEMBERS?01 MetaARPA],那么你可以利用<code>screen</code>及其内置的复制功能在不同屏幕之间传输数据。 | |||
要在终端中将文本输入追加到SDF上的文件中,您可以使用您喜欢的文本编辑器打开SDF上的文件。或者直接使用命令 <code>cat >>file</code>,将数据发送到终端(通过粘贴功能),并以一行仅包含 ^D (CTRL-D) 的内容结束--要在终端中这样做,请点击 RETURN、CTRL-D、RETURN;这将关闭 <code>cat</code> 正在读取的标准输入。 | |||
== 电子邮件 - 仅用于小文件 == | |||
如果您需要传输二进制数据,但不能使用 scp(因为您不是 [http://sdf.org/index.cgi?faq?MEMBERS?01 ARPA],这很可惜),那么您可能需要通过电子邮件传输文件。为此,您需要将要输入 SDF 的数据附加到一封邮件中,然后发送到您在 SDF 上的地址(''yourlogin''@sdf.org)。在 SDF 上,您可以阅读邮件,并将附件保存到需要数据的地方(例如,您的主目录,您可以使用 <code>mv</code> 将其移动到该目录)。 | |||
这对大附件可能不起作用,因为无处不在的电子邮件系统并不是为文件传输而设计的。如果你需要经常传输大文件,你应该认真考虑成为 ARPA! | |||
== 术语表 == | |||
ARPA 和 MetaARPA | |||
这些是SDF上的额外会员等级,可使用更多功能,提供更大空间,并带来支持SDF的良好体验! | |||
下载(download) | |||
将数据从SDF传输到本地机器;想象SDF位于某个高处,以便所有人都能看到它——然后你从SDF下载数据。 | |||
[http://www.chiark.greenend.org.uk/~sgtatham/putty PuTTY] | |||
这是一套适用于 Windows 电脑的软件,用于 ssh 和 scp 连接。 | |||
[http://sdf.org/ SDF] | |||
Super Dimensional Fortress - 如果你不知道那是什么,那你为什么要读这篇文章?<''wink'' | |||
terminal (终端) | |||
用于以文本模式连接到计算机的设备(更准确的定义请参见相应的[http://en.wikipedia.org/wiki/Computer_terminal 维基百科条目]),或在本教程中仅指以文本模式访问SDF的窗口。如果你使用的是Windows系统,这可能是Telnet窗口(或建议使用PuTTY通过SSH进行安全连接——即使不属于ARPA,这也同样可行),而在Linux机器上则是一个xterm窗口。 | |||
upload (上传) | |||
将数据从本地机器传输到SDF;请参阅下载(download)。 | |||
----''<small>$Id: filetransfer.html,v 1.17 2020/01/01 22:27:19 niro Exp $</small>'' | |||
2025年8月20日 (三) 05:53的最新版本
本教程讨论了将数据从本地(或外部)机器输入和输出 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
您想要传输的文件。
您希望连接的服务器的用户名。
:/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下载数据。
这是一套适用于 Windows 电脑的软件,用于 ssh 和 scp 连接。
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 $