R︱Linux+Rstudio Server尝鲜笔记(打造最佳Rstudio体验+报错的解决方案)
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体验+报错的解决方案)的更多相关文章
- linux下启动dbca或netmgr类的图形界面报错解决
linux下启动dbca或netmgr类的图形界面报错解决 Xlib: connection to ":0.0" refused by server Xlib: No pro ...
- Windows Server 2012 R2 安装.NET Framework 3.5报错
简单记录一下,Windows Server 2012 R2 安装.NET Framework 3.5报错,下面是解决方法 载入ISO文件Windows Server 2012 R2,而且在安装的过程中 ...
- 将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 ...
- (二)阿里云ECS Linux服务器外网无法连接MySQL解决方法(报错2003- Can't connect MySQL Server on 'x.x.x.x'(10038))(自己亲身遇到的问题是防火墙的问题已经解决)
我的服务器买的是阿里云ECS linux系统.为了更好的操作数据库,我希望可以用navicat for mysql管理我的数据库. 当我按照正常的模式去链接mysql的时候, 报错提示: - Can' ...
- MySQL中查询时"Lost connection to MySQL server during query"报错的解决方案
一.问题描述: mysql数据库查询时,遇到下面的报错信息: 二.原因分析: dw_user 表数据量比较大,直接查询速度慢,容易"卡死",导致数据库自动连接超时.... 三.解决 ...
- linux系统unzip文件报错的解决方案
data.zip文件有4G多,解压的时候出问题了. Archive: data.zip End-of-central-directorysignature not found. Either th ...
- linux下, 再次遇到使用thinkphp的模板标签时,报错used undefined function \Think\Template\simplexml_load_string() 是因为没有安装 php-xml包
linux下, 使用thinkphp的模板标签,如 eq, gt, volist defined, present , empty等 标签时, 报错: used undefined function ...
- linux centos环境下,perl使用DBD::Oracle遇到报错Can't locate DBD/Oracle.pm in @INC 的解决办法
前言 接手前辈的项目,没有接触.安装.使用过perl和DBD::Oracle,也没有相关的文档记录,茫茫然不知所措~~.一开始发现这个问题,就想着迅速解决,就直接在google上搜报错信息,搜索的过程 ...
- 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 ...
随机推荐
- 主函数特别之处:public static void main(String[] args)
public static void main(String[] args) public class Test_java {//主函数特殊之处 public static void main(Str ...
- windows 7 wifi热点配置
自我总结,有什么不足或更好的解决方案,请告知,感激不尽! 目的:闲来无事的童鞋,可以试一试自己配置wifi热点. ps:其实wifi热点配置是系统存在的功能,只不过需要配置. 现在win桌面wifi热 ...
- scanf后面跟一个getchar
scanf(“%d",&a): if(getchar() != '\n') printf();else printf(); 这种情况下,我有点迷惑,就做了个实验,结论是: 1.当输完 ...
- Oracle中 in、exists、not in,not exists的比较
最基本的区别: in 对主表使用索引 exists 对子表使用索引 not in 不使用索引 not exists 对主子表都使用索引 写法: exist的where条件是: "...... ...
- JAVA 调用 R 语言
1 简介 R是统计计算的强大工具,而JAVA是做应用系统的主流语言,两者天然具有整合的需要.关于整合,一方面,R中可以创建JAVA对象调用JAVA方法,另一方面,JAVA中可以转换R的数据类型调用R的 ...
- Cypher查询语言--Neo4j-MATCH(二)
目录 Match 相关节点 接出关系Outgong relationship 定向关系和标识符 通过关系类型匹配 通过关系类型匹配和使用标识符 带有特殊字符的关系类型 多重关系 可变长度的关系 在可变 ...
- JQuery Ajax 设置请求头信息application/json
今天有个api后台接application/json格式的 在Jquery里$.ajax默认是contentType: application/x-www-form-urlencoded; chars ...
- cdcqの省选膜你赛
cdcqの省选膜你赛 比赛当天因为在杠hnoi2016的大数据结构没有参加,今天补了一下.挺好玩的虽然不看一句话题意的话真的卡读题 此生无悔入东方,来世愿生幻想乡 2651. 新史「新幻想史 -现代史 ...
- 百度地图、高德地图、Google地图等坐标系相关梳理
1.地理坐标系与投影坐标系 地理坐标系也就是球面坐标系,是将本不是椭球体的地球进行椭球体化,从而形成球面坐标体系,国际标准的地理坐标系就是WGS-84坐标系: 只不过各个国家为了反映该国家所在区域地球 ...
- C# 简单内存补丁
写在开头:看了一些视频教程,感觉OD为什么别人学个破解那么容易,我就那么难了呢,可能是没有那么多时间吧. 解释:个人见解:所谓内存补丁,即:通过修改运行程序的内容,来达到某种目的的操作.修改使用Ope ...