R 리눅스(UBUNTU18.04) 에서 여러버전 설치
R 여러 버전들을 (Ex. 3.x / 4.x) 을 설치하기 위해서는 초반 설정이 중요했던 것 같다. 정확은 아니지만 개인적으로 기존에 설치된 r-base 를 지우고 진행하는게 나을 것이란 생각이 들었다. 아마 기존에 이미 해보셨거나, 따라하시다보면 그게 깔끔하단 생각을 하게 될것이라 생각한다.
사전 작업 (R 프로세스를 종료시키고 R 과 패키지를 삭제한다)
# R-Studio Server Process Kill
# R Base Remove
# R Cran Package Remove
sudo /usr/sbin/rstudio-server stop
ps -ef | grep rstudio-server
#kill or pkill 을 통하여 프로세를 중지
# R Base Remove
# 설치된 R 패키지를 확인하세요
sudo apt list --installed | grep ^r-base
sudo apt remove ^r-cran
sudo apt remove ^r-base
sudo apt remove r-doc-html
sudo apt list --installed | grep rstudio
sudo apt remove rstudio-server
sudo userdel rstudio-server
sudo rm -rf ~/.rstudio
이제부터 R 을 설치할 것이다. 먼저 R 의 버전부터 확인하자. 그럼 설치하고자 하는 버전을 확인할 수 있을 것이다.
그럼 버전을 확인했으면 환경변수에 현재 설치를 진행하는 R 버전을 지정해준다. 그리고 해당 버전의 deb 패키지를 다운로드 받는다.
export R_VERSION=4.1.3
wget https://cdn.rstudio.com/r/ubuntu-1804/pkgs/r-${R_VERSION}_1_amd64.deb
자 이제 패키지를 설치하기 전에 확인하고 넘어가자.
이 부분은 개인적으로 매우 고생했기에 꼭 짚어야 할 것같다. 적지않은 시간 소모;;
우분투는 파이썬(python) 의 영향을 굉장히 많이 받는다. 일단 크리티컬하게 apt-get 부터가 gdei, certbot 등 하.. 일단 나열조차 머리아프다;
그리고 파이썬을 다수 버전을 사용하는 중의 상황이기 때문에도 더더욱 고생한다. 혹시나 다수의 파이썬을 사용해야하는 경우라면 확인해보기를 권장드린다. 그리고 현재까지 이거저거 설치하는 도중 certbot 까지 포함;; Python 3.6 이 안정적이었다. 하지만 3.7+ 이상으로 개발된 패키지를 사용해야하는 경우가 있는데.. 일단 정신건강상 파이썬은 복수버전 및 버전설정을 해놓고 가는게 안전하다.
일단 위처럼 버전설정이 가능하고 이 R 의 설치는 파이썬의 3.6 버전으로 진행하기로. 3.10 으로 하면 gdebi 에서 고생할 것이며... 암튼! 고생합니다잉~
이제 다운로드 받은 패키지(deb)를 설치하자.
sudo apt-get install gdebi-core ## Python 3.6
sudo gdebi r-${R_VERSION}_1_amd64.deb
# 설치여부 확인
/opt/R/${R_VERSION}/bin/R --version
이렇게 버전 확인을 하면 된 것이다.
자 이제 준비가 끝났으면 이제 심볼릭 링크만 걸어주면 끝이다.
sudo ln -s /opt/R/${R_VERSION}/bin/R /usr/local/bin/R
sudo ln -s /opt/R/${R_VERSION}/bin/Rscript /usr/local/bin/Rscript
저는 서버에서 R Studio Server 를 사용하지는 않습니다. 오로지 서버에서 R 만 사용하고 R Base 를 사용하지 않는 목표하에 작성된 포스트 입니다. 다수의 R 버전을 사용하는데 Base 는 심볼릭으로 해결하는게 더 심플할거란 생각입니다.
마지막으로 현재 우분투에서 R 버전 스위칭하는 스크립트를 작성하여 사용중입니다. 이미 많이들 만들어서 사용중이실것 같아 따로 올리지는 않습니다. 혹시 R 버전 스위칭 스크립트(r-ver-switch.sh)가 필요하신 분은 댓글을 남겨주세요. ^^