上一篇介绍了sratools,但是因为其过于垃圾,所以就不推荐。
换一个好用的aspera。
1.aspera下载
先进入https://www.ibm.com/products/aspera/downloads?list
然后找到如图所示的IBM Aspera Connect。因为数据一般是下载在服务器上,所以需要选择linux版本进行安装。
点击View documentation就会有不同的版本,选择最新的版本。
点进去,然后。。。。。。我忘了下载地址在哪里了。
你们自己找下载地址吧。
上次下载和这次写教程的时间间隔有点久,我也忘记了在哪里下载的。
你们要是找见的话,麻烦评论区留个言呀。指不定哪天我也需要呢~~
反正,最后下载下来的文件长这样:
2.解压缩、安装
tar -zxvf ibm-aspera-connect-3.11.0.5-linux-g2.12-64.tar.gz
解压缩之后,得到一个.sh文件,运行下面的命令:
sh ibm-aspera-connect-3.11.0.5-linux-g2.12-64.sh
然后,在你的根目录下就会生成一个.aspera的目录。
划重点,是根目录,不是当前目录。
ls -a
就可以看见.aspera了。
然后一路进入目录,直到bin下,里面有ascp。
为了运行方面,把它添加到你的环境变量里面。
可以直接打开.bashrc把ascp写进去,或者运行如下命令:
echo 'export PATH=~/.aspera/connect/bin:$PATH' >> ~/.bashrc
source ~/.bashrc
ascp --help
好了。
- 运行
先来看看ascp的参数吧
-T 不进行加密。若不添加此参数,可能会下载不了。
-i 输入私钥,安装 aspera 后有在目录 ~/.aspera/connect/etc/ 下有几个私钥,使用 linux 服务器的时候一般使用 ~/.aspera/connect/etc/ asperaweb_id_dsa.openssh 文件作为私钥。
--host=string ftp的host名,NCBI的为ftp-private.ncbi.nlm.nih.gov;EBI的为fasp.sra.ebi.ac.uk。
--user=string 用户名,NCBI的为anonftp,EBI的为era-fasp。
--mode=string 选择模式,上传为 send,下载为 recv。
-l string 设置最大传输速度,比如设置为 200M 则表示最大传输速度为 200m/s。若不设置该参数,则一般可达到10m/s的速度,而设置了,传输速度可以更高。
–k 断点续传,一般选1.
-P 提供SSH port,端口一般是33001。而且anonftp的时候不需要,era-fasp的时候需要。
示例:
3.1. 从NCBI上下载
ascp -T \
-i ~/.aspera/connect/etc/asperaweb_id_dsa.openssh \
-k 1 -l 200m \
anonftp@ftp-private.ncbi.nlm.nih.gov:/sra/sra-instant/reads/ByRun/sra/SRR/SRR620/SRR6208854/SRR6208854.sra ./sra/
3.2. 从EBI上下载
ascp -k 1 -QT -l 300m -P33001 \
-i ~/.aspera/connect/etc/asperaweb_id_dsa.openssh \
era-fasp@fasp.sra.ebi.ac.uk:/vol1/fastq/SRR854/SRR854523/SRR854523_1.fastq.gz ./sra/
一般都是没问题的。
-
个人经验
但是,我就很惨兮兮。。。。
每次都会报错。啊~~~~~~奔溃。
为啥呢?
检查了很多遍各种路径,没问题呀!
最后发现这个服务器 没有接外网。啊。眼泪流下来。
怎么发现的呢?
ping www.baidu.com
就这样吧,要去解决连接外网的问题了。