起因
前段时间自己参加完一个单细胞转录组的培训后总觉得自己只学到了些皮毛,于是最近又报了个空间转录组相关的班想进阶一下。这个班在开课之前给了个ppt说是让我们研究下配置服务器环境,于是乎我就在这上面坐了3天的天牢,然后就有了这么一篇总结(或者说是小白坐牢日记?)
首先,要提的最重要的一点,安装软件不要安装在base环境!!!特别是服务器配置不是很理想的那种,千万不要这么做,不然你用久了就很想回到过去给自己一个大逼兜的。建议在正式装软件之前先构建一个新的虚拟环境(比方说这个项目是单细胞的,那就单独创一个只用于这个项目的虚拟环境,等后面有新项目了,又开一个新的)。它的好处其实挺多的,其中最重要的就是可以减少R或python方面的冲突(比方说这次配置环境折磨了我很久都没解决的CellphoneDB安装问题)。由于培训给了教程,所以这次我全程都是跟着教程走的。
软件的安装
本次需要安装的清单如下:
- miniconda
- R 4.1.2(以及相关的包)
- python(miniconda自带了)
- cellphonedb
- Cell Ranger
- Space Ranger
miniconda(如果服务器已经有conda了,可以跳过)
下载地址:https://docs.conda.io/en/latest/miniconda.html
安装手册要求我这里选用的是3.8版本的python。这里以后自己配环境得先去查自己需要的python版本再进行下载。
下载可以选用wget也可以先下载到电脑再借助FileZilla等软件上传至服务器。
wget命令(加上断点续传跟后台下载):
wget -cb https://repo.anaconda.com/miniconda/Miniconda3-py37_4.12.0-Linux-x86_64.sh
之后运行命令安装即可
sh Miniconda3-py37_4.12.0-Linux-x86_64.sh
按照提示按回车跟q、yes进入安装即可。之后会有提示跟你说安装到哪里,它有默认路径跟选择路径,按需选择即可(如果换路径记得选已有目录,必要时候得先新建目录哈)。
然后进行配置,这里可以参考这篇文章的流程,这里不多赘述了https://blog.csdn.net/weixin_38705903/article/details/86533863
至此,conda的安装到此结束,后面可以创建环境了。
创建环境
运行命令:
conda create --n 环境名称 python==3.8
之后按照提示输入y等待片刻即可,之后就可以进入环境操作了。
常用的环境相关命令
#创建环境
conda create --n 环境名称 python==需要的版本号
#进入环境
conda activate 环境名称
#退出环境
conda deactivate
#删除环境
conda remove -n 环境名称 --all
R的安装
conda install -c conda-forge cmake #升级编辑软件的版本
conda install -c conda-forge r-base=4.1.2 -y #R的安装
之后在这个网站搜索对应的包复制他们提供的命令下载R包即可(不仅省心还很方便):https://anaconda.org/search?q=Seurat
R包列表
- Seurat
- r-xml
- r-devtools
- bioconductor
- r-ggrastr
- r-spdep
- r-terra
- r-radal
- monocle3
- harmony
- scRepertoire
- SingleR
- SPOTlight
monocle V2这个包比较麻烦,需要BioManager来安装
BiocManager::install("monocle")
CellphoneDB的安装
# 这两个我都试过了,反正都有报错,不是命令的问题是我环境的问题
pip install cellphonedb -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install cellphonedb
这玩意就比较折磨人了,各种意外频频发生直接把我气到崩溃。最开始的报错是:Failed to build scikit-learn h5py numpy 根据报错提示我重新conda了这3个包,问题只解决了第一个包,剩下两个还是没解决。
直接放弃做后面的。后来整个流程就剩下这一步没解决,一开始他们说是版本问题,于是根据指引重装了个旧版,但是问题没有解决。又查阅更多的资料后发现解决方法也很简单,就是因为没装Cython,装上了就没事了。然后问题就剩下numpy了。这玩意不同的命令还有不同的报错,绝了……
最初的帖子说是因为python跟包的版本冲突,于是我又换了对应的版本号,依旧无果。最后在师兄的帮助下破案了,那个服务器的gcc是4.8.5,蛋疼的是没权限用conda也升级不了,只能不了了之,后面只能用他们提供的路径运行了。如果是自己服务器建议查一下gcc。
Cell Ranger和Space Ranger的安装
官网:
Cell Ranger https://support.10xgenomics.com/single-cell-gene-expression/software/downloads/latest
Space Ranger https://support.10xgenomics.com/spatial-gene-expression/software/downloads/latest
其中,Cell Ranger支持单细胞转录组和单细胞免疫组库的分析;Space Ranger支持空间转录组的分析。
PC上的软件:Loupe Browser和Loupe VDJ Browser的下载
官网:
Loupe Browser https://support.10xgenomics.com/spatial-gene-expression/software/downloads/latest#loupe
Loupe VDJ Browser https://support.10xgenomics.com/single-cell-vdj/software/downloads/latest#loupe
总结
不得不说,这次服务器环境配置的体验,我是足足受了3天的折磨,确实学到了很多东西,不仅仅是服务器配置的一些知识,更重要的是对报错日志的分析,以往自己分析报错基本上就看红字部分,现在明白了白字也可能有报错的重要信息,有的东西偷懒是不可能成功的,没那种捷径。其次,安装软件要记得创建环境,不同的项目要分不同的环境来进行工作,这样不会出现一些软件版本上的冲突问题。而且最重要的是,在环境里面捣鼓不会对其他环境有影响,犯错的成本会低很多,可以放心去摸索解决方案。