Ubuntu16.04源码安装Mininet

本文介绍了VMware虚拟机ubuntu16.04中安装Mininet的方法,物理机中的方法与之相同。主要参考了Mininet官方的教程。官方提供了四种安装Mininet的方法

方法1:Mininet 虚拟机安装

最简单的方法是下载一个预先打包好的VM/ Ubuntu的虚拟机镜像。VM包括最小网络本身,所有OpenFlow的二进制文件和工具预安装,并调整内核配置能够支持更大的最小网络网络。 
下载包含Mininet的ubantu虚拟机映像下载地址。 
直接在VMware workstation或VirtualBox上像安装ubantu一样安装这个镜像文件。

方法2:源码编译安装

这种Mininet安装方法适用于本地虚拟机、EC2远程和本地安装,不适用于从旧版本的Mininet或OVS升级。这里强烈推荐使用最新的Ubuntu版本,因为它们支持新版本的Open vSwitch。如果你是从旧版本的Mininet或OVS升级,参考后面的方法。

1 更新软件

# apt-get update
# apt-get upgrade
  • 1
  • 2

这里如果ubantu没有安装git,需要安装

# apt install git
  • 1

2 从github上获取Mininet源码

为了从源码本地安装,首先你需要获取源码:

# git clone git://github.com/mininet/mininet
  • 1

另外,可以查看当前获取的Mininet版本,在~/mininet目录下,我们可以通过git tag命令列出所有可用的Mininet版本:

# cd mininet
  • 1
# git tag
  • 1

或者你想安装的任意版本:

# git checkout -b 2.2.1 2.2.1
  • 1

3 获取源码树并安装Mininet

#cat INSTALL
  • 1

切换到mininet文件下:

# cd mininet
  • 1

这里有多个安装选项:mininet/util/install.sh[options] 
“-a”:完整安装包括Mininet VM,还包括如Open vSwitch等依赖关系软件,以及像的OpenFlow Wireshark和POX。默认情况下,这些工具将被安装在你的home目录中。完整安装命令:

# ./util/install.sh -a
  • 1

“-nfv”:安装Mininet、基于OpenFlow的交换机和Open vSwitch。命令:

# ./util/install.sh –nfv
  • 1

“-s mydir” :使用此选项可将源代码建立在一个指定的目录中,而不是在home目录中。

#./util/install.sh -s mydir
  • 1

另外,你只想安装OpenFlow1.3和Open vSwitch2.3.0,可以使用安装命令:

# mininet/util/install.sh –n3V 2.3.0
  • 1

4 安装完成后可通过简单的命令测试Mininet的基本功能

# sudo mn --test pingall
  • 1

可以查看安装好的Mininet版本:

# mn --version
  • 1

方法3:安装包安装

如果正在使用最新的Ubuntu版本,你可以安装Mininet安装包。这种方法可能给你提供较旧版本的安装包,但是这可以是一种最为方便的方法。

首先,如果你正在或已经从早期的版本(像Mininet1.0)或者Open vSwitch中更新过,其可能保存在/usr/local,确保你已经移除早期版本。 
卸载命令:

