LegenDad

I am always a novice.

Install R on Ubuntu Server

12 Jun 2018 » Category : R » Tag : R, ubuntu

Intro

  • 우분투 서버에 R 설치 경험기
  • 개인 서버가 아닌 기관 대여 서버라서 포트 사용 및 설치 제한 조건
  • r studio 활용이 어려운 조건에서 설치 및 활용기


Preparation

  • R Cran Info
    리눅스 배포판 설치 매뉴얼

  • Ubuntu CodeName
    우분부 코드 네임 얻는 법 검색으로 위키에서도 확인 가능하나 서버에서 바로 확인하는 법

  • Cran Mirror URL
    저장소 등록을 위해 쓰일 미러 사이트 주소 리스트


Installation

우분투 코드 네임 확인

root@....:~# grep . /etc/*-release
/etc/lsb-release:DISTRIB_ID=Ubuntu
/etc/lsb-release:DISTRIB_RELEASE=14.04
/etc/lsb-release:DISTRIB_CODENAME=trusty
...

grep . /etc/*-release 입력하면 위와 같은 정보가 출력
버전 정보와 코드 네임이 확인 가능하다.
위 코드는 14.04버전에 코드네임 trusty
16.04버전의 경우는 코드네임이 xenial이다.

미러 사이트 주소를 저장소 리스트에 등록

한국 미러 주소 중 http://cran.biodisk.org/을 사용할 예정

$ sudo echo "deb http://cran.biodisk.org/bin/linux/ubuntu/ trusty” | sudo tee -a /etc/apt/sources.list  

shell 명령어가 궁금하면
https://explainshell.com 이 사이트에서 입력하면 잘 설명해준다.

위 명령어는 echo ““의 내용을 인풋해서
아웃풋으로 sources.list파일에 추가해준다는 내용이다.

공개키 추가

gpg --keyserver keyserver.ubuntu.com --recv-key E084DAB9
gpg -a --export E084DAB9 | sudo apt-key add -

Install R

$ sudo apt-get update        
$ sudo apt-get install r-base

에러 발생 상황

apt-get update에서 오류 발생으로
저장소 업데이트가 되지 않는다면 sources.list파일 열어서
trusty나 코드 네임 뒤에 /입력하고 진행

추가로 gpg error가 발생하면
해당 gpg key 확인 후

gpg --keyserver keyserver.ubuntu.com --recv-key E084DAB9
gpg -a --export E084DAB9 | sudo apt-key add -

위 코드에서 key값 변경해서 진행 후, 다시 인스톨 명령 실행하면 된다.

which R이나 R --version으로 설치 확인


devtools package

이래저래 활용이 많고 추후에 깔려면 귀찮으니 미리 설치

install.packages("devtools")

설치가 되면 좋지만, 에러가 발생하는 경우가 있다.

이런 경우에는 터미널에서 의존성 패키지를 설치하고 재실행

sudo apt-get install libssl-dev
sudo apt-get install libcurl4-openssl-dev


Jupyter Notebook 연결

  • R Studio Server를 활용하면 좋지만, 사용할 수 있는 포트 제한으로 해당 프로그램 사용 불가
  • GUI 기능을 사용하기 위해서, 포트가 열려진 쥬피터 노트북 활용
  • 포트 사용 문제로 아나콘다는 활용 불가
  • 콘다에서는 r-essential 설치로 해결 했지만 위와 같은 서버 상황에서는 IRKernel 설치로 진행

IRKernel

install.packages(‘devtools’) devtools::install_github(‘IRkernel/IRkernel’)
IRkernel::installspec()

in R 3.3 IRkernel::installspec(name = ‘ir33’, displayname = ‘R 3.3’) in R 3.2 IRkernel::installspec(name = ‘ir32’, displayname = ‘R 3.2’)

devtools는 설치했고 3.4버전으로 설치했으니

R에서

devtools::install_github('IRkernel/IRkernel')
IRkernel::installspec(name = 'ir34', displayname = 'R 3.4')

여기까지 완료되서
쥬피터 노트북 실행시키면 쥬티퍼 노트북에서도 R을 사용할 수 있게 된다.

Related Posts