环境搭建:BLAST+ 安装与 PATH 配置
搭建一个能用的 BLAST 环境,其实比你想的简单。说白了,装好软件,配好路径,让它能在任何目录下被调用。我刚开始做生信那会儿,就是因为 PATH 没配好,每次敲 blastn 都要先跑到安装目录下去,特别折腾。
今天我们就解决这件事。
下载 BLAST+ 安装包
NCBI 官方提供 BLAST+ 的预编译包。我个人习惯直接去 ftp.ncbi.nlm.nih.gov/blast/executables/blast+/LATEST 下载,省去编译的麻烦。
以 BLAST+ 2.14.0 为例,不同平台对应的包:
| 平台 | 文件格式 | 示例文件 |
|---|---|---|
| Linux (x86_64) | .tar.gz |
ncbi-blast-2.14.0+-x64-linux.tar.gz |
| Windows (x64) | .win-x64.exe 或 .zip |
ncbi-blast-2.14.0+-win64.exe |
| macOS (x86_64) | .dmg |
ncbi-blast-2.14.0+-x64-macosx.dmg |
安装步骤
Linux 系统
我推荐解压到 /usr/local 或 /opt 这类全局目录。权限不够就用 sudo。
cd /usr/local
sudo wget https://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/LATEST/ncbi-blast-2.14.0+-x64-linux.tar.gz
sudo tar -zxvf ncbi-blast-2.14.0+-x64-linux.tar.gz
sudo ln -s ncbi-blast-2.14.0+ blast
做完后,/usr/local/blast/bin 下就是所有可执行文件。
Windows 系统
Windows 用户直接双击 .exe 安装包。注意安装路径不要有中文或空格。默认安装路径一般是 C:\Program Files\NCBI\blast-2.14.0+\bin。
我的建议是改到 C:\blast 这样的短路径,后面配环境变量更省心。
macOS 系统
双击 .dmg 文件,把 ncbi-blast-2.14.0+ 拖到 Applications 里就行。
安装完成后 /Applications/ncbi-blast-2.14.0+/bin 就是程序所在目录。
配置 PATH 与环境变量
这一步我吃了不少苦头。刚开始配 PATH 时漏了 bin 子目录,结果 blastn -version 死活找不到命令。你想想看,这个问题排查起来真挺让人抓狂的。
所以,我们先理清概念:
- PATH:告诉系统去哪里找可执行文件。
- BLASTDB:告诉 BLAST 去哪里找参考数据库。
- BLASTMAT:告诉 BLAST 去哪里找替换矩阵(可选)。
Linux / macOS
编辑 ~/.bashrc(bash 用户)或 ~/.zshrc(zsh 用户,macOS 默认 shell)。
export PATH="/usr/local/blast/bin:$PATH"
export BLASTDB="/usr/local/blast/db:$BLASTDB"
export BLASTMAT="/usr/local/blast/data"
保存后执行:
source ~/.bashrc # 或 source ~/.zshrc
Windows
- 右键「此电脑」→ 属性 → 高级系统设置 → 环境变量。
- 在「系统变量」中找到
Path,双击,点击「新建」,输入C:\blast\bin。 - 新增系统变量
BLASTDB,值为C:\blast\db。 - 新增系统变量
BLASTMAT,值为C:\blast\data。
C:\Users\Zhang san\BLAST\(路径包含空格和中文)。Windows 的 cmd 和 PowerShell 对这种路径处理不一致,偶尔会报错。所以安装路径最好只有英文和下划线。
验证安装
这个命令在任何平台上都能用:
blastn -version
如果返回类似 blastn: 2.14.0+ Package: blast 2.14.0, build Aug 1 2023 12:00:00,说明安装和 PATH 配置都成功了。
我再教你测一下 BLASTDB 变量是否生效。先下载一个极小测试库:
cd /usr/local/blast/db
update_blastdb.pl --decompress refseq_rna.1.tar.gz
然后随便找个 .fasta 文件跑一下:
blastn -db refseq_rna.1 -query test.fa -out results.txt
能跑通,就证明环境完全就绪了。
环境搭建流程总览
blastn -version 的结果截图存一份。后面做项目排查时,这是最直接的证据,证明你的 BLAST 环境是好的。
常见问题与解法
我遇到过不少同学卡在这一步,这里把高频问题总结一下:
| 问题现象 | 最可能的原因 | 解决方法 |
|---|---|---|
blastn: command not found |
PATH 未包含 bin 目录 | 检查 PATH 值,确认指向 bin/,而不是安装根目录 |
BLAST Database error: No alias or index file... |
BLASTDB 变量未设置或数据库路径不对 | echo $BLASTDB(Win 用 echo %BLASTDB%)确认路径 |
| Windows 下双击安装后还是找不到命令 | 安装时没勾选「Add to PATH」 | 手动添加入环境变量,或重新安装并勾选该选项 |
| macOS 提示身份验证问题 | 安全策略阻挡了未签名的可执行文件 | 系统偏好设置 → 安全性与隐私 → 允许从以下位置下载 App,选中 App Store 和被认可的开发者 |
sudo 权限,可以把安装包解压到自己的 ~/local/bin 下,然后在 ~/.bashrc 里只配这一行:export PATH="$HOME/local/bin:$PATH"不需要
sudo,完全够用。