一、在Windows7中安装Ubuntu双系统

  工具/原料

     windows7 64位

    ubuntu 16.04 32位

    UltraISO最新版(用来将镜像文件烤到U盘中)

    空U盘(若有文件,请先备份)

  1.为安装ubuntu16.04分配一块磁盘空间(100G)

   Win7自带分配磁盘的工具([计算机]->[管理]->[磁盘管理]->选中压缩盘->[右键]->[压缩卷]),只需要压缩步骤即可,不需要继续分盘符格式化等操作。

  2.将镜像文件iso写到U盘   

   下载并安装UltraISO软件,因为我们只是要将ubuntu13.04的镜像文件写入到u盘,因此,“安装虚拟ISO驱动器(ISODriver)”没必要安装。

   

   安装后输入注册码激活软件。运行UltraISO软件,在“本地目录”中查找ubuntu16.04镜像文件的位置,在右方找到后,双击该镜像文件。

   

   完成上步后,选择上方的“启动”--“写入硬盘映像...”。

   

   在弹出的窗口中进行如下图设置,刻录校验:打上对号;写入方式:USB-ZIP+;便捷启动:写入新的硬盘主引导记录(MBR)-USB-ZIP+。设置完毕后,单击“写入”,如下图:

   

   上一步骤单击“写入”后,出现如下提示,请单击“是”。开始写入镜像文件,需要几分钟的等待时间。

   3.安装Ubuntu16.04

   1)重启计算机,从U盘启动,开机按下F12,选择“USB HDD”。

   2)稍等片刻后,将进入ububtu16.04的安装界面,右侧选择“中文(简体)”,然后单击“安装Ubuntu”。

   3)接下来会询问是否需要连接网络,可以联网,也可以不联网,如果联网选择安装第三方软件及更新,也可以选择不安装,安装完成后再系统里选择更新,完成后点击继续。

   4)安装类型一定选择“其他选项”再继续,这样可以自己分区。

   5)分区设置,如图选中空闲分区,也就是我们之前在Win7下划分出的100G的空间。

   6)接下来,我们要进行四次分区,每次都是从“空闲”中分出部分区域:

     第一次分区:

     上一步骤点“+”,进行如下设置:挂载点:“/”;大小:22000MB;新分区的类型:主分区;新分区的位置:空间起始位置;用于:EXT4日志文件系统。

     第一次分区完毕:

     

     第二次分区:

      “空闲”处,继续点“+”,如下设置:挂载点:(不设置);大小:2048MB;新分区的类型:逻辑分区;新分区的位置:空间起始位置;用于:交换空间。

     第二次分区完毕:

      

     第三次分区:

      “空闲”处,继续点“+”,如下设置:挂载点:/boot;大小:200MB;新分区的类型:逻辑分区;新分区的位置:空间起始位置;用于:EXT4日志文件系统。

     第三次分区完毕:

      

     第四次分区:

      “空闲”处,继续点“+”,如下设置:挂载点:/home ;大小:剩余全部空间;新分区的类型:逻辑分区;新分区的位置:空间起始位置;用于:EXT4日志文件系统。

     第四次分区完毕:

      

   7)分区设置完毕后,下方还有一项“安装启动引导器的设备”,选择/boot所在的盘符,然后点击“现在安装”。

   8)接着按提示继续,进入用户设置后,设置用户名、密码。然后进入安装界面,等待安装更新。

   9)安装完成后,用所设置的用户名密码进入Ubuntu,重新启动计算机,进入到Win7系统。

   4.用easyBCD修改系统启动项

   安装easyBCD后打开,点击“Add New Entry”,选择Linux/BSD。

   Type选择GRUB;Name自定义;Drive:选取我们设置的/boot分区,有Linux标记。设置完成后点击“Add Entry”。

   

   再重启电脑,现在显示Win7和Ubuntu两个启动项可以选择。

二、创建Hadoop用户

  1.首先按 ctrl+alt+t 打开终端窗口,输入如下命令创建新用户 :

