傻瓜式速成教程:20分钟体验Linux+在Linux下玩转R

非郑重声明:对于标题,我从来都是持标题党的态度。如果说我有100%的东西,看我的标题绝对会觉得文中有120%的内容。我是一个彻彻底底的Linux新手,在一周以前从来没碰过Linux,只是在5年前有过一点VMWare WorkStation的使用经历。所以对于一个纯粹的Linux新手,这篇小文章只是局限于傻瓜式的X下,所以此文的非常适合和我一样从来没有接触过Linux的同学。对于各位*nix前辈来说,下面的内容当个笑话看看就可以了,在下不自量力,献丑了 :-)

话说眨眼之间2009年就要过去了,新年新气象,不妨让我们趁这个时候试着用Linux跑R吧!(也许这不是一个好的理由 ..)R的开源优势在同样开源的Linux下能够最大化的体现,以前我总是将信将疑,但是经过几天个人的体验,我一点也不会去怀疑命令行方式比GUI方式的生产效率高出N倍了。首先,*nix装好以后基本上就是一个完善而Unique的开发环境,开发、编译、安装一气呵成,简洁明了。反观Windows,编译个R包还要装一个N兆大小的Rtools和做N多环境变量的设置,看着那些“Friendly”的Manual,我登时晕厥。同时,对于教育网来说,从SourceForge上或者国外站点下载一个Rtools大小的东西实在是慢得可以。而在Linux下,“天空飘过一行字儿,那都不是事儿。” 好了,不扯远了,进入正题。

1 搭建虚拟机环境

首先,为了打消新手对于数据丢失和驱动安装之类的顾虑,我们在这里采用虚拟机的方式安装Linux。“开源传万世,因有你参与”,我们选择的这个同样免费和开源的虚拟机软件就是Sun Virtual Box,请移步这里:

http://www.virtualbox.org/

点击左侧的Downloads,然后下载 VirtualBox 3.1.2 for Windows hosts x86/amd64 这个版本的Virtual Box.

截至本文写作完成时,Sun Virtual Box最新的版本是 3.1.2-56127,直接点击以下链接下载:

http://download.virtualbox.org/virtualbox/3.1.2/VirtualBox-3.1.2-56127-Win.exe

OK,一路Next安装好以后,打开Sun Virtual Box,进行一些基本的设置。

2 安装Linux Mint

为什么选择Linux Mint这个Linux发行版?很简单,因为Mint翻译成中文就是“薄荷”,Mint基于Ubuntu开发,比Ubuntu更加易用、清爽、漂亮。适合我这样的新手。

首先,下载Mint的ISO安装镜像。

http://ftp.heanet.ie/pub/linuxmint.com/stable/8/LinuxMint-8.iso

(1CD,690MB,感谢郭晨曦同学,链接已更新)

打开Sun Virtual Box,选择Machine → New, OS Type选择Linux和Other Linux, 然后分配虚拟机的内存。我的机器是三年前的老机器,T7200+3G内存,我划给了Guest系统1G的内存,Host运行Windows Server 2008 R2 Standard,很流畅,切换自如。大家的机器肯定比我的新,所以完全不用担心运行速度问题。接下来就是一些创建虚拟磁盘,配置选项一类的工作了,在这里不多赘言,大家懂的。我的08R2和VBox还有Mint都使用了英文界面,完全没有任何理解问题。创建好了以后,选择Settings根据个人情况进行一些设置。

点击Start,开启我们配置好的虚拟机,迎接我们的是First Run Wizard,选择我们之前下好的ISO文件,安装。这里注意,Mint的ISO镜像为LiveCD,第一次启动进入桌面以后需要双击桌面上的安装向导才会进行真正的“安装”。至于安装过程,纯图形界面,完全没有难度,根据提示走就行了。

安装好以后登录,第一次启动也许会有点慢。根据Virtual Box经常跳出来的提示,安装Guest Additions即可实现一些必要的优化,比如提高Guest系统的分辨率等等。

