一、介绍
速度快
Aspera 最大的卖点就是速度。它比传统的 FTP/HTTP 下载快 10 倍到 100 倍。
A. 突破 TCP 协议的瓶颈
- **传统下载 (TCP)**:就像搬砖,搬一块就要问一句“收到没?”,收到回复了再搬下一块。一旦网络延迟高(比如从中国连美国),大部分时间都浪费在“问答”上了。
- **Aspera (FASP 协议)**:它基于 UDP 协议魔改而来。它像流水线一样疯狂往外扔砖头,不等待回复,只在最后检查哪些砖头碎了(丢包),然后只重发碎掉的那几块。
- 结果:它能完全跑满你的物理带宽,不管服务器是在美国还是火星。
B. 极高的稳定性 (断点续传)
- 不怕断网:下载 100GB 的数据,下到 99% 断网了?没关系,Aspera 支持断点续传,下次直接从 99% 继续,不需要重头再来。
- 智能流控:它能自动感知网络拥堵。如果有人在看视频,它会自动降速;如果网络空闲,它瞬间加速占满带宽。
C. 安全性
- 虽然我们在下载公开数据时通常关闭加密 (
-T) 以换取速度,但 FASP 协议本身支持军用级加密(AES-128),这也是为什么好莱坞电影公司都用它传输母带。
应用场景
并不是所有下载都需要 Aspera。杀鸡焉用牛刀,但在以下场景中,它是刚需:
场景A:下载海量测序数据 (最常见)
- 例子:你要下载 100 个样本的人类全基因组测序数据 (WGS)。
- 用
wget:可能需要下载 2 个月,而且中间断一次就崩溃。
场景 B:跨国/跨洲传输
- 例子:你在中国,服务器在美国 NCBI 或欧洲 EBI。
- 原理:距离越远,TCP 协议(普通下载)的效率衰减越严重,而 Aspera 几乎不受距离影响。
场景 C:下载参考基因组数据库
- 例子:下载 NCBI 的
nt 库(几百 GB)或 nr 库。这些大文件如果用浏览器下载,几乎百分百会失败。
二、Aspera安装(Linux)
1. 下载安装包
由于 IBM 官网现在禁止目录浏览(会报 403 错误),请直接复制下面的命令来下载 3.9.9 稳定版。这个版本兼容性最好。
# 直接下载到当前目录wget https://download.asperasoft.com/download/sw/connect/3.9.9/ibm-aspera-connect-3.9.9.177872-linux-g2.12-64.tar.gz
- **如果提示
wget: command not found**: 请尝试使用 curl -O <链接>,或者在本地电脑下载后上传到服务器。
2. 解压文件
下载得到的是一个 .tar.gz 压缩包,我们需要把它解压出来。
# 解压命令tar -zxvf ibm-aspera-connect-3.9.9.177872-linux-g2.12-64.tar.gz
解压后你会得到什么?你会看到一个后缀为 .sh 的脚本文件,名字大概长这样:ibm-aspera-connect-3.9.9.177872-linux-g2.12-64.sh。
3. 执行安装
这是最关键的一步。直接运行刚才解压出来的脚本。
# 运行安装脚本bash ibm-aspera-connect-3.9.9.177872-linux-g2.12-64.sh
注意:不要用 root 权限安装,直接用当前用户运行即可。 如果你用root账户运行后看到如下输出:
This script cannot be run as root, IBM Aspera Connect must be installed per user.
这意味着安装失败了!
- 原因:你当前使用的是
root 账户。Aspera Connect 是一款用户级软件,设计上禁止 root 安装。 - 解决:请切换到一个普通用户账号(例如
su - zhangsan),然后再运行安装脚本。
只有看到 "Install complete" 字样,才代表安装成功。
如果看到这个,说明软件已经装进你的家目录 (~/.aspera/) 里了。
4. 配置环境变量 (永久生效)
很多新手装完后输入 ascp 发现系统提示“找不到命令”。这是因为你还没告诉系统软件装在哪了。
我们需要修改 .bashrc 配置文件。
第一步:将路径写入配置文件
直接复制下面这行命令执行(注意不要漏掉任何标点符号):
echo'export PATH=$HOME/.aspera/connect/bin:$PATH' >> ~/.bashrc
- 解释:这句话的意思是“把 Aspera 的安装目录加到系统的 PATH 列表里,这样我在任何地方都能直接敲
ascp 命令”。
第二步:让配置立即生效
source ~/.bashrc
第三步:验证
现在,尝试输入查看帮助命令:
ascp --help
如果屏幕上哗啦啦出来一大堆帮助信息,恭喜你,安装配置完美成功!
5. 找到你的“万能钥匙” (秘钥文件)
Aspera 下载数据(尤其是 ENA 或 NCBI)需要一个私钥文件。这个文件在安装时已经自动生成了,但藏得很深。
秘钥文件的绝对路径是:$HOME/.aspera/connect/etc/asperaweb_id_dsa.openssh
为了以后使用方便,建议你现在就定义一个变量存起来:
# 1. 把这行也写入 .bashrc,以后每次登录都能自动用echo'export KEY=$HOME/.aspera/connect/etc/asperaweb_id_dsa.openssh' >> ~/.bashrc# 2. 刷新配置source ~/.bashrc
以后你写命令时,直接用 $KEY 代替那个长长的路径就行了。
三、获取数据链接
很多同学装好了 Aspera,却卡在了最关键的一步:“我的下载链接去哪找?”尤其是现在的 NCBI 网页改版后,根本找不到以 fasp 或 /sra/ 开头的链接。
方法一:使用 ENA 数据库 (最推荐 ⭐⭐⭐⭐⭐)
理由:可以直接看到链接,且直接下载 .fastq.gz 格式(省去格式转换的麻烦)。
1. 打开官网
访问 ENA (欧洲核苷酸档案馆) 官网:https://www.ebi.ac.uk/ena/browser/home
2. 搜索数据
在顶部的搜索框中输入你的 SRA 数据编号(例如 SRR11192680),点击 Search。
3. 找到下载栏
在搜索结果页面,点击 ID 进入详情页。往下翻,找到 "Read Files" 表格。 你会看到一列叫 **"FASTQ files (FTP)"**。
4. 提取链接
这里的链接通常长这样:ftp.sra.ebi.ac.uk/vol1/fastq/SRR111/080/SRR11192680/SRR11192680_1.fastq.gz⚠️ 关键转换步骤: Aspera 不能直接用 HTTP/FTP 链接,需要稍微改一下:
- 去掉头部的
ftp.sra.ebi.ac.uk (或者 ftp:// 前缀)。 - 加上用户和服务器前缀:
era-fasp@fasp.sra.ebi.ac.uk: (注意末尾有个冒号)。
组合后的完整“地址”:era-fasp@fasp.sra.ebi.ac.uk:/vol1/fastq/SRR111/080/SRR11192680/SRR11192680_1.fastq.gz
方法二:使用 sra-explorer 工具 (懒人神器 ⭐⭐⭐⭐⭐)
理由:不需要动脑子拼链接,网站自动帮你生成完整的 Aspera 命令。
1. 打开网站
访问:https://sra-explorer.info/
2. 搜索并添加
- 点击搜索结果旁边的 **蓝色加号 (+)**,把它加入“购物车”。
3. 获取命令
- 点击页面上方的 **"Saved datasets"**(购物车图标)。
- 点击 "Aspera commands for downloading FastQ files" 按钮。
它甚至会贴心地帮你把 -l 100m -P33001 -i ... 这些参数都写好,你只需要粘贴到终端运行即可!
四、Aspera 命令行 (ascp) 实战
1. 基本语法结构
ascp 的命令结构非常像 Linux 自带的 cp (copy) 命令,只不过多了很多参数。
ascp [参数] [源文件地址] [目标目录]
- 源文件地址:服务器上的文件路径(通常以
用户@服务器: 开头)。 - 目标目录:你本地想存哪(通常是
. 表示当前目录)。
2. 核心参数详解 (必背)
在使用 ascp 时,以下 5 个参数是必须要加的,建议直接背下来或者存成笔记。
| | | |
|---|
-i | | 指定秘钥文件 | ~/.aspera/connect/etc/asperaweb_id_dsa.openssh |
-Q | | 自适应流控 | |
-T | | 关闭加密 | |
-l | | 最大带宽限制 | 100m |
-k | | 断点续传 | 1 |
-P | | 指定端口 | 33001 |
3. 实战案例
为了方便演示,我们假设你已经把秘钥路径存到了变量 $KEY 中:
export KEY="$HOME/.aspera/connect/etc/asperaweb_id_dsa.openssh"
案例 A:从 NCBI 下载 SRA 数据 (经典场景)
- 源地址:
anonftp@ftp.ncbi.nlm.nih.gov:/sra/sra-instant/reads/ByRun/sra/SRR/SRR111/SRR11192680/SRR11192680.sra
ascp -i $KEY -QT -l 100m -k 1 \ anonftp@ftp.ncbi.nlm.nih.gov:/sra/sra-instant/reads/ByRun/sra/SRR/SRR111/SRR11192680/SRR11192680.sra \ ./
案例 B:从 ENA 下载 FASTQ 数据 (推荐场景)
- 源地址:
era-fasp@fasp.sra.ebi.ac.uk:/vol1/fastq/SRR111/080/SRR11192680/SRR11192680_1.fastq.gz - 特点:必须加
-P33001 参数,且用户名为 era-fasp。
ascp -i $KEY -QT -l 200m -P33001 -k 1 \ era-fasp@fasp.sra.ebi.ac.uk:/vol1/fastq/SRR111/080/SRR11192680/SRR11192680_1.fastq.gz \ ./