sudo rm -rf /usr/local/bin/mn /usr/local/bin/mnexec \   /usr/local/lib/python*/*/*mininet* \   
  • 1

然后,运行如下命令:

lsb_release -a
  • 1

接下来,根据你的系统版本通过以下命令的其中之一安装Mininet基础包:

Mininet 2.1.0 on Ubuntu 14.10: sudo apt-get install 
  • 1
mininetMininet 2.1.0 on Ubuntu 14.04: sudo apt-get install 
  • 1
mininetMininet 2.0.0 on Ubuntu 12.04: sudo apt-get install mininet/precise-backports
  • 1

这些完成以后,如果已经安装了或者正在运行openvswitch-controller,你应该停用:

sudo service openvswitch-controller stop
  • 1
sudo update-rc.d openvswitch-controller disable
  • 1

然后你可以测试Mininet:

sudo mn --test pingall
  • 1

如果Mininet提示Open vSwitch没有运行,你可能需要重新编译她的核心模块:

# sudo dpkg-reconfigure openvswitch-datapath-dkms
  • 1
# sudo service openflow-switch restart
  • 1

如果你想实现一遍Mininet的攻略,你将安装其他的软件:

# git clone git://github.com/mininet/mininetmininet/util/install.sh -fw
  • 1

这将安装OpenFlow相关的交换机、控制器和Wireshark。

方法4:从已有的Mininet升级更新

有很多种方法来升级。如果Mininet没有任何修改,你可以

cd mininetgit fetchgit checkout master   
  • 1

你可以用sudo make develop来替代sudo make install ,这将从/usr/python/…到你的源树创建新的连接。 
注意:这将仅仅更新Mininet本身,其他的部件如 Open vSwitch需要独立更新。

Ubuntu16.04安装Mininet的更多相关文章

  1. ubuntu16.04安装jdk,tomcat

    ubuntu16.04安装jdk,tomcat 最近装了一下tomcat,网上的教程很多,我也试了很多次,但是有一些教程关于tomcat配置是错误的,让我走上了歧途.差点重装系统,还好王总及时出手帮助 ...

  2. Ubuntu16.04 安装openjdk-7-jdk

    Ubuntu16.04 安装openjdk-7-jdk sudo apt-get install openjdk-7-jre 或者sudo apt-get install openjdk-7-jdk ...

  3. Ubuntu16.04安装GTK3主题:OSX-Arc

    Ubuntu16.04安装GTK3主题:OSX-Arc GTK3主题:OSX-Arc描述: 前几个月,Gnome3.20升3.22的时候,出现了大量主题崩溃的现象,其中包括Arc.Flatabulou ...

  4. Ubuntu16.04安装opencv for python/c++

    Ubuntu16.04安装opencv for python/c++ 网上关于opencv的安装已经有了不少资料,但是没有一篇资料能让我一次性安装成功,因此花费了大量时间去解决各种意外,希望这篇能给一 ...

  5. ubuntu16.04安装不上有道词典的解决办法

    转自:http://www.linuxdiyf.com/linux/21143.html ubuntu16.04安装不上有道词典,提示: le@hu-pc:~/下载$ sudo dpkg -i you ...

  6. Ubuntu16.04安装mongodb

    Ubuntu16.04安装mongodb copy from: http://blog.csdn.net/zhushh/article/details/52451441 1.导入软件源的公钥 sudo ...

  7. 【Tools】ubuntu16.04安装搜狗输入法

    Ubuntu16,04 安装搜狗输入法 1.下载搜狗输入法的安装包 下载地址为:http://pinyin.sogou.com/linux/ 2.按键Ctr+Alt+T打开终端,输入以下命令切换到下载 ...

  8. Ubuntu16.04安装cuda9.0+cudnn7.0

    Ubuntu16.04安装cuda9.0+cudnn7.0 这篇记录拖了好久,估计是去年6月份就已经安装过几遍,然后一方面因为俺比较懒,一方面后面没有经常在自己电脑上跑算法,比较少装cuda和cudn ...

  9. Ubuntu16.04安装TensorFlow及Mnist训练

    版权声明:本文为博主原创文章,欢迎转载,并请注明出处.联系方式:460356155@qq.com TensorFlow是Google开发的开源的深度学习框架,也是当前使用最广泛的深度学习框架. 一.安 ...

随机推荐

  1. Android 7.0 出现 ”FileUriExposedException“ 和 ”解析包出现错误“ 异常的解决办法

    问题1 :android.os.FileUriExposedException: file:///storage/emulated/0/Android/data/com.xxx.xxx.xxx.rel ...

  2. 用sendcloud来发邮件

    平时发验证码邮件都是用免费域名邮箱,但是有时一频繁发多了就发不了了,听说用sendcloud可以避免,还能避免阿里云邮件发QQ邮箱进垃圾箱中,去注册了下,免费账户号每个月才50封,自己玩玩可以吧.. ...

  3. 使用Xilinx K7 KC705开发板调试PCIe中的问题【持续更新】

    开发板:Xilinx K7 KC705 软件:ISE14.7 1.由于应用需求,我们要将开发板作为主机端,通过PCIe接口转接板外接一个NVMe PCIe SSD.并由FPGA控制SSD的数据读写. ...

  4. vue全面介绍

    Vue.js 是一个JavaScriptMVVM库,是一套构建用户界面的渐进式框架.它是以数据驱动和组件化的思想构建的,采用自底向上增量开发的设计.相比于Angular.js,Vue.js提供了更加简 ...

  5. # tail -f /var/log/zabbix/zabbix_agentd.log sudo: sorry, you must have a tty to run sudo

    /etc/sudoers 1)Defaults requiretty,修改为 #Defaults requiretty,表示不需要控制终端. 2)Defaults requiretty,修改为 Def ...

  6. Checkbox: ListView 与CheckBox 触发事件冲突的问题

    我相信很多人都遇到过 ListView 中放入checkBox ,会导致ListView的OnItemClickListener无效,这是怎么回事呢? 这是因为checkBox 的点击事件的优先级比L ...

  7. android: getDimension, getDimensionPixelOffset 和getDimensionPixelSize 区别

    ◆结论: getDimension 获取某个dimen的值,如果是dp或sp的单位,将其乘以density,如果是px,则不乘   返回float getDimensionPixelOffset 获取 ...

  8. 【小白的CFD之旅】小结及预告

    这是小白系列的索引,后续会继续更新. 已更新的部分 01 引子02 江小白03 老蓝04 任务05 补充基础06 流体力学基础07 CFD常识08 CFD速成之道09 初识FLUENT10 敲门实例1 ...

  9. 【转载】一个Sqrt函数引发的血案

    转自:http://www.cnblogs.com/pkuoliver/archive/2010/10/06/sotry-about-sqrt.html 源码下载地址:http://diducoder ...

  10. 三者互ping,PC,虚拟机,uboot,nfs网络文件系统搭建

    要想实现三者互ping,韦老师虽然专门出了视频说明,但是在自己配置过程还是出现了问题,这里记录一下解决办法,虽然我也不知道原因,但是解决了出现的问题也实现了三者互ping. 首先,我的硬件设备是PC通 ...