Sun Virtual Box的一大好处就是不需要任何设置就可以在虚拟机下通过Windows下的网络上网了。浏览器自带Firefox, 可以自己下Opera, 邮件客户端Mozilla Thunder Bird,编辑器有gedit,喜欢折腾的同学可以玩Vim或者Emacs。即时通讯用Pidgin,支持十几种协议。媒体播放自带了很全的codecs和几种不同的播放器,作图用GIMP,TeX环境使用“有史以来对中文支持最好”的Tex Live 2009环境+Texmaker即可。如果你真的需要“字处理”的话,不妨试试Linux版本的OpenOffice.org.

3 在Linux Mint下安装R

点击Menu → All applications → Administration → Software Sources,选择Other Software一栏,点击Add,在弹出的窗口中输入:

deb http://ftp.ctex.org/mirrors/CRAN/bin/linux/ubuntu karmic/

也许会跳出一些提示,请无视之,Continue。

打开Terminal,输入:

sudo apt-get update
sudo apt-get install r-base
sudo apt-get install r-base-dev

等待自动下载安装完成。
安装好以后,要进入R,只需在Terminal中输入R,回车即可。
(Tips: 想要退出帮助文档返回上一层时请按q.)

4 Linux Mint下R包的安装和编译安装

4.1 安装R包

4.1.1 在线安装

太云的corrplot包为例,(此包的Windows版本在R-Forge上暂时无法下载),打开Terminal,输入R,回车,在R中输入:

install.packages("corrplot", repos="http://R-Forge.R-project.org")

R会自动完成下载安装的过程,与Win下无异。

4.1.2 本地安装

如果你已经下好了以tar.gz为后缀的源码包或者自己编译好了一个以tar.gz为后缀的源码包,安装方法如下(这里不妨假设我们把压缩包下载到了/home/username/Downloads/中)。

进入Terminal,输入:

cd /home/username/Downloads/
R CMD INSTALL omd_1.0.tar.gz

Bingo,就是这么简单。

4.2 创建和编译一个全新的R包

关于如何创建和编译一个全新的R包,详见(由丁国徽博士撰写,力荐):

如何创建R的HelloWorld包(Windows或Linux环境下)


5 其他

5.1 安装中文输入法

进入Terminal,输入:

sudo apt-get install scim
sudo apt-get install scim-chinese
sudo apt-get install scim-config-socket
sudo apt-get install scim-modules-socket
sudo apt-get install scim-modules-table
sudo apt-get install scim-qtimm
sudo apt-get install scim-pinyin
sudo apt-get install scim-tables-zh
sudo apt-get install scim-input-pad

根据提示选择y即开始安装SCIM的一系列组件(可能有些命令是多余的)。

进入menu → All Application → Administration → Language Support,将Keyboard Input Method System选项修改为scim-immodule,然后Log off,再登录以后,打开Mint自带的gedit编辑器,按下Ctrl+空格,中文输入法是不是出现了?

5.2 添加共享文件夹

如何在虚拟机中访问Host系统中的文件?很简单,Virtual Box已经为我们提供了最大的便利。

  • 在Virtual Box主界面上选中你创建的虚拟机,选择Settings,点击 “Shared Folders”,添加想要与Mint共享的文件夹,假设此文件夹在Windows下名为MintShare;
  • 进入Mint, 用root帐号登录(密码与你创建的用户相同),在/mnt/目录下创建一个名为share的文件夹;
  • 打开Terminal,输入:

mount -t vboxsf MintShare /mnt/share/

  • 打开/mnt/share/目录,是不是文件已经躺在那里了?

5.3 添加软件更新源

北京交通大学的Ubuntu更新源:

