ubuntu16.04下源码安装onos1.0.2
由于工作需要,下载安装onos1.0.2的版本,大家看需求可以下载安装更高级的版本
参考链接:http://www.sdnlab.com/14650.html
1.系统环境
Ubuntu16.04 LTS 64bit 下载地址:https://www.ubuntu.com/download/desktop(桌面版)
2.安装依赖(这里的版本选择根据ONOS版本确定的,在上述参考链接中作者有提到----“关于Maven和Karaf版本的说明:此处建议使用推荐的karaf-3.0.3和Maven-3.3.1,因为这与ONOS开发者当前使用环境相同,同样是为了方便配置环境变量和减少版本不一致带来的错误”。我没有在onos源码的pom.xml中找到确定的maven等版本的说明,感觉那个文件有点乱。但是打开onos源码文件:tools/dev/bash_profile,相关系统配置显示了这三个依赖的版本,如下图所示,而原文最后的环境变量导入的就这这个bash_profile文件,所以我认为按照这里面提到的版本安装依赖即可,当然修改配置文件里的版本号也是可以的,但我认为前者更可靠一点)

apache maven 3.2.2
apache karaf 3.0.2
java 8 JDK
3.安装步骤说明(这里大部分使用参考文章作者的方法)
注意:在今后的安装过程中使用普通用户权限即可,使用ROOT权限将给以后的使用带来很多不便!
3.1 在/home/user/(也就是~/)下面创建两个目录(这个路径其实就是桌面版点击侧栏的文件夹然后选择home即可)
~/Downloads:用来放下载的压缩文件
~/Applications:上述压缩文件解压目录
3.2 下载安装Maven和karaf
fay@ubuntu:~$ cd ~ #进入用户目录,准备后面的操作
fay@ubuntu:~$ cd; mkdir Downloads Applications #创建存放软件和安装软件的目录
fay@ubuntu:~$ cd Downloads #进入下载目录准备下载Maven和Karaf
fay@ubuntu:~$ wget http://archive.apache.org/dist/karaf/3.0.2/apache-karaf-3.0.2.tar.gz#下载Karaf
fay@ubuntu:~$ wget http://archive.apache.org/dist/maven/maven-3/3.2.2/binaries/apache-maven-3.2.2-bin.tar.gz #下载Maven
fay@ubuntu:~$ tar -zxvf apache-karaf-3.0.2.tar.gz -C ../Applications/ #解压到Application目录
fay@ubuntu:~$ tar -zxvf apache-maven-3.2.2-bin.tar.gz -C ../Applications/ #解压到Application目录
3.3 下载onos源码
1.0版本github下载地址 https://github.com/opennetworkinglab/onos/tree/onos-1.0
这里有一个小问题需要注意,下载到/home/user/目录下解压后,文件的名字为onos-onos-1.0,而onos的bash_profile中环境变量指定

所以我将文件名onos-onos-1.0改为了onos,这样就不用修改配置文件,如果环境变量名字和源码文件名不一样,会在下面的source ~/.profile命令后报错no such cell:local,如图:

上述工作完成后:

3.4 安装Oracle Java8,环境变量配置,源码安装onos
同原链接文章
mvn clean install命令之后需要等待较长一段时间,最后出现build success提示表明安装成功

3.5运行onos1.0.2
原文章的启动方法不适用于onos1.0版本,原因是在bash_profile没有找到ok这个别名,提示错误OK:command not found,所以参考了另一篇文章

参考文章链接:http://sdnhub.cn/index.php/installing-and-running-onos/ 直接看第3部分----运行onos
在修改配置文件的时候,我找到我所下载的onos的版本是1.0.2-SNAPSHOT,所以追加的内容按照作者的提示做了相应修改
如何查看版本:onos/tools/package/brading/target目录下,有对应的jar包显示版本1.0.2-SNAPSHOT
追加完成后,输入karaf laean启动onos(如果启动不成功,重启虚拟机,使得配置文件生效即可),启动成功界面如下,有的会显示onos,应该都是一样的,这在文章
http://sdnhub.cn/index.php/installing-and-running-onos/中3.2节有提到

输入shutdown即可退出
----------------------------------------------------------------------至此大功告成!鼓掌!----------------------------------------------------------------------
ubuntu16.04下源码安装onos1.0.2的更多相关文章
- CentOS下源码安装vsftpd-3.0.0,并设置指定用户访问指定目录(附带完整配置文件)
1.卸载系统已经存在的ftp服务器 因为是源码安装,所以不能通过rpm -qa的方式查看是否已经安装ftp服务器,可以通过find / | grep vsftp*方式查看系统中存在哪些与vsftpd相 ...
- ubuntu 16.04下源码安装opencv3.4
源码安装opencv,遇到了一些小波折,这里做个备忘吧. 首先要下载源码,路径: https://github.com/opencv/opencv 下载成功后,在opencv的根目录下执行下面操作: ...
- ubuntu14.04上源码安装openssl1.0.2k
卸载自带openssl sudo apt-get remove openssl 解压文件tar -xzf openssl-1.0.2k.tar.gz 配置 sudo ./config shared - ...
- CentOS 7下源码安装MySQL 5.7
网上说linux安装mysql服务分两种安装方法: ①源码安装,优点是安装包比较小,只有几十M左右,缺点是安装依赖的库多,安装编译时间长,安装步骤复杂容易出错: ②使用官方编译好的二进制文件安装,优点 ...
- ubuntu16.04下sublime text3安装和配置
ubuntu16.04下sublime text3安装和配置 2018年04月20日 10:31:08 zhengqijun_ 阅读数:1482 1.安装方法 1)使用ppa安装 sudo add-a ...
- centos 6x系统下源码安装mysql操作记录
在运维工作中经常部署各种运维环境,涉及mysql数据库的安装也是时常需要的.mysql数据库安装可以选择yum在线安装,但是这种安装的mysql一般是系统自带的,版本方面可能跟需求不太匹配.可以通过源 ...
- 【转】Win 7 下源码运行OpenERP7.0
原文地址:Win 7 下源码运行OpenERP7.0 安装Python2.7 下载地址:http://www.python.org/getit/注:OpenERP7.0支持的Python版本最高为2. ...
- CentOS下源码安装Apache2.4+PHP5.4+MySQL5.5
一.准备(把所有的源文件放在‘/home/yuanjun’目录下) apr http://mirror.bjtu.edu.cn/apache/apr/apr-1.4.6.tar.gz apr-util ...
- 在ConoHa上Centos7环境下源码安装部署LNMP
本文记录了从源码,在Centos 7上手动部署LNMP环境的过程,为了方便以后对nginx和mariadb进行升级,这里采用yum的方式进行安装. 1.建立运行网站和数据库的用户和组 groupadd ...
随机推荐
- 微服务(二)hystrix
特性 1.延迟和失败容忍 防止级联错误,错误回退,优雅降级.快速失败和恢复 线程和信号量隔离 2.实时监控和配置更改 3.并发 并行执行,请求缓存,自动批处理失败请求 总运行流程 当你发出请求后,hy ...
- python的__init__几种方法总结
参考 __init__() 这个方法一般用于初始化一个类 但是 当实例化一个类的时候, __init__并不是第一个被调用的, 第一个被调用的是__new__ #!/usr/bin/env pytho ...
- 数据结构二叉树的所有基本功能实现。(C++版)
本人刚学数据结构,对树的基本功能网上找不到C++代码 便自己写了一份,贴出方便大家进行测试和学习. 大部分功能未测试,如有错误或者BUG,请高手们指教一下,谢谢. 结点声明: BinTreeNode. ...
- 使用ExpressionVisitor进行lambadaExpression的动态拼接
现有如下实体 public class User { public int Id { get; set; } public string Name { get; set; } } 根据这个实体创建一个 ...
- Linux - 简明Shell编程07 - 数组(Array)
脚本地址 https://github.com/anliven/L-Shell/tree/master/Shell-Basics 示例脚本及注释 #!/bin/bash test0=() # 定义数组 ...
- python学习之元组与文件
元组 元组是最后一个python集合类型.元组由简单的对象构成,元组与列表非常相似,只不过元组不能在原处修改,并且通常写成圆括号,虽然元组部支持任何方法调用,但元组具有列表的大多数属性. 实际应用中的 ...
- Oracle用户的初始化问题
上一篇博文介绍了关于.bashrc和.bash_profile的相关知识,在oracle的用户设置中能发挥作用. 场景:上周准备学习一下oracle,下载了安装文件后,在linux上新建了一个用户or ...
- 关于浏览器解析html全过程详解
本人web前端菜鸟一枚,第一次在这里发博客梳理知识,知识都是从各地方查阅引用以及自己的理解得来,有什么错误的地方欢迎指正. DOM文档通常加载的步骤: 1.解析HTML结构. 2.加载外部脚本和样式表 ...
- Nexus3 配置3
Nexus3 配置3 案例通过 NPM 的包管理 proxy : 表示设置公网仓库 hosted : 设置私网仓库 group : 将多个仓库合并在一起 设置 proxy 这里我用的 https:// ...
- PHPExcel导出excel表格
if(!function_exists('exportExcel')){ //导出excel文件 function exportExcel($datas, $save_method='ht ...