美文网首页
搭建远程科学计算环境(R Studio+iPython Note

搭建远程科学计算环境(R Studio+iPython Note

作者: 踢丘比特一脚 | 来源:发表于2016-09-07 21:08 被阅读0次

    R Studio和iPython Notebook是我比较喜欢的两个科学计算环境,它们也都支持远程使用,很是方便。r如果你还没有装Python的话,建议安装一站到位的Anaconda,本文假定iPython Notebook已经可以在本机(即localhost上)使用。

    准备工作

    首先,我们需要将服务器设置为静态IP,因为我们自然不想每次使用的时候都查一遍服务端的IP。局域网内有很多设置的方式,最简单的是在路由器设置一下DHCP地址保留。在360路由器内设置如图:


    设置静态IP设置静态IP

    接下来,最好新建一个用户作为"客人"用户,毕竟让其他用户使用你的账号和工作空间可能会带来一些不便。在Linux环境下这项操作非常简单,即:

    $ sudo groupadd yourgroupname
    $ sudo useradd yourusername -g yourgroupname
    $ sudo passwd yourusername
    $ sudo chown -R yourusername:yourgroupname /home/yourusername/
    

    这时需要注意将shell的路径添加给新用户,打开/etc/passwd文件,找到yourusername开头的一行,那一行如果在/home/yourusername/:后没有内容,则需要在该行的末尾加上/bin/bash。


    设置shell路径设置shell路径

    安装R Studio Server

    首先,安装R语言的基础包,这个过程也会安装一些附带的包,如boot、lattice等。

    $ sudo apt-get install r-base
    

    安装好R语言环境后,就可以按照官网上的方法按照RStudio Server了:

    $ sudo apt-get install gdebi-core
    $ wget https://download2.rstudio.org/rstudio-server-0.99.903-amd64.deb
    $ sudo gdebi rstudio-server-0.99.903-amd64.deb
    

    如果使用wget单线程下载太慢的话,建议使用axel进行多线程下载,如使用10个线程下载的命令为:

    $ axel -n 10 https://download2.rstudio.org/rstudio-server-0.99.903-amd64.deb
    

    这时RStudio Server就应该可以用了。同一网络的主机都可以使用浏览器中访问http://本机ip:8787,就可以进入登陆界面:


    RStudio-ServerRStudio-Server

    在这里使用刚才新建的用户名和密码登陆就可以用了。当然,你也可以再设置使用Git进行版本控制(建议配合GitHub),就不再赘述了。

    安装iPython Notebook Server

    实际上,当你可以在本地使用Notebook时,就已经完成了一大半了。剩下的只需要小小的配置一下:
    首先,进入一个python终端,我们来设置一下notebook的密码:

    $ python
    >>> from IPython.lib import passwd
    >>> passwd()
    Enter password:
    Verify password:
    

    这时会返回给你一串"SHA1:"开头的字符串,这就是经过SHA1算法加密后的密码,记得将它复制下来。设置好密码后,我们就要配置notebook了。首先在管理员权限下生成配置文件:

    # jupyter notebook --generate-config
    

    然后系统就会返回给你配置文件的地址,比如我的配置文件生成到了~/.jupyter/目录下。我们只需要修改一下一个文件即可:

    $ sudo vim ~/.jupyter/jupyter_notebook_config.py
    

    在文件底部加上这几行:

    c = get_config()
    c.NotebookApp.password = u'sha1:----------------------------'     #你的SHA1密文
    c.NotebookApp.port = 9999
    c.NotebookApp.ip = '*'
    c.NotebookApp.open_browser = False
    

    保存后关闭所有的ipython notebook及其内核,然后重新打开ipython notebook:

    $ jupyter notebook             
    

    现在notebook不会直接在浏览器弹出新的标签页了,同一网络的主机都可以通过浏览器访问http://你的ip:9999 输入刚才设置的密码后即可使用!


    IPYNBIPYNB

    搭建FTP服务器

    现在有了运行环境,可远程的主机还不能把文件/数据发到服务器。因此,在服务器上搭建FTP也很有必要了。在Linux下使用vsftpd搭建FTP很简单:

    $ sudo apt-get install vsftpd
    $ sudo vim /etc/vsftpd.conf
    

    下面需要根据自己的需求修改一下配置文件,即vsftpd.conf。每个人的需求都不同,但至少要去掉以下几行的注释:

    anonymous_enable=NO
    ascii_upload_enable=YES
    ascii_download_enable=YES
    write_enable=YES
    use_localtime=YES
    

    保存退出后,我们需要重启一下FTP服务:

    $ sudo systemctl restart vsftpd
    

    现在可以测试一下能否登陆进去FTP了:

    $ ftp yourIPaddress
    Connected to 192.168.0.123.
    220 Welcome to blah FTP service.
    Name (192.168.0.123:zhengchen): yourusername
    331 Please specify the password.
    Password:
    230 Login successful.
    Remote system type is UNIX.
    Using binary mode to transfer files.
    ftp> 
    

    大功告成!这样就可以使用FileZilia等工具进行文件的上次和下载了。

    陈政/arc001 原创作品转载请注明出处

    相关文章

      网友评论

          本文标题:搭建远程科学计算环境(R Studio+iPython Note

          本文链接:https://www.haomeiwen.com/subject/bztsettx.html