7 宏基因组课程问题记录
7.1 服务器登录和软件安装问题
7.1.1 请问老师,用rstudio登陆服务器和用终端ssh登陆有什么区别?
- Rstudio-server登录和终端登录本质是一样的方式,都可以完成一样的功能。
- Rstudio-server登录简单易用,适合初学者,可以快速了解服务器的目录结构、文件内容。有界面,而且是熟悉的界面,可以减少陌生感。
- Rstudio-server登录还有4个好处:
- 运行代码直接点
run
,省却了代码拷贝的过程,更简单方便。 - 代码修改后随时记录。
- 网断了也不怕,再次登录上去程序还在运行。相当于自带
nohup
功能。 - 调用服务器的资源,大数据作图更方便。
- 运行代码直接点
7.1.2 老师,课程会讲解服务器安装rstudio server的步骤吗?
- rstudio server安装的视频见 4.1.7。
- rstudio server安装需要有
root
根用户权限。 - RStudio-Server安装和内网穿透要点。
7.1.3 Rstudio 直接拖拽就能上传自己数据?
- Rstudio有数据
上传
(upload
)和下载
(export
)操作,可以直接点击进行。 - 如果是大的文件,如几个G或几十G的原始测序数据,建议用
FileZilla
等工具,传输更稳定快捷。
7.1.4 打包的流程后面还会陆续更新软件版本吗?
- 我们提供
conda-pack
打包后的环境供大家直接下载到自己服务器,解压就可以使用,省却下载安装过程,成功率100%,不受联网或网速限制。 - 我们提供的环境是当前最新的。
- 如果自己后续需要更新,可以激活环境后,再update;示例代码如下
conda activate meta; mamba update -- all
。
7.1.5 请问没有服务器root权限的话可以用咱们打包好的流程?
- 可以的。Conda解决了没有root权限的问题,可以都安装在自己有权限的目录如家目录下。
- Linux - 一文掌握Conda软件安装:虚拟环境、软件通道、加速solving、跨服务器迁移
7.1.7 如果有自己的服务器的话,怎么去配置呢?
- 参考
0Install.sh
脚本和往期视频,具体参考4.1.7部分。
7.1.8 服务器是组里一起用的,之前安装过Amplicon,那如果再装metagenome的话,会不会出现冲突?那安装某一个软件的话,是不是需要先指定一个环境?
- Conda 的好处就是可以创建不同的环境。不同环境直接的软件不会互相干扰或发生冲突。
- Linux - 一文掌握Conda软件安装:虚拟环境、软件通道、加速solving、跨服务器迁移
- 安装某一类软件的话,最好先指定一个环境。
- 如果是多个环境共用的软件,也可以直接放在主环境里面。
7.1.9 128核/256内存的话,跑humann2 如果用40个核或者更多,内存够吗? 做宏基因组的话,老师推荐一般一个线程配多少内存呢? 宏基因组分析的时候 服务器是把测序数据和数据库都读取到内存里进行比对吗?
- 256G 内存运行HuMann2,多少核应该都是够的。HuMann2内存需求不大。
- 内存占用通常与软件的运行方式有关,如比对工具把全部索引读入内存,需要的内存空间至少就是索引的大小。如果是序列组装,则会把所有测序数据读入内存,所需内存与测序数据量相当,进行组装。
- 运行时使用的核越多,内存需求也越大;但通常不是线性关系,而是达到一定内存需求后,增加核不会再额外增加更多内存消耗。
- 评估见 什么配置的电脑可满足基因组索引构建的需求?
7.1.11 学Amplicon,自己笔记本安装的是R4.0.2的,现在再装R4.1,会不会有冲突?
- R 的多个版本是可以共存的,不会冲突。
- 在 Rstudio 中调用时可以选择需要的 R 版本。
- 建议都升级到 R4.1或更新的版本。
7.1.12 老师,下次课可以讲一下如何从NCBI下载公开数据吗?比如Longitudinal Multi-omics Reveals Subset-Specific Mechanisms Underlying Irritable Bowel Syndrome这篇文章:Microbiome sequencing reads are deposited at the European Nucleotide Archive (ENA) (PRJEB37924).不过这个不是NCBI
7.1.14 流程里的线程是什么意思,选择几个线程有标准吗?
- 线程是让程序并行运行,速度更快。
- 没有选择标准,通常不多于服务器可用总线程的一半,毕竟其他人也需要用服务器。
- 评估见线程也不是越多越好,多少是好?
7.1.15 我看流程里关于软件安装有好多种命令 conda install * pip install * apt install * sudo apt install * 它们之间的区别?
- 不同的软件有不同的安装方式。具体在课程视频软件安装部分有详细介绍。
- conda install *: 安装所有 conda 能安装的软件
- pip install *: 安装Python 的包
- apt install *: 安装Ubuntu软件库中有的软件;需要有根用户权限,所以要加sudo。
7.1.18 conda安装需要指定安装位置嘛 不知道安装到哪个文件夹?
- 安装Conda时,指定conda的安装位置,后续所有通过conda安装的软件都在这个目录下面。
- 具体见Linux - 一文掌握Conda软件安装:虚拟环境、软件通道、加速solving、跨服务器迁移
7.2 软件使用
7.2.1 当使用KO表做lefse差异,或物种表文件较大时,ehbio在线平台报错”任务超时”。另外尝试lefse conda环境下报错”bash: lefse-format_input.py: 未找到命令”。
- 物种文件较大时,建议先过滤肯定没有差异的物种,降低文件大小,在通过在线平台进行分析。
- KO 表不知道能不能做 Lefse 分析。
- 通过 conda 安装的 lefse 存在问题:
- 命名名字变了,所以找不到命令;比如lefse-format_input.py变成了lefse_format_input.py
- 命令名字尝试更新为最新版,但代码有问题,就没继续修改;
- 后面我把我 github 上的 lefse 配置一版放服务器上。
7.2.2 用自己的笔记本给服务器提交命令后,笔记本能否关机?关机后会否影响服务器运行?
- 如果是通过Rstudio-server提交的,可以直接关了页面,程序会照常运行,下次还可以看到状态。
- 如果通过Xhsell运行的程序,建议
nohup 你的命令 &
;这样你关掉xshell或笔记本,程序正常运行。可以再次登录服务器,通过top
命令或ps
命令查看程序运行状态。 - 如果通过Xshell运行的程序,忘记加
nohup
了,怎么办?耗时很长的程序忘加nohup就运行了怎么办?