小杜的生信笔记 发表于 2024-7-24 00:09:00

一文解决 | Linux(Ubuntn)系统安装 | 硬盘挂载 | 用户创建 | 生信分析配置 | 三

---
## 9. 配置生信分析环境

生信环境的配置,是我们进入生信分析**门槛前的最后一步**,若是没有这边,前面做的工作白做,后续的想做的工作无法进行。

我们这里使用的是**Bioinfo Note社群**中,@九筒同学的教程,这个教程他在23日刚做了更新,比较全面,我们就直接引用他的教程即可。若是这个教程,无法满足您的需求,那么你也可以继续查找其他的教程,在网上一搜索,会有很多个教程。

教程网址:https://www.yuque.com/jiutong-3byul/jiutong/imcg0lxd6zg5s39a?singleDoc#

教程作者:@九筒

### 9.1 升级组件

```
# 解决90%问题
sudo apt update
sudo apt upgrade
```

### 9.2 miniconda安装

```
# 可以去官网看看是否更新,安装最新的提示操作
mkdir -p ~/miniconda3
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O ~/miniconda3/miniconda.sh
bash ~/miniconda3/miniconda.sh -b -u -p ~/miniconda3
rm -rf ~/miniconda3/miniconda.sh
```

为 bash 和 zsh shell 初始化

```
~/miniconda3/bin/conda init bash
~/miniconda3/bin/conda init zsh
```