$ sudo useradd -m hadoop -s /bin/bash

  这条命令创建了可以登陆的hadoop用户,并使用/bin/bash 作为shell。

  sudo命令:本文中会大量使用到sudo命令。sudo是ubuntu中一种权限管理机制,管理员可以授权给一些普通用户去执行一些需要root权限执行的操作。当使用sudo命令时,就需要输入您当前用户的密码。
  密码:在Linux的终端中输入密码,终端是不会显示任何你当前输入的密码,也不会提示你已经输入了多少字符密码。而在windows系统中,输入密码一般都会以“*”表示你输入的密码字符。
  输入法中英文切换:ubuntu中终端输入的命令一般都是使用英文输入。linux中英文的切换方式是使用键盘“shift”键来切换,也可以点击顶部菜单的输入法按钮进行切换。ubuntu自带的Sunpinyin中文输入法已经足够读者使用。
  Ubuntu终端复制粘贴快捷键:在Ubuntu终端窗口中,复制粘贴的快捷键需要加上 shift,即粘贴是 ctrl+shift+v。

  2.接着使用如下命令设置密码,可简单设置为 hadoop,按提示输入两次密码:

$ sudo passwd hadoop

  3.可为 hadoop 用户增加管理员权限,方便部署,避免一些对新手来说比较棘手的权限问题:

$ sudo adduser hadoop sudo

  4.最后注销当前用户(点击屏幕右上角的齿轮,选择注销),返回登陆界面。在登陆界面中选择刚创建的 hadoop 用户进行登陆。

三、更新apt

  用 hadoop 用户登录后,我们先更新一下 apt,后续我们使用 apt 安装软件,如果没更新可能有一些软件安装不了。按 ctrl+alt+t 打开终端窗口,执行如下命令:

$ sudo apt-get update

  若出现如下 “Hash校验和不符” 的提示,可通过更改软件源来解决。若没有该问题,则不需要更改。从软件源下载某些软件的过程中,可能由于网络方面的原因出现没法下载的情况,那么建议更改软件源。在学习Hadoop过程中,即使出现“Hash校验和不符”的提示,也不会影响Hadoop的安装。

  后续需要更改一些配置文件,我比较喜欢用的是 vim(vi增强版,基本用法相同),建议安装一下(如果你实在还不会用 vi/vim 的,请将后面用到 vim 的地方改为 gedit,这样可以使用文本编辑器进行修改,并且每次文件更改完成后请关闭整个 gedit 程序,否则会占用终端):

$ sudo apt-get install vim

  安装软件时若需要确认,在提示处输入y即可。

四、安装SSH、配置SSH无密码登陆

  集群、单节点模式都需要用到 SSH 登陆(类似于远程登陆,你可以登录某台 Linux 主机,并且在上面运行命令),Ubuntu 默认已安装了 SSH client,此外还需要安装 SSH server:

$ sudo apt-get install openssh-server

  安装后,可以使用如下命令登陆本机:

$ ssh localhost

  此时会有如下提示(SSH首次登陆提示),输入yes。然后按提示输入密码 hadoop,这样就登陆到本机了。

  但这样登陆是需要每次输入密码的,我们需要配置成SSH无密码登陆比较方便。

  首先退出刚才的 ssh,就回到了我们原先的终端窗口,然后利用 ssh-keygen 生成密钥,并将密钥加入到授权中:

$ exit                        # 退出刚才的 ssh localhost
$ cd ~/.ssh/                     # 若没有该目录,请先执行一次ssh localhost
$ ssh-keygen -t rsa                 # 会有提示,都按回车就可以
$ cat ./id_rsa.pub >> ./authorized_keys     # 加入授权
  ~的含义:在 Linux 系统中,~ 代表的是用户的主文件夹,即 “/home/用户名” 这个目录,如你的用户名为 hadoop,则 ~ 就代表 “/home/hadoop/”。 此外,命令中的 # 后面的文字是注释,只需要输入前面命令即可。

  此时再用 ssh localhost 命令,无需输入密码就可以直接登陆了。

五、安装JAVA JDK

  启动火狐浏览器,下载jdk-*-linux-x*.tar.gz,解压到/opt/jdk1.8.0_*

下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html

  问题:文件首先无法解压至/opt。

  原因:opt是系统文件夹,权限受保护,需要一定的权限才可以操作。

  办法:打开终端输入如下命令:

$ sudo chmod 777 /opt

  Ubuntu下修改目录权限命令如下:chmod 600 name (只有所有者有读和写的权限)
                   chmod 644 name (所有者有读和写的权限,组用户只有读的权限)
                   chmod 700 name (只有所有者有读和写以及执行的权限)
                   chmod 666 name (每个人都有读和写的权限)
                   chmod 777 name (每个人都有读和写以及执行的权限)
  递归修改一个目录中所有文件的权限方法:进入目录输入命令 chmod 777 -R *(其中 -R 表示递归处理,*代表所有文件)或 chmod 777 -R /home/abc/dirctoryname(此命令不用进入目录,/home/abc/dirctoryname是目录路径)。   