deb http://mirror.bjtu.edu.cn/ubuntu/ karmic main multiverse restricted universe
deb http://mirror.bjtu.edu.cn/ubuntu/ karmic-backports main multiverse restricted universe
deb http://mirror.bjtu.edu.cn/ubuntu/ karmic-proposed main multiverse restricted universe
deb http://mirror.bjtu.edu.cn/ubuntu/ karmic-security main multiverse restricted universe
deb http://mirror.bjtu.edu.cn/ubuntu/ karmic-updates main multiverse restricted universe
deb-src http://mirror.bjtu.edu.cn/ubuntu/ karmic main multiverse restricted universe
deb-src http://mirror.bjtu.edu.cn/ubuntu/ karmic-backports main multiverse restricted universe
deb-src http://mirror.bjtu.edu.cn/ubuntu/ karmic-proposed main multiverse restricted universe
deb-src http://mirror.bjtu.edu.cn/ubuntu/ karmic-security main multiverse restricted universe
deb-src http://mirror.bjtu.edu.cn/ubuntu/ karmic-updates main multiverse restricted universe

除此之外,还有:

中科大:http://debian.ustc.edu.cn/ubuntu/
上海交大:http://ftp.sjtu.edu.cn/

还有很多其他院校架设的源,在这里不一一列举。请自行搜索“Ubuntu 教育网 源”。

(源的添加与上文安装R时的添加方法相同)

5.4 下载工具

如果感觉下载速度比较慢的话,可以用Wine来运行Windows下的迅雷,或者使用这个Linux下的图形化多线程下载工具——MultiGet:

http://multiget.sourceforge.net/

其实有一个最经典的纯命令行下载工具叫做wget,大家有时间可以下一个玩玩。

总结

Linux Mint的Slogan是:From freedom came elegance. 而我想说:From enigma came ultra.
希望大家也能生活在自由和优雅之中。我的傻瓜式速成教程就到这里。

附:截图一张(点击能看大图?)

Linux_Mint_ScreenShot

傻瓜式速成教程:20分钟体验Linux+在Linux下玩转R》上有 28 条评论

  1. mint@mint ~ $ sudo apt-get install scim
    However:

    E: Could not get lock /var/lib/dpkg/lock - open (11: Resource temporarily unavailable)
    E: Unable to lock the administration directory (/var/lib/dpkg/), is another process using it?

    What is wrong?

  2. 支持支持,其实用wubi安装我感觉也挺不错的,基本不需要分区什么的,而且速度应该比虚拟机快。
    此外如果想玩玩R的GUI版的话,可以装一下rkward这个软件(基于KDE的,在GNOME下也可以装,但需要装KDE的库),个人感觉是Rcmdr的再次加强版。 :)

    • 确实 虚拟机效率低很多。而Wubi几乎是100%利用硬件资源。开始想选择Wubi了,最终没选择的原因是俺是双系统 不想把启动菜单弄的再复杂了 .. 况且这个Server 08 R2是实验性质,随时可能去掉,要知道恢复启动菜单是件麻烦事,所以 .. 8-O

      • 嗯,理解理解。其实wubi的启动项是直接写boot.ini的,跟Windows的启动项并列,并没有额外对硬盘写启动信息。wubi会在C盘根目录放两个启动文件,真正的启动信息都在这两个文件中。在Windows卸载wubi后,启动文件以及boot.ini全部都会恢复原状。

        • 邱兄果然豪杰 ..涉猎很广 ..话说其实GRUB是很好的,Win的一些做法还是不敢恭维 ..感觉很不透明 很混乱. :mrgreen:

          • 哪天有空了给我讲讲系统启动机制吧,我一直对这类东西心生敬畏…… :mrgreen:

          • 不如邱兄给我讲吧 我只是个菜鸟用户啊 .. :) 感觉这些东西其实工程性很强,作为理科生,我其实也不是很感冒 ..

      • 看不懂,我倒从流人行里面学了一句,并发挥了一下:
        damning fucking sucking bad boys~
        :(
        不懂英文,所以不知道这句话的杀伤力,呵呵

  3. 我今天划出来了60G来装MINT,但是遇到一个非常棘手的问题。就是屏幕会闪烁,一道一道的,很无奈,刚开始进系统的时候也这样。

    怎么办?

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

*

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

:wink: :-| :-x :twisted: :) 8-O :( :roll: :-P :oops: :-o :mrgreen: :lol: :idea: :-D :evil: :cry: 8) :arrow: :-? :?: :!: