linux服務(wù)器安裝R語言及Rstudio server

在linux服務(wù)器上使用R語言及Rstudio server
cat /etc/redhat-release: 查看服務(wù)器系統(tǒng)版本

  1. R 程序包獲取
    查看最新版本的下載鏈接,使用wget獲取

wget https://mirrors.tuna.tsinghua.edu.cn/CRAN/src/base/R-3/R-3.6.1.tar.gz

  1. 解壓:
    tar -zvxf R-3.6.1.tar.gz
    cd R-3.6.1
    3.設(shè)置配置文件
    ./configure
    報錯

checking for rl_callback_read_char in -lreadline... no
configure: error: --with-readline=yes (default) and headers/libs are not available

  1. 根據(jù)錯誤提示,安裝其他必要程序
    yum search libcurl ## 查看鏡像服務(wù)器有沒有“l(fā)ibcurl”程序,有的的話直接用yum install命令安裝
    yum install libcurl-devel ## 安裝libcurl程序
    yum install readline-devel ## 安裝readline程序
    yum install bzip2-devel ## 安裝bzip2程序
    5.重新配置./configure
    ./configure --enable-R-shlib --with-readline=yes --with-libpng=yes --with-blas -prefix=usr/home/xxx/
    重新配置文件增加了'--enable-R-shlib' 參數(shù),
    否則再之后安裝R-studio-server時會出現(xiàn) 找不到"lib.so"文件的錯誤。
    –enable-R-shlib表示生成libR.so庫,這個當需要進行g(shù)cc等編譯的時候很重要
    –with-readline=yes表示用于R shell條件下的調(diào)試優(yōu)化,建議加上
    –with-libpng=yes表示可導出png圖片
    –with-blas表示優(yōu)化R運算并生成libRblas.so庫
    –prefix保證最后能完整安裝,否則make install會去安裝到/usr/lib文件夾下,非root用戶沒有權(quán)限

configure: WARNING: you cannot build info or HTML versions of the R manuals
configure: WARNING: you cannot build PDF versions of the R manuals
configure: WARNING: you cannot build PDF versions of vignettes and help pages

6.安裝
make
make install
安裝成功!

R #在命令行直接輸入“R”即可進入R 編輯。
q() ##退出R編輯
7.安裝R-studio-server
wget https://download2.rstudio.org/server/centos6/x86_64/rstudio-server-rhel-1.2.1335-x86_64.rpm

也可以先查看鏡像服務(wù)器有沒有rstudio-server程序,有的話可用yum install 直接安裝。

yum install rstudio-server-rhel-1.2.1335-x86_64.rpm
8.R-studio-server的一些命令
rstudio-server start ##啟動 rstudio
rstudio-server stop ## 關(guān)閉rstudio
rstudio-server status ## 查看rstudio 運行狀態(tài)
運行rstudio-server status出現(xiàn) “Active: active (running) ” 表示rstudio 已啟動
rstudio-server verify-installation ## 查看rstudio 安裝錯誤
rstudio-server restart ##重啟

ifconfig ##查看服務(wù)器ip地址。
查看運行中R進程
rstudio-server active-sessions
指定PID,停止運行中的R進程
rstudio-server suspend-session <pid>
停止所有運行中的R進程
rstudio-server suspend-all
強制停止運行中的R進程,優(yōu)先級最高,立刻執(zhí)行
rstudio-server force-suspend-session <pid>
rstudio-server force-suspend-all
RStudio Server臨時下線,不允許web訪問,并給用戶友好提示
rstudio-server offline
RStudio Server臨時上線
rstudio-server online

8.rstudio-server系統(tǒng)設(shè)置
主要有兩個配置文件,默認文件不存在(非必要,可不做修改)
/etc/rstudio/rserver.conf
/etc/rstudio/rsession.conf

設(shè)置端口和ip控制:

vi /etc/rstudio/rserver.conf
www-port=8080#監(jiān)聽端口,默認是8787,可以不做修改
www-address=127.0.0.0#允許訪問的IP地址,默認0.0.0.0

設(shè)置完成記得重啟服務(wù)器,生效

rstudio-server restart

會話配置管理

