User Tools

Site Tools


Sidebar

This is the sidebar. Without it, the main text is too wide!

anaconda_installation

Anaconda installation on shared storage (NFS)

Conda, Anaconda, Bioconda의 기본 개념에 대해서는 블로그에 쓴 글(링크)를 참조하기 바란다. 그동안 CentOS 6.x을 꾸준히 사용해 오다가 2018년 3월 내가 사용하는 몇 대의 리눅스 서버 중 하나(microbe)에 CentOS 7.x를 처음으로 설치하면서 응용 프로그램 관리에 뭔가 획기적인 변화를 가져오기를 꿈꾸었다. 구체적인 방법으로서 Conda/Anaconda/Bioconda를 사용한 프로그램 설치 및 환경 관리를 하는 것으로 마음이 기울었다. 그리고 되도록이면 모든 서버에 마운트된 공용 공간을 프로그램 설치 공간으로 적극 활용하기로 하였다. 설치를 위한 공간은 /data/anaconda3이다. 이렇게 하면 다른 서버의 OS를 업그레이드하는 것도 훨씬 수월해진다.

관련 사이트

anaconda 설치

Anaconda 설치 파일을 이곳에서 받아서 실행한다. 설치 위치에 대한 질문에는 /data/anaconda3라고 입력하였다. 이 위치는 관리자만이 기록할 수 있는 공간이므로 관리자 권한으로 실행해야 한다. R까지 설치하려면 다음과 같이 입력하면 되지만 나중에 다른 bioconda 패키지를 설치하면서 이상해지는 것을 발견하였다. R은 yum으로 설치하는 것을 권장한다.

# sh ./Anaconda3-5.1.0-Linux-x86_64.sh
...
# PATH=/data/anaconda3/bin:$PATH 
(optional) # conda install -c r r-base
(optional) # conda update conda

로컬 서버의 python이나 다른 응용프로그램을 실행할 필요도 있으므로 /data/anaconda3/bin을 startup script에 넣지는 않았다. anaconda를 설치하였다면 패키지 및 환경 관리 프로그램인 conda도 설치되는 것이다.

Environment란 무엇인가

Environment란 특정 버전의 python 및 이와 연관되어 설치된 프로그램의 환경을 의미한다. conda activate 명령을 통하여 서로 다른 환경을 전환할 수 있다. 현재 설치된 환경을 알아보려면 다음의 두 가지 명령으로 가능하다. conda list는 설치된 패키지의 목록을 보여준다.

# conda info --envs
conda environments:
#
root                  *  /data/anaconda3

# conda-env list
conda environments:
root                  *  /data/anaconda3

# conda list
# conda list -n py35

python 2.7 환경 만들기

# conda create -n py27 python=2.7
...
To activate this environment, use:
> source activate py27

To deactivate an active environment, use:
> source deactivate

# conda info --envs
conda environments:

py27                     /data/anaconda3/envs/py27
root                  *  /data/anaconda3

이상의 사례는 python 2.7 환경만을 만든 것이다. 그러나 특정 python 버전과 다른 복수의 패키지를 묶어서 새로운 환경을 만드는 것이 가능하다. 만들어진 환경을 없애려면 다음과 같이 한다.

# conda-env remove -n myenv

특정 환경으로 진입하려면 source activate myenv라 실행한다.

$ source activate py27
(py27) $
(py26) $ deactivate
$ 

python 2.7에서만 실행되는 패키지를 깔려면 다음과 같이 한다. 마지막 부분에 실행한 두 개의 명령어는 bioconda의 패키지를 설치하는 것이 아니라 py27 환경에 설치한 quast에 부속된 파이썬 스크립트로서 manta와 silva DB를 설치하기 위한 것이다.

# conda install -n py27 quast
# source activate py27
(py27) # quast-download-manta
(py27) # quast-download-blastdb

Bioconda 설치

제일 먼저 할 것은 채널을 설정하는 것이다. 채널이란 설치할 패키지를 찾는 공간이다(용어 설명). 이는 cloud repository일 수도 있고 혹은 내가 만든 local repository일 수도 있다. Bioconda 설치를 위한 채널 설정은 반드시 다음의 순서를 따라야 한다.

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

설치 가능한 패키지(recipe라고도 한다)는 여기에서 확인하면 된다. 그러면 실제로 프로그램을 깔아보자.

# conda install bwa

최신이 아닌 버전의 패키지를 설치하려면 다음과 같이 한다.

# conda install hmmer=3.1b2

패키지를 지우려면 uninstall command를 쓴다. Environment를 지우는 것과는 다르다.

# conda uninstall bwa

시스템 운용 지침

일반 사용자로서

$PATH 환경변수를 설정해야 conda/anaconda/bioconda의 모든 기능을 수행할 수 있다.

$ PATH=/data/anaconda3/bin:$PATH

특정 환경으로 진입하려면 source activate myenv를 사용한다. 일반 사용자로서 myenv라는 새로운 환경을 만들게 되면 ~/.conda/envs/myenv에 설치된다.

Superuser로서

새로운 패키지를 설치하려면 관리자 권한이 필요하다. $PATH 환경변수를 설정해야 함은 마찬가지이다.

특정 환경에 패키지 설치하기

# conda install -n py27 quast

패키지 기본 관리법

# conda list
# conda list -n py27
# conda list --export > package-list.txt
# conda create -n myenv --file package-list.txt
anaconda_installation.txt · Last modified: 2018/07/06 12:07 by hyjeong