六、安装 Hadoop 2

  在Ubuntu系统打开firefox浏览器点击下面的地址下载:hadoop-2.7.1下载地址

  Hadoop 2一般通过 http://mirror.bit.edu.cn/apache/hadoop/common/ 或者 http://mirrors.cnnic.cn/apache/hadoop/common/下载最新的稳定版本,即下载 “stable” 下的 hadoop-2.x.y.tar.gz 这个格式的文件,已经编译好,另一个包含 src 的则是 Hadoop 源代码,需要进行编译才可使用。

  将下载完的 Hadoop 文件解压到/opt/hadoop-2.6.0。可以将文件名改为简短的hadoop,并修改其文件权限:

$ cd /opt/hadoop-2.6.0/
$ sudo mv ./hadoop-2.6.0/ ./hadoop    # 将文件夹名改为hadoop
$ sudo chown -R hadoop ./hadoop       # 修改文件权限

  Hadoop 解压后即可使用。输入如下命令来检查 Hadoop 是否可用,成功则会显示 Hadoop 版本信息:

$ cd /opt/hadoop
$ ./bin/hadoop version

七、安装scala

  在浏览器中下载scala-2.11.6.tgz,解压到/opt/scala-2.11.6

下载地址: http://www.scala-lang.org/

八、安装Spark

  在浏览器中下载spark-*-bin-hadoop2.6.tgz,解压到/opt/spark-*-bin-hadoop2.6

下载地址:http://spark.apache.org/downloads.html

  

九、配置环境变量

  编辑/etc/profile,执行以下命令:

*@* :~$  sudo gedit /etc/profile

  将以编辑的方式打开文件,在文件最增加:

#Seeting JDK JDK环境变量
export JAVA_HOME=/opt/jdk1.8.0_45
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
 export PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin:$PATH  

#Seeting Scala Scala环境变量
 export SCALA_HOME=/opt/scala-2.11.6
export PATH=${SCALA_HOME}/bin:$PATH

#setting Spark Spark环境变量
 export SPARK_HOME=/opt/spark-hadoop/

#PythonPath 将Spark中的pySpark模块增加的Python环境中
export PYTHONPATH=/opt/spark-hadoop/python

  重启电脑,使/etc/profile永久生效,临时生效,打开命令窗口,执行 source /etc/profile ,在当前窗口生效。

十、测试安装结果

  打开命令窗口,切换到Spark根目录:

*@*:~$ cd /opt/spark-*-bin-hadoop2.6/
*@*:/opt/spark-*-bin-hadoop2.6$

  执行 ./bin/spark-shell,打开Scala到Spark的连接窗口:

*@*:~$ cd /opt/spark-*-bin-hadoop2.6/
*@*:/opt/spark-*-bin-hadoop2.6$ ./bin/spark-shell

启动过程中无错误信息,出现scala>,启动成功。

 执行./bin/pyspark ,打开Python到Spark的连接窗口:

*@*:/opt/spark-*-bin-hadoop2.6$ ./bin/pyspark

  启动过程中无错误,在出现如上所示时,启动成功。

  通过浏览器访问:出现如下页面:

  测试SPark可用。