vi /etc/rstudio/rsession.conf
session-timeout-minutes=30#會話超時時間
r-cran-repos=http://ftp.ctex.org/mirrors/CRAN #CRAN資源庫
rsession-which-r=/usr/local/bin/R ## 如果非root安裝,更改R所在目錄。
9.通過瀏覽器連接Rstudio-server
直接打開瀏覽器,輸入http://<服務(wù)器ip>:8787 ## 如果修改過rserver.conf文件,后面的8787端口改為相應(yīng)的端口即可。

這里需要我們輸入用戶名和密碼。關(guān)于用戶名有2點注意事項:
(1).不允許使用system 用戶登陸,即用戶ids小于100的用戶。只能用普通用戶登錄
(2).用戶的認證可以使用RSA。
如果沒有普通用戶,可以添加:

useradd newname # 添加一個名為newname的用戶
passwd newname ###給新用戶newname 設(shè)置密碼,密碼需是復雜密碼,否則可能通不過。
usermod -G happy newname ####將新用戶newname添加到happy 用戶組中,
在用useradd添加用戶之后,在默認的情況下,該賬號是暫時被封鎖的, 也就是說,該賬號是無法登錄,須要用passwd命令來給新創(chuàng)建的用戶設(shè)置密碼之后才可以使用。

10可能存在的問題
10.1如果你的rstudio-server沒有啟動 很大程度是安裝有誤,這里我將我遇到的錯誤分享出來
rstudio-server verify-installation

報錯

There is a libR.so in /usr/lib/R/lib, but (weirdly) ls -l reveals that
it dates from the my previous install of R-3.5.1 for which I did not
configure with --enable-R-shlib.
這里就提到無法找到libR.so文件,原因是配置R語言文件時,沒有加參數(shù)--enable-R-shlib.
這就必須要重新安裝R語言。使用make uninstall 刪除之前的安裝,最好也刪除R-3.6.1所在的文件夾,用“rm -r -f R-3.6.1".

使用rm 命令 -r 參數(shù)表示全部刪除, -f 參數(shù)表示強制刪除,不會提醒。 同時使用這兩個參數(shù)要小心。
10.2 普通用戶無法啟動rstudio-server
sudo rstudio-server start## 以管理員方式執(zhí)行命令
這時會需要輸入密碼并提示
xxx is not in the sudoers file.This incident will be reported.
如果不想出現(xiàn)上面的提示,就是給該用戶提高權(quán)限,添加用戶使用sudo的權(quán)利。

su root ###切換到root用戶,如果有root權(quán)限的話。
chmod u+w /etc/sudoers ###添加sudo文件的寫權(quán)限
vi /etc/sudoers ###編輯sudoers文件,添加權(quán)限。
找到這行 root ALL=(ALL) ALL,在他下面添加xxx ALL=(ALL) ALL (這里的xxx是你的用戶名)

ps:這里說下你可以sudoers添加下面四行中任意一條

youuser ALL=(ALL) ALL
%youuser ALL=(ALL) ALL
youuser ALL=(ALL) NOPASSWD: ALL
%youuser ALL=(ALL) NOPASSWD: ALL

第一行:允許用戶youuser執(zhí)行sudo命令(需要輸入密碼).

第二行:允許用戶組youuser里面的用戶執(zhí)行sudo命令(需要輸入密碼).

第三行:允許用戶youuser執(zhí)行sudo命令,并且在執(zhí)行的時候不輸入密碼.

第四行:允許用戶組youuser里面的用戶執(zhí)行sudo命令,并且在執(zhí)行的時候不輸入密碼.

chmod u-w /etc/sudoers ##撤銷sudoers文件寫權(quán)限

限制普通用戶可以使用sudo命令了

  1. R中的一些有幫助解決安裝問題的命令
    R.home() ## 查看R的安裝目錄
    R.Version()[13] ## 查看R版本
    Sys.getenv("R_HOME")
    .Library ##查看lib位置
    .libPaths() ##查看lib位置

作者:茶思飯
鏈接:http://m.itdecent.cn/p/a5365344ef88
來源:簡書
著作權(quán)歸作者所有。商業(yè)轉(zhuǎn)載請聯(lián)系作者獲得授權(quán),非商業(yè)轉(zhuǎn)載請注明出處。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容