R Studio和iPython Notebook是我比較喜歡的兩個(gè)科學(xué)計(jì)算環(huán)境,它們也都支持遠(yuǎn)程使用,很是方便。r如果你還沒有裝Python的話,建議安裝一站到位的Anaconda,本文假定iPython Notebook已經(jīng)可以在本機(jī)(即localhost上)使用。
準(zhǔn)備工作
首先,我們需要將服務(wù)器設(shè)置為靜態(tài)IP,因?yàn)槲覀冏匀徊幌朊看问褂玫臅r(shí)候都查一遍服務(wù)端的IP。局域網(wǎng)內(nèi)有很多設(shè)置的方式,最簡單的是在路由器設(shè)置一下DHCP地址保留。在360路由器內(nèi)設(shè)置如圖:

接下來,最好新建一個(gè)用戶作為"客人"用戶,畢竟讓其他用戶使用你的賬號(hào)和工作空間可能會(huì)帶來一些不便。在Linux環(huán)境下這項(xiàng)操作非常簡單,即:
$ sudo groupadd yourgroupname
$ sudo useradd yourusername -g yourgroupname
$ sudo passwd yourusername
$ sudo chown -R yourusername:yourgroupname /home/yourusername/
這時(shí)需要注意將shell的路徑添加給新用戶,打開/etc/passwd文件,找到y(tǒng)ourusername開頭的一行,那一行如果在/home/yourusername/:后沒有內(nèi)容,則需要在該行的末尾加上/bin/bash。

安裝R Studio Server
首先,安裝R語言的基礎(chǔ)包,這個(gè)過程也會(huì)安裝一些附帶的包,如boot、lattice等。
$ sudo apt-get install r-base
安裝好R語言環(huán)境后,就可以按照官網(wǎng)上的方法按照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進(jìn)行多線程下載,如使用10個(gè)線程下載的命令為:
$ axel -n 10 https://download2.rstudio.org/rstudio-server-0.99.903-amd64.deb
這時(shí)RStudio Server就應(yīng)該可以用了。同一網(wǎng)絡(luò)的主機(jī)都可以使用瀏覽器中訪問http://本機(jī)ip:8787,就可以進(jìn)入登陸界面:

在這里使用剛才新建的用戶名和密碼登陸就可以用了。當(dāng)然,你也可以再設(shè)置使用Git進(jìn)行版本控制(建議配合GitHub),就不再贅述了。
安裝iPython Notebook Server
實(shí)際上,當(dāng)你可以在本地使用Notebook時(shí),就已經(jīng)完成了一大半了。剩下的只需要小小的配置一下:
首先,進(jìn)入一個(gè)python終端,我們來設(shè)置一下notebook的密碼:
$ python
>>> from IPython.lib import passwd
>>> passwd()
Enter password:
Verify password:
這時(shí)會(huì)返回給你一串"SHA1:"開頭的字符串,這就是經(jīng)過SHA1算法加密后的密碼,記得將它復(fù)制下來。設(shè)置好密碼后,我們就要配置notebook了。首先在管理員權(quán)限下生成配置文件:
# jupyter notebook --generate-config
然后系統(tǒng)就會(huì)返回給你配置文件的地址,比如我的配置文件生成到了~/.jupyter/目錄下。我們只需要修改一下一個(gè)文件即可:
$ 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
保存后關(guān)閉所有的ipython notebook及其內(nèi)核,然后重新打開ipython notebook:
$ jupyter notebook
現(xiàn)在notebook不會(huì)直接在瀏覽器彈出新的標(biāo)簽頁了,同一網(wǎng)絡(luò)的主機(jī)都可以通過瀏覽器訪問http://你的ip:9999 輸入剛才設(shè)置的密碼后即可使用!

搭建FTP服務(wù)器
現(xiàn)在有了運(yùn)行環(huán)境,可遠(yuǎn)程的主機(jī)還不能把文件/數(shù)據(jù)發(fā)到服務(wù)器。因此,在服務(wù)器上搭建FTP也很有必要了。在Linux下使用vsftpd搭建FTP很簡單:
$ sudo apt-get install vsftpd
$ sudo vim /etc/vsftpd.conf
下面需要根據(jù)自己的需求修改一下配置文件,即vsftpd.conf。每個(gè)人的需求都不同,但至少要去掉以下幾行的注釋:
anonymous_enable=NO
ascii_upload_enable=YES
ascii_download_enable=YES
write_enable=YES
use_localtime=YES
保存退出后,我們需要重啟一下FTP服務(wù):
$ sudo systemctl restart vsftpd
現(xiàn)在可以測試一下能否登陸進(jìn)去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等工具進(jìn)行文件的上次和下載了。
陳政/arc001 原創(chuàng)作品轉(zhuǎn)載請注明出處