2015-06-01 6 views
1

Мне нужно использовать BiomaRt, предпочтительно версию в версии 3.1. См.: http://www.ensembl.info/blog/2015/06/01/biomart-or-how-to-access-the-ensembl-data-from-r/Как установить пакеты Bioconductor без привилегий root?

Я попытался выполнить инструкцию по установке на вышеупомянутой странице, чтобы запустить программу на сервере под управлением Linux. Кроме того, я пробовал этот: http://www.bioconductor.org/install/#install-R, но, если не разрешено разрешение root, они не будут работать. Я загрузил другие пакеты, используя этот подход https://linuxishbell.wordpress.com/2010/12/10/install-r-package-without-root-accesson-linux/, но они кажутся непригодными для моего случая. Какая самая рекомендуемая вещь? Я обыскал интернет, но в таком случае в команде Bioconductor и пользователю мало советов.

+1

Я установил много пакетов Bioconductor без корневого доступа на обоих Redhat и Ubuntu. I ssh на сервер, запустите 'R', запустите команду' source («http://bioconductor.org/biocLite.R») ', запустите' biocLite («biomaRt») '. В какой-то момент вам будет предложено указать «Хотите ли вы использовать личную библиотеку?» И предлагаемое местоположение. Просто введите 'y' для принятия и продолжите установку. – bdemarest

ответ

1

Решение

Самый простой способ сделать это, чтобы установить R from source:

$ wget http://cran.rstudio.com/src/base/R-3/R-3.1.1.tar.gz 
$ tar xvf R-3.1.1.tar.gz 
$ cd R-3.1.1 
$ ./configure --prefix=$HOME/R 
$ make && make install 

Второй предпоследний шаг является критическим. Он настраивает R для установки в подкаталог вашего собственного домашнего каталога.

Чтобы запустить его на Linux и аналогичных системах, добавьте $HOME/R/bin в ваш PATH. Затем будут работать команды вроде R и Rscript.

На OS X, bin dir похоронен в $HOME/R/R.framework/Versions/Current/Resources вместо этого, из-за способа работы упаковки OS X.

Вместо этого вы можете указать --prefix=$HOME, если вы не хотите, чтобы R и все его зависимости были скрыты в его собственном подкаталоге. Если вы находитесь в Linux и имеете $HOME/bin в своем PATH, сделайте так, чтобы избежать необходимости редактировать PATH. Недостатком является то, что он делает более позднюю деинсталляцию сложнее, поскольку R будет перемешаться между вашим другим содержимым $HOME.

Этот общий шаблон применяется к большому количеству программного обеспечения Unix, которое вы можете установить из исходного кода. Если у программного обеспечения есть сценарий configure, он, вероятно, понимает опцию --prefix, а если нет, обычно существует альтернатива с тем же эффектом.

Эти функции являются общими по ряду причин. Ваш случай —, где вы не можете получить root, чтобы установить программное обеспечение в обычное место, чтобы вы установили его в $HOME, вместо этого — на самом деле является одним из наименее распространенных применений для такого рода функций. Вот некоторые наиболее распространенные случаи использования:

  • Обстоятельство может продиктовать лучшее место, чем стандартный по умолчанию (/usr/local), такие как /usr, /opt/$PKGNAME и т.д.

  • Binary строительного пакета система (RPM, DEB, PKG, Cygport ...), как правило, создают и устанавливают пакет в специальный каталог промежуточного хранения, а затем упаковывают его таким образом, чтобы он расширялся в нужное место установки.

Посмотрите эти ссылки

https://unix.stackexchange.com/questions/149451/install-r-in-my-own-directory http://onertipaday.blogspot.be/2008/04/r-installing-on-unixlinux-no-root.html

В противном случае

Вы могли бы, возможно, будет использовать виртуальную машину, чтобы установить приложение практически остроумие h виртуальный корневой доступ

0

Вам не нужно устанавливать R с нуля для установки пакетов без прав root. Попробуйте так:

module load R 

(говорят, что это R на кластере, так что теперь он находится на своем пути, и вы можете ввести его, набрав R)

export R_LIBS_USER=$HOME/apps/R:$R_LIBS_USER 

(вы все еще на Linux командной строки, а не в R пока)

R 

(теперь вы ввести R)

install.packages("packagename") 

Молодцы, он будет установить пакет HOME/приложения/R

library(packagename) 

(Попробуйте и убедитесь, что работали)

Смежные вопросы