Spark在Ubuntu中搭建开发环境的更多相关文章

  1. 在ubuntu上搭建开发环境3---解决Y470一键系统重装之后恢复ubuntu引导启动的方法

    2015/08/18 将知识.常用的操作整理出来一定要完整,注意细节. 就像下面是再2015.04.27时候整理的,当时确实实验成功了,但是可能忘记记下具体的细节,尤其是3.4.5.6步骤中的关于盘符 ...

  2. 在ubuntu上搭建开发环境4---ubuntu简单的搭建LAMP环境和配置

    最近重新安装了Ubuntu,但是之前的LAMP环境自然也就没有了,实在是不想再去编译搭建LAMP环境(这种方法实在是太费时间,而且太容易遇到各种不知道为什么的错误),所以,就去查查有没有什么简单的搭建 ...

  3. 在ubuntu上搭建开发环境2---Win7、Ubuntu双系统正确删除Ubuntu

    这种删除ubuntu的方式就是针对本博客中搭建双系统的方式:http://www.cnblogs.com/xumenger/p/4459963.html 如果ubuntu不是以wubi方式安装的,那么 ...

  4. 在ubuntu上搭建开发环境10---英文版ubuntu安装中文输入法

    之前安装 ubuntu时候选择安装英文版,但是在查资料的时候难免的要输入中文所以自己弄了一下中文输入法的安装 我安装的是fcitx小企鹅输入法 下面介绍一下安装的过程.....   ubuntu默认的 ...

  5. 在ubuntu上搭建开发环境7---ubuntu安装JDK

    首先,当然是要下载了. 地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html 按 ...

  6. 在ubuntu上搭建开发环境5---联想Y470安装 ubuntu,解决双显卡发热等问题

    ubuntu14 没有解决显卡的问题的时候,会有这样的问题 1.耗电特别快.风扇狂转 2.鼠标键头显示有问题,乱闪,根本没法使用,容易卡住找不到鼠标箭头在哪里了:感觉图形界面显示也有问题,不稳定 解决 ...

  7. 在ubuntu上搭建开发环境1---在windows7的基础上在安装ubuntu(双系统)

    转载:http://jingyan.baidu.com/article/60ccbceb18624464cab197ea.html 当需要频繁使用ubuntu时,vmware虚拟机下运行ubuntu, ...

  8. Java-Linux系统中搭建开发环境

    准备工作: 0.虚拟机中的系统→{RHEL-I386} 1.JDK→{首先要知道下载哪个版本" [zf@string ~]$ getconf LONG_BIT ":".t ...

  9. 在ubuntu上搭建开发环境9---Ubuntu删除ibus出现的问题及解决

    删除 ibus输入法: sudo apt-get install ibus 我们会遇到下面的问题 Ubuntu 14.04 系统设置很多选项消失. 其实遇到这个问题的一个最主要的原因是之前执行过卸载i ...

随机推荐

  1. 在vs2012中用C#开发Android应用Xamarin环境搭建

    Xamarin是Mono创始人Miguel de Icaza创建的公司,旨在让开发者可以用C#编写iOS, Android, Mac应用程序,也就是跨平台移动开发. 简介 Xamarin是基于Mono ...

  2. 纯HTML5+CSS3制作生日蛋糕

    以一个前端开发的身份绘制一个简单的蛋糕庆祝一下今天这个好日子吧,程序员庆生的乐趣与哀愁啊.写的比较简陋,感兴趣的看一下吧. 先发个效果图吧 蛋糕分为三个部分,底部蛋糕,顶层蛋糕和蜡烛部分.HTML的布 ...

  3. Objective-C Runtime 运行时之四:Method Swizzling

    理解Method Swizzling是学习runtime机制的一个很好的机会.在此不多做整理,仅翻译由Mattt Thompson发表于nshipster的Method Swizzling一文. Me ...

  4. Android高效计算——RenderScript(二)

    3 RenderScript运行时层与反射层 3.1 RenderScript运行时层 RenderScript运行时层是指.rs代码运行时所在的层级.当对安卓项目进行编译的时候,.rs或者.rsh中 ...

  5. iOS Swift-简单值(The Swift Programming Language)

    iOS Swift-简单值(The Swift Programming Language) 常量的声明:let 在不指定类型的情况下声明的类型和所初始化的类型相同. //没有指定类型,但是初始化的值为 ...

  6. JDBC快速入门

    /** * JDBC快速入门: * 1.导入jar包 数据库驱动 * 2.注册驱动 * 3.获取数据库连接对象 Connection * 4.定义sql语句 * 5.获取发送执行sql语句的对象 St ...

  7. ObjectAnimator.start()工作原理

    分析下面一段代码的逻辑 objectAnimator.start(); 他会调用父类的start(),即ValueAnimator,我们分析valueAnimator.start()即可 ValueA ...

  8. RelativeLayout的位置属性总结

    使用"@id/…"时,所写的id必须在上文中已经定义,不能使用在下文定义的id RelativeLayout的子控件属性总结—— 按照控件之间常规的上下左右依次排列:(指定控件ID ...

  9. Python中的绝对路劲和相对路径

    1.绝对路径 os.path.abspath("文件名"): 显示的是一个文件的绝对路劲 eg: >>> import os >>> os.ch ...

  10. C#:委托和自定义事件

    1. 委托概述 “委托”相当于C++中的“函数指针”,委托必须与所要“指向”的函数在“参数”和“返回类型”上保持一致; // 定义Person类 public class Person { publi ...