Rstudio Server 是Rstudio开发的基于R语言的网页版(只能在Linux),你在手机上都可以运行R,还是挺方便的。就是配置起来有点麻烦。
      官方下载链接:https://www.rstudio.com/products/rstudio/download-server/

本文列举了8个报错提醒以及如何将本机与Rstudio Server实现交互。

————————————————————————————————

1、为啥笔者觉得Rstudio Server适合Linux?

如果你有Linux桌面系统,且你可以自由操作自己家公司的服务器当然直接来个Rstudio也是不错的选择,但是呢,如果服务器公用,且没有桌面系统,且你喜欢轻量化的Rstudio。我觉得,你没有理由不喜欢Rstudio Server。

2、RStudio Desktop 与 RStudio Server 有什么区别?

      RStudio Desktop 是一个 R IDE,与您已安装在您的本地 Windows,Mac OS X 或 Linux 工作站上的 R 配合工作。RStudio 桌面版是一个独立的桌面应用程序,不需要以任何方式连接到 RStudio 服务器版。

RStudio Server 是一个 Linux 服务器上的应用程序,提供了在服务器上运行的 R 环境,而用户通过浏览器来访问。

参考:https://github.com/wangyuchen/rserver-manual/blob/master/01_r_and_rstudio-server.md

————————————————————————————————

一、Rstudio Server安装

艾玛,不知道的请戳我的另外一篇博客:

网页版Rstudio︱RStudio Server多人在线协作开发

当然,Rstudio Server的教程博客只服张丹老师的博客。

————————————————————————————————

二、遇见的问题

1、问题一:安装包时候报错:couldn't resolve host name

报错:

Warning in install.packages    status was 'Couldn't resolve host name'

修改CRAN mirror的不同路径,我是用china北京、合肥以及globe等都试了一下,某一个会显灵的。

2、问题二:安装包时报错:package "xxx" is not available

代表着你的R版本有点低,你得升级一下,当然这个问题也会出现在windows系统中。

Warning in install.packages :
  package ‘reshape’ is not available (for R version 3.1.1)

3、问题三:安装包时报错:had non-zero exit status

这个报错代表着,你安装的这个包,需要一些基础的包,这些基础包好像没按上。所以你得看看你的包还需要其他的什么包,一个一个试试,自己安装一下。

这个问题在windows也会出现,但是呢,我怎么感觉linux上这样的报错更多?

难道linux衍生包安装这一步被忽略了吗?

rstudio server installation of package ‘wordcloud’ had non-zero exit status

还有这样的报错:

Warning in install.packages :
dependencies ‘highlight’, ‘parser’ are not available
also installing the dependency ‘formatR’

4、问题四:如何在Rstudio server加装rJava包

Rstudio server是搭载在linux之上的,rJava在Rstudio server 下载,需要先在Linux下安装JDK(Java环境),然后才能安装rJava,相关可参考我的博客:R语言·文本挖掘︱Rwordseg/rJava两包的安装(安到吐血)

同时可能的报错:

 "Java configuration variables are not set"

5、问题五:Rtools的问题

好像不用下载就自己解决了,之前在windows中,如何要下载github中的包就必须要过rtools这关。

6、问题六:.bin文件读入问题

Error in readChar(a, 1) : invalid UTF-8 input in readChar()

只能先导入到workspace里面才能继续使用。如果是大型的词向量内容,可能需要内存比较大的机器,同时注意memory.limit()内存,让本机给R的内存变大。(可参考: 

R语言︱大数据集下运行内存管理


笔者是在windows分析出现的bin文件,然后导入Linux服务器然后再想读入Rstudio server,看来是windows下面分析的问题了。

特别是词向量的问题,如果是python训练的词向量,格式会发生改变,所以读入linux会出现如下报错,也没有特别好的解决办法。

7、问题七:require和library的区别?

用library(pkg)或require(pkg)加载包时,R会到.libPaths()的路径下去搜索,如果该库不存在就会报错。library()和require()的最大区别:找不到包时,library()抛出错误,require()打印警告信息并返回FALSE。

8、问题八:Rstudio server可以共享多人,那么一个人安装了所有的包,其他也可以用吗?

Rstudio server设置管理权限的时候就是分开目录,自己用自己目录下的安装包,所以不是共享的。

解决方案:

(1)当然也可以设置成所有人共享,安装包的时候就设置

install.packages("ggplot2","/usr/local/lib64/R/library")

(2)或者管理员自己将一个人的library复制到其他的目录之中。

在rstudio下,安装包时,默认的库路径是"/home/enn_james/R/x86_64-unknown-linux-gnu-library/3.2",而R软件本身的默认路径是/usr/local/lib64/R/library

————————————————————————————————————

三、如何导入本地的文件/代码至Rstudio Server之中

Rstudio Server是搭建在Linux之中的,虽然可以将本地代码复制到Rstudio Server,但是对于文件、数据源来说,不能直接拖进去。

所以,笔者的解决办法就是找到Linux系统中rstudio server根目录,然后导入文件到这个根目录就可以使用了。

一篇博客有提到:

1、查看库文件路径

在rstudio窗口,查看库文件的路径:

> .libPaths()
[1] "/home/enn_james/R/x86_64-unknown-linux-gnu-library/3.2" "/usr/local/lib64/R/library"

但是/usr/local/lib64/R/library这一路径的组权限默认是”staff”的,因此想要安装到这个目录还有赋予权限才行。

2、查看包安装路径

在R的命令窗口输入

library()

可以看到全部的包,分为系统包和用户包,用户包在 "/home/enn_james/R/x86_64-unknown-linux-gnu-library/3.2",系统包在 "/usr/local/lib64/R/library"。

[root@hadoop1-mysql /]#  sudo ls -all /usr/local/lib64/R/library
总用量 172
drwxr-xr-x 43 root root 4096 6月   1 07:52 .
drwxr-xr-x 10 root root 4096 5月  26 05:06 ..
drwxr-xr-x  7 root root 4096 5月  26 05:06 base
drwxr-xr-x  8 root root 4096 5月  26 05:06 boot
drwxr-xr-x  8 root root 4096 5月  26 05:06 class
drwxr-xr-x  9 root root 4096 5月  26 05:06 cluster

可见,/usr/local/lib64/R/library下的包是root权限的,是全局的;而/home/enn_james/R/x86_64-unknown-linux-gnu-library/3.2下的包的权限不是root权限的。

[root@hadoop1-mysql /]#  sudo ls -all /home/enn_james/R/x86_64-unknown-linux-gnu-library/3.2
总用量 152
drwxr-xr-x 38 enn_james enn_james 4096 6月   2 03:02 .
drwxr-xr-x  3 enn_james enn_james 4096 5月  26 08:18 ..
drwxr-xr-x  7 enn_james enn_james 4096 5月  27 00:38 assertthat
drwxr-xr-x  7 enn_james enn_james 4096 5月  28 06:43 base64enc
drwxr-xr-x  6 enn_james enn_james 4096 5月  27 00:38 BH
drwxr-xr-x  7 enn_james enn_james 4096 5月  27 10:05 bitops
drwxr-xr-x  6 enn_james enn_james 4096 5月  27 10:13 brew

本节参考:rstudio server包的安装位置

R︱Linux+Rstudio Server尝鲜笔记(打造最佳Rstudio体验+报错的解决方案)的更多相关文章

  1. linux下启动dbca或netmgr类的图形界面报错解决

    linux下启动dbca或netmgr类的图形界面报错解决    Xlib: connection to ":0.0" refused by server Xlib: No pro ...

  2. Windows Server 2012 R2 安装.NET Framework 3.5报错

    简单记录一下,Windows Server 2012 R2 安装.NET Framework 3.5报错,下面是解决方法 载入ISO文件Windows Server 2012 R2,而且在安装的过程中 ...

  3. 将Linux中文语言修改成英文的具体操作方法及报错解决

    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 3 ...

  4. (二)阿里云ECS Linux服务器外网无法连接MySQL解决方法(报错2003- Can't connect MySQL Server on 'x.x.x.x'(10038))(自己亲身遇到的问题是防火墙的问题已经解决)

    我的服务器买的是阿里云ECS linux系统.为了更好的操作数据库,我希望可以用navicat for mysql管理我的数据库. 当我按照正常的模式去链接mysql的时候, 报错提示: - Can' ...

  5. MySQL中查询时"Lost connection to MySQL server during query"报错的解决方案

    一.问题描述: mysql数据库查询时,遇到下面的报错信息: 二.原因分析: dw_user 表数据量比较大,直接查询速度慢,容易"卡死",导致数据库自动连接超时.... 三.解决 ...

  6. linux系统unzip文件报错的解决方案

    data.zip文件有4G多,解压的时候出问题了. Archive:  data.zip End-of-central-directorysignature not found.  Either th ...

  7. linux下, 再次遇到使用thinkphp的模板标签时,报错used undefined function \Think\Template\simplexml_load_string() 是因为没有安装 php-xml包

    linux下, 使用thinkphp的模板标签,如 eq, gt, volist defined, present , empty等 标签时, 报错: used undefined function ...

  8. linux centos环境下,perl使用DBD::Oracle遇到报错Can't locate DBD/Oracle.pm in @INC 的解决办法

    前言 接手前辈的项目,没有接触.安装.使用过perl和DBD::Oracle,也没有相关的文档记录,茫茫然不知所措~~.一开始发现这个问题,就想着迅速解决,就直接在google上搜报错信息,搜索的过程 ...

  9. linux服务器使用Jenkins+gradle+git打apk包,报错Gradle build daemon disappeared unexpectedly (it may have been killed or may have crashed)

    linux服务器使用Jenkins+gradle+git打apk包,遇到的错误Gradle build daemon disappeared unexpectedly (it may have bee ...

随机推荐

  1. MySQL--当事务遇到DDL命令

    众所周知MySQL的DDL语句是非事务的,即不能对DLL语句进行回滚操作,哪在事务中包含DDL语句会怎样呢? 如: #禁用自动提交 set autocommit=off; #创建tb1 create ...

  2. VNC配置

    简介 VNC (Virtual Network Console)是虚拟网络控制台的缩写.它 是一款优秀的远程控制工具软件,由著名的 AT&T 的欧洲研究实验室开发的.VNC 是在基于 UNIX ...

  3. JAVA中默认的编码方式

    转:http://blog.csdn.net/scyatcs/article/details/31356823 编码问题存在两个方面:JVM之内和JVM之外.1.Java文件编译后形成class这里J ...

  4. jQuery中的DOM操作------复制及包裹节点

    1.复制节点: 如果单击<li>元素后需要再复制一个<li>元素,可以用clone()方法来完成: $(this).clone().appendTo("ul" ...

  5. 我的第一个Android开源库——CirclePointMove中文文档(可随Viewpager移动的指示器)

    Github网址:https://github.com/Stars-One/CirclePointMove 这个开源库一个封装好的Viewpager指示器,之前在学习的时候,想要实现一个小圆点跟随Vi ...

  6. 自动化测试KPI考评的一种方法

    更多原创测试技术文章同步更新到微信公众号 :三国测,敬请扫码关注个人的微信号,感谢! 原文链接:http://www.cnblogs.com/zishi/p/6856204.html 众所周知,在IT ...

  7. Nginx负载均衡搭建(Window与Linux)

    windows上搭建nginx负载均衡 1.准备几台http服务器软件,这里选用一台apache一台tomcat apache(windows)下载链接:https://www.apachehaus. ...

  8. iOS-Runtime之关于页面跳转的捷径【Runtime获取当前ViewController】

    写在前面 在我们操作页面跳转时,如果当前的类不是UIViewcontroller(下面用VC表示),你会不会写一个代理,或者block给VC传递信息,然后在VC里面进行 ///假如targetVc是将 ...

  9. SPOJ 7258 Lexicographical Substring Search [后缀自动机 DP]

    题意:给一个长度不超过90000的串S,每次询问它的所有不同子串中,字典序第K小的,询问不超过500个. 第一道自己做的1A的SAM啦啦啦 很简单,建SAM后跑kth就行了 也需要按val基数排序倒着 ...

  10. C++数据结构学习之顺序表

    顺序表是数据结构中最基本也是应用相当广泛的一种数据结构类型.它通常包含三个私有成分,即指向数据数组的头指针.当前表长以及表的实际容量.表的头指针通常指向数据数组的基地址,通过数组的形式进行访问数据数组 ...