第2章:Krona的安装与配置
KronaTools 这玩意儿,说白了就是个能把分类数据变成交互式圆环图的工具。我最早接触它的时候,还是被一篇宏基因组论文里的图吸引住的——鼠标一点,一层层往下钻,直观得不行。但你想想看,工具再好,装不上也是白搭。这一章我就带你把 KronaTools 装好、配好、跑通,一步到位。
2.1 安装 KronaTools
KronaTools 的安装,其实比你想的要简单。它主要依赖 Perl,大部分 Linux 和 macOS 系统都自带了。我个人习惯把它放在 /opt/ 或者 ~/tools/ 下面,方便管理。
核心思路:下载 → 解压 → 放到固定目录 → 配环境变量。三步走,不啰嗦。
2.1.1 下载 KronaTools
官方推荐从 GitHub 拉取最新版本。我记得有一回直接在服务器上 wget 下来,结果发现下载的是旧版,图标渲染有点问题。所以——一定确认版本号。
# 使用 wget 下载(推荐)
wget https://github.com/marbl/Krona/releases/download/v2.8.1/KronaTools-2.8.1.tar.gz
# 或者用 curl
curl -LO https://github.com/marbl/Krona/releases/download/v2.8.1/KronaTools-2.8.1.tar.gz
# 解压
tar -zxvf KronaTools-2.8.1.tar.gz
小提示:如果你想一直用最新的,也可以直接 git clone https://github.com/marbl/Krona.git。不过我个人更喜欢用 release 版本,稳定、可控。
2.1.2 放置到目标目录
解压后你会看到一个 KronaTools-2.8.1 文件夹。我一般把它挪到 /opt/ 下面,方便多用户调用。
# 移动到 /opt 目录(需要 sudo)
sudo mv KronaTools-2.8.1 /opt/KronaTools
# 或者放到用户目录下(不需要权限)
mv KronaTools-2.8.1 ~/tools/KronaTools
嗯,这里要注意:如果你放在 /opt/ 下,后续配置环境变量时记得用 sudo 写入系统级配置文件;放用户目录的话,改自己 ~/.bashrc 就行。
2.2 配置环境变量
环境变量配不好,KronaTools 就找不到命令。你想想看,你敲 ktImportTaxonomy 的时候,系统要是不知道它在哪,肯定报 command not found。所以这一步不能省。
2.2.1 添加 PATH
KronaTools 的 scripts/ 目录下放着所有可执行脚本。把这个目录加到 PATH 里就行。
# 打开配置文件(以 bash 为例)
vim ~/.bashrc
# 在文件末尾添加以下内容(根据你的安装路径调整)
export KRONA_HOME=/opt/KronaTools
export PATH=$PATH:$KRONA_HOME/scripts
# 保存后使配置生效
source ~/.bashrc
我曾经遇到过一个问题:配置完 source ~/.bashrc 后当前终端是好的,但新开的终端又找不到命令了。后来发现是 .bashrc 里有个条件判断,非交互式登录不执行。所以保险起见,你也可以把环境变量写到 ~/.profile 或 ~/.bash_profile 里。
2.2.2 验证环境变量
配好了没?敲下面两个命令检查一下。
# 检查 PATH 中是否包含 KronaTools
echo $PATH | grep KronaTools
# 检查 Krona 命令是否能被找到
which ktImportTaxonomy
如果 which 返回了路径,说明环境变量生效了。如果返回空,嗯……回去检查上一步。
2.3 验证安装
环境配好了,到底能不能用?咱们跑两个命令验证一下。
2.3.1 查看帮助信息
KronaTools 的每个脚本都带了 -h 参数,这是最直接的验证方式。
ktImportTaxonomy -h
如果看到一堆参数说明,恭喜,安装成功了。如果报错,别急,往下看。
2.3.2 运行自带测试
KronaTools 提供了一个测试数据集,在 KronaTools/data/ 目录下。我们可以用它来生成一个简单的 Krona 图。
# 进入测试目录
cd /opt/KronaTools/data
# 用测试数据生成 Krona 图
ktImportTaxonomy -i test.taxonomy -o test.html
# 用浏览器打开 test.html 查看效果
如果生成了 test.html,而且用浏览器打开后能看到交互式圆环图,那说明一切 OK 了。我记得我第一次跑通的时候,点着那个圆环一层层展开,觉得这东西真有点意思。
验证清单:
- ✅
ktImportTaxonomy -h能显示帮助 - ✅
which ktImportTaxonomy返回路径 - ✅ 测试数据能生成
test.html - ✅ 浏览器打开
test.html交互正常
2.4 常见安装问题与避坑
装软件这事儿,很少一次顺顺利利的。我这些年碰到过的问题,给你列一下,省得你再踩一遍。
| 问题 | 原因 | 解决方法 |
|---|---|---|
command not found |
环境变量未配置或未生效 | 检查 ~/.bashrc,确认 source 执行 |
Can't locate ... in @INC |
Perl 模块缺失 | 运行 cpan install <模块名> 补装 |
| 权限不足 | 放在 /opt 下未设置权限 |
chmod +x /opt/KronaTools/scripts/* |
| 生成 HTML 空白 | 旧版 KronaTools 或数据格式不对 | 升级到 v2.8.1+,检查输入文件格式 |
| 浏览器打开不出图 | JavaScript 未启用或浏览器太老 | 换 Chrome/Firefox 最新版 |
避坑指南:我曾经在一个 CentOS 6 的服务器上折腾了整整一下午,就是因为系统自带的 Perl 版本太旧(5.10),装不了最新的 KronaTools。最后升级到 Perl 5.26 才解决。所以——装之前先看一眼 Perl 版本,低于 5.12 的建议先升级。