在这里我们更推荐大家下载`mamba`,`conda`下载确实慢。以及你也可以使用`Pixi`,[速度是conda的10倍以上,mamba的4倍,Pixi是何方神圣呢?真有这么快吗?](https://mp.weixin.qq.com/s?__biz=MzAwODY5NDU0MA==&mid=2455863605&idx=1&sn=3953379b74b273c72a1fc128820db124&scene=21#wechat_redirect)![](https://mmbiz.qpic.cn/sz_mmbiz_png/lUs7ZWuYGXjPO2fsCPzep6MwG1DThWhnakr4ibHO49uG6N6BiaibOq0WrKG2AZu9aTA9yOdpL9NfxzpiaMLYGCkaXg/640?wx_fmt=png&from=appmsg)

mamaba下载网址:

```
https://github.com/conda-forge/miniforge/releases/
```

![](https://mmbiz.qpic.cn/sz_mmbiz_png/lUs7ZWuYGXjPO2fsCPzep6MwG1DThWhnbEJS4I9cJuaMxwQXRNZBHdPhbsSBxEJVVJo3YvlM4ibWqFY7HhbyxVg/640?wx_fmt=png&from=appmsg)
---
后面的操作基本一致,若是你使用conda直接copy即可,若是你使用mamba,那么需要更换一下相关命令即可。

### 9.3 conda 常用命令

1. 增加生信分析常用的镜像

```
conda config --add channels defaults
conda config --add channels bioconda
conda config --add channels conda-forge
```

2. 关闭base环境自动启动

```
conda config --set auto_activate_base false
```

3. 创建虚拟环境

```
# 创建环境
conda create -n my_env_name

# 也可以在创建时指定要安装的包及版本
conda create -n my_env_name python=3.12 pytorch
```

4. 克隆环境

```
conda create -n new_env --clone old_env
```

5. 连接和退出环境

```
conda activate env_name
conda deactivate
```

6. 安装包的命令, 通常有三种安装方式:

```
## 安装一般的软件
conda install 软件名字
conda install -c conda-forge 软件名字

## 安装CRAN中的R包
conda install r-包的名字

## 安装bioconductor中的R包
conda install bioconductor-包的名字
```

---

7. mamba代替conda

作者在教程中也提供mamba操作

软件安装:

```
## 安装mamba
conda install mamba

## 安装一般的软件
mamba install 软件名字
mamba install -c conda-forge 软件名字

## 安装CRAN中的R包
mamba install r-包的名字

## 安装bioconductor中的R包
mamba install bioconductor-包的名字
```

8. 其他 conda 命令

```
# 显示conda 版本
conda --version

# 查看当前已创建环境的名称及位置
conda info --envs
conda env list

#查看当前安装的软件
conda list

# 删除虚拟环境
conda remove -n your_env_name --all

# 当前的 cofig
conda config --set show_channel_urls yes

# 查看添加的镜像:
conda config --show

# 当前channels文件
conda config --get channels

# 或者直接系统层面看conda的源
sudo nano ~/.condarc

# 删除源   
conda config --remove-key channels
```

### 9.4 安装 Jupyter Notebook

#### 9.4.1 安装 Jupyter

1. 方法一:每个环境安装一个jupyter

```
# 进入要安装jupyter的虚拟环境
conda activate omicverse

# 检查pip的版本
pip3 --version

# 检测pip是不是位于 omicverse 的虚拟环境下
which pip3
# 显示:/home/bio/miniconda3/envs/omicverse/bin/pip3

# 使用pip安装jupyter
pip3 install -U jupyter
```

2. 方法二:只在 base 环境中安装 jupyter

首先,需要在已经安装了 python 的环境中,安装 ipykernel

```
# 新建一个目标环境,指定python版本3.12
conda create -n pytest python=3.12

# 进入该环境
conda activate pytest

# 检查是否已经安装了ipykernel(如果该环境安装过jupyter,就会有ipkernel,不用再次安装)
conda list

# 如果没有,则安装ipykernel
conda install ipkernel -c conda-forge
```

然后,我们到 把 jupyter 安装到 base,用同一个 jupyter 来使用所有环境中的 python

```
# 回到base环境
conda deactivate

# 检查pip的版本
pip3 --version

# 检测pip是不是位于 miniconda 的 base 虚拟环境下
which pip3
# 显示:/home/bio/miniconda3/bin/pip3

# 使用pip安装jupyer
pip3 install -U jupyter
```

最后,将 conda 中的所有 python 环境添加到 Jupyter Notebook 中

```
# 安装这个工具
conda install nb_conda_kernels

# 这个只需要安装一次,以后新建的环境,安装了ipykernel后会自动添加
```

![](data/attachment/forum/plugin_zhanmishu_markdown/202407/34ce076e36a298d40d20a7d47d3aab3a_1721750928_8010.png)

#### 9.4.2 配置 jupyter

● 这里配置 jupyter 是为了方便我们进行远程访问 ● 注意,配置文件是全局的,即同一个用户,各个虚拟环境中的 jupyer 默认都使用同一个配置文件 ● 因此,即使在不同的虚拟环境中安装了多个 jupyter,只需要配置一次

1. 检查jupyter配置文件

```
# 生成配置文件,记住返回的文件地址
jupyter notebook --generate-config
# 默认是:/home/bio/.jupyter/jupyter_notebook_config.py

# 进入python解释器
python3
```

2. 计算密码的hash值

```
from jupyter_server.auth import passwd
passwd ()

# 设置密码
# Enter password:
# Verify password:

# 输入密码,返回该密码的hash值
# 如:'argon2:$argon2id$v=19$m=10240,t=10,p=8$NljykjG3OllNHs9cEnhHmw$4Yvv/CCHEir9PzzdSBFUJMHSa3OucpG+XgH3Fr0UMys'

# 退出python
quit()
```

3. 修改Jupyter配置文件

# 用 nano 编辑器打开配置文件

nano /home/bio/.jupyter/jupyter\_notebook\_config.py

```
4. 增加如下内容
```R
# 增加如下内容

# hash= 填上刚才生成的hash
hash='argon2:$argon2id$v=19$m=10240,t=10,p=8$NljykjG3OllNHs9cEnhHmw$4Yvv/CCHEir9PzzdSBFUJMHSa3OucpG+XgH3Fr0UMys'

# 允许任意ip访问
c.ServerApp.ip = '0.0.0.0'

# 设置密码
c.ServerApp.password = hash

# 关闭自动打开浏览器
c.ServerApp.open_browser = False

# 设置端口号
c.ServerApp.port = 8888

# 允许远程连接
c.ServerApp.allow_remote_access = True

# nano编辑器的操作很简单,修改完成后按 ctrl + x 退出
```

4. 安装中文语言包

```
# 安装中文语言包(推荐)
pip install jupyterlab-language-pack-zh-CN

# 或者用conda
conda install jupyterlab-language-pack-zh-CN
```

当然,如果你不修改配置文件,也可以通过 ssh 端口映射的方式远程访问,但不推荐

5. 端口映射

```
# windows terminal 连接服务器时映射端口号
# 不建议使用
ssh -L8888:localhost:8888 root@服务器IP
```

#### 9.4.3 启动并打开 Jupyter Notebook

1. 启动Jupyter

激活 conda 环境

```
# 如果是在每个环境中都安装了jupyter,则进入对应的环境启动
conda activate omicverse

# 如果是在base中安装的jupyter
conda activate base
```

进入对应的工作目录

```
# 我这里使用的是bio用户,进入后默认是/home/bio目录

# 检查当前目录
pwd
# 返回:/home/bio

# 我平时的项目都存储在/home/bio/work目录

# 如果没有,新建一个工作目录
mkdir work

# 进入work目录
cd work
```

启动Jupyter

```
# 启动 notebook
jupyter notebook

# 或者使用 jupyter lab
jupyter-lab

# 如果你是root用户(不建议)
jupyter notebook --allow-root

# 如果你是root用户(不建议)
jupyter-lab --allow-root
```

2. 浏览器访问

```
地址:服务器 IP:端口号
如:192.168.3.128:8888
第一次访问需要密码,就是你之前设置的密码(如 admin)
```

## 10. 安装R和Rstudio Server

关于安装 `R和Rstudio Server`,我们的教程(https://mp.weixin.qq.com/s?__biz=MzAwODY5NDU0MA==&mid=2455858740&idx=1&sn=25b9ecfcc5de80b26bdaed5c4233889e&scene=21#wechat_redirect)也介绍很详细,可以作为参考。

![](data/attachment/forum/plugin_zhanmishu_markdown/202407/34ce076e36a298d40d20a7d47d3aab3a_1721750928_4899.png)

### 10.1 创建R的虚拟环境

```
# 创建名为R的环境
conda create -n R
```

### 10.2 安装R

```
# 进入到R这个环境
conda activate R

#安装R,指定r-base=4.3.2,那么就会安装R-4.3.2,你也可以不指定
conda install r-base=4.3.2

# 进入R解释器
R

# 退出R解释器
q()

# 查看当前的R解释器
which R
```

### 10.3 安装 Rstudio server

● 建议查看官网地址:https://posit.co/download/rstudio-server/● 我这里安装的版本可能已经不是最新的

```
# 装gdebi-core
sudo apt-get install gdebi-core

# 下载Ubuntu 22对应的.deb文件
wget https://download2.rstudio.org/server/jammy/amd64/rstudio-server-2024.04.0-735-amd64.deb

# 安装
sudo gdebi rstudio-server-2024.04.0-735-amd64.deb

# 如果始终安装不上,试一下更新源
sudo apt update
sudo apt upgrade

# 验证是否安装
sudo rstudio-server verify-installation
sudo rstudio-server verify-installation
# 正常会提示:Server is running and must be stopped before running verify-installation
# 但这里极大可能是报错的,没关系,因为我们是在虚拟环境中安装的R,因此会提示找不到R,先不管它
```

### 10.4 配置 Rstudio server 中的R解释器

● 因为Rstudio server 是一个 linux 系统服务,你无法安装多个(除非你使用 docker,这个教程里不涉及) ● 如果你有多个不同的 R 环境,你就需要查看不同环境中的R解释器的位置 ● 然后我们告诉rstudio-server 使用哪个R 解释器

```
# 进入到某个安装了R解释器的环境
# 如刚刚我们安装的

# 进入到R这个环境
conda activate R

# 查看当前环境的R解释器地址
which R
# 返回:/home/bio/miniconda3/envs/R/bin/R

# 打开/etc/rstudio/rserver.conf文件
sudo nano /etc/rstudio/rserver.conf

# =后的地址修改为目标R解释器地址
rsession-which-r=/home/bio/miniconda3/envs/R/bin/R

# nano编辑器的操作很简单,修改完成后按ctrl + o,覆盖原文件,然后 ctrl + x 退出
```

### 10.5 重启 Rstudio server 服务

```
# sudo rstudio-server status            #查看RStudio-server
# sudo rstudio-server stop                #关闭RStudio-server
# sudo rstudio-server restart             #重启RStudio-server

# 这里我们手动重启一下
sudo rstudio-server restart

# 验证是否在运行,在启动状态下输入
sudo rstudio-server verify-installation
# 会提示:Server is running and must be stopped before running verify-installation

# 我们关闭服务
sudo rstudio-server stop

# 再次输入
sudo rstudio-server verify-installation
# 会输出诊断报告

# 重启服务
sudo rstudio-server restart
```

### 10.6 浏览器访问

```
地址:服务器 IP:端口号
默认端口号:8787
如:192.168.3.128:8787
账号:linux 用户名(bio)
密码:对应的用户密码(admin)
```

### 10.6 其他 Rstudio server 配置

官方配置教程:https://support.posit.co/hc/en-us/articles/200552316-Configuring-RStudio-Workbench-RStudio-Server

1.Rstudio server设置文件

```
cat /etc/rstudio/rserver.conf
# Server Configuration File

# 查看rsession配置文件
cat /etc/rstudio/rsession.conf
```

/etc/rstudio/rserver.conf

```
## In /etc/rstudio/rserver.conf

# 更改端口为8787,默认就是8787
www-port=8787

# 默认情况下,RStudio绑定到地址0.0.0.0
www-address=0.0.0.0

# 添加系统的库路径作为外部库以供RStudio server调用
rsession-ld-library-path=/xxxxxx/lib

# 指定conda中的R
rsession-which-r=/home/bio/miniconda3/envs/R/bin/R

# 限制能够使用RStudio-server的用户组,例如
auth-required-user-group=rstudio_users
```

/etc/rstudio/rserver.conf

```
## In /etc/rstudio/rserver.conf

# 默认用户超过2个小时没有发出命令,RStudio会将该用户的R session挂起到磁盘
# 这样他们就不再消耗服务器资源(下次用户尝试访问服务器时,他们的会话将被还原)
# 当用户在运行代码时是不会因为超时被挂起
# 可以使用session-timeout-minutes设置更改超时(包括通过指定值为0来禁用它)
session-timeout-minutes=30


# 更改R包安装地址
# 通过修改r-libs-user可以更改用户的默认R包安装地址
# 这样的好处是确保最终用户安装的R包在路径中没有R版本号
# 这使管理员可以在服务器上升级R版本而不用重置用户安装的软件包
r-libs-user=~/R/packages

# 更改默认镜像
r-cran-repos=https://mirrors.nics.utk.edu/cran/
```

---

ok!到这里,我们就完成了Ubuntu系统的安装+用户设置+磁盘挂载+生信环境基础配置。注意:我们文章中只是总结了一部分内容,很多详细的内容,都需要自己有正对性的设置,大家可以尽情地“度娘”。

---

> **获得本期教程**文本文档+Ubuntu系统(桌面版和server版)+启动盘制作软件**,在后台回复:20240724****。请大家看清楚回复关键词,每天都有很多人回复错误关键词,我这边没时间和精力一一回复。**

### 参考:

1. https://blog.csdn.net/mayue\_web/article/details/124750653
2. https://blog.csdn.net/winycg/article/details/109517512
3. https://blog.csdn.net/qq\_35451572/article/details/79541106
4. https://www.yisu.com/ask/88822632.html
5. https://blog.csdn.net/Mcy7ycM/article/details/124347504
6. https://blog.csdn.net/qq\_43116031/article/details/133858239
7. https://www.yuque.com/jiutong-3byul/jiutong/imcg0lxd6zg5s39a?singleDoc#

> 若我们的教程对你有所帮助,请 `点赞+收藏+转发`,这是对我们最大的支持。

### 往期部分文章

**1. 最全WGCNA教程(替换数据即可出全部结果与图形)**

* (https://mp.weixin.qq.com/s?__biz=MzAwODY5NDU0MA==&mid=2455850466&idx=1&sn=6036fc2a19594f7fc38d65271f21e9cc&scene=21#wechat_redirect)
* (https://mp.weixin.qq.com/s?__biz=MzAwODY5NDU0MA==&mid=2455850727&idx=1&sn=1156c2bb0b0c9baff02838f5ffce39bf&scene=21#wechat_redirect)
* (https://mp.weixin.qq.com/s?__biz=MzAwODY5NDU0MA==&mid=2455850742&idx=1&sn=3d3eeedb3b58e536a83dc38d15725cd4&scene=21#wechat_redirect)
* (https://mp.weixin.qq.com/s?__biz=MzAwODY5NDU0MA==&mid=2455854728&idx=5&sn=bc98befb8dd0f0090bdfe69f3ffdb008&scene=21#wechat_redirect)
* (https://mp.weixin.qq.com/s?__biz=MzAwODY5NDU0MA==&mid=2455856103&idx=1&sn=774f8a084d21f757266f35c501c7155d&scene=21#wechat_redirect)

---

**2. 精美图形绘制教程**

* [精美图形绘制教程](https://mp.weixin.qq.com/mp/appmsgalbum?__biz=MzAwODY5NDU0MA==&action=getalbum&album_id=2614156000866385923&scene=173&from_msgid=2455848496&from_itemidx=1&count=3&nolastread=1#wechat_redirect)

**3. 转录组分析教程**

* **[转录组上游分析教程[零基础]](https://mp.weixin.qq.com/mp/appmsgalbum?__biz=MzAwODY5NDU0MA==&action=getalbum&album_id=2870608342451224581&scene=126&uin=&key=&devicetype=Windows+10+x64&version=63090719&lang=zh_CN&ascene=0)**
* **[一个转录组上游分析流程 | Hisat2-Stringtie](https://mp.weixin.qq.com/s?__biz=MzAwODY5NDU0MA==&mid=2455857417&idx=1&sn=653f3bdb0af386c22a128732ec8a01a4&scene=21#wechat_redirect)**

**4. 转录组下游分析**

* [批量做差异分析及图形绘制 | 基于DESeq2差异分析](https://mp.weixin.qq.com/s?__biz=MzAwODY5NDU0MA==&mid=2455860684&idx=1&sn=7be489c453cca737ad1092c6e4499827&scene=21#wechat_redirect)
* (https://mp.weixin.qq.com/s?__biz=MzAwODY5NDU0MA==&mid=2455859512&idx=1&sn=bac01a018f8b58afc7e2b3484f476bf4&scene=21#wechat_redirect)
* [单基因GSEA富集分析](https://mp.weixin.qq.com/s?__biz=MzAwODY5NDU0MA==&mid=2455859147&idx=1&sn=b022d80868e4b8014f64d443c82d1668&scene=21#wechat_redirect)
* [全基因集GSEA富集分析](https://mp.weixin.qq.com/s?__biz=MzAwODY5NDU0MA==&mid=2455860201&idx=1&sn=dd65c5b967123a876a6f5a38d4723ca6&scene=21#wechat_redirect)

> **小杜的生信筆記** ,主要发表或收录生物信息学教程,以及基于R分析和可视化(包括数据分析,图形绘制等);分享感兴趣的文献和学习资料!!
页: [1]
查看完整版本: 一文解决 | Linux(Ubuntn)系统安装 | 硬盘挂载 | 用户创建 | 生信分析配置 | 三