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. centos chroot使用

    chroot命令用来在指定的根目录下运行指令.chroot,即 change root directory (更改 root 目录).在 linux 系统中,系统默认的目录结构都是以/,即是以根 (r ...

  2. linux:文件及文件夹管理

    http://blog.csdn.net/pipisorry/article/details/39854265 查看用户的信息 pika:~$id pikauid=1000(pika) gid=100 ...

  3. Spring开启方法异步执行

    @EnableAsync @Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME) @Documented @Import(Async ...

  4. ubantu 单用户模式进入系统

    提到如何在gurb界面进入单用户模式,此模式下,用户不需要输入任何密码即可进入系统.于是查了一下ubuntu如何通过grub界面以单用户模式进入系统.实验步骤如下: 1.重启系统 按住shift键 进 ...

  5. 每日英语:Got a Case of the Mondays? Blame the Sunday Blues

    Welcome to Monday morning at the office. Did you have trouble sleeping last night? Was your stomach ...

  6. RAID卡的缓存与磁盘自带的缓存的关系

    RAID卡是否有(启用)缓存对“随机读写”性能有巨大的影响.中高端的RAID卡都有缓存(价格也高). 那么RAID卡的缓存与磁盘自带的缓存是如何设置的? 戴尔服务器的perc H710 RAID卡有5 ...

  7. C# LINQ系列:LINQ to DataSet的DataTable操作 及 DataTable与Linq相互转换

    LINQ to DataSet需要使用System.Core.dll.System.Data.dll和System.Data.DataSetExtensions.dll,在项目中添加引用System. ...

  8. linux输入子系统

    linux输入子系统(linux input subsystem)从上到下由三层实现,分别为:输入子系统事件处理层(EventHandler).输入子系统核心层(InputCore)和输入子系统设备驱 ...

  9. iOS如何把一个CGPoint存入数组里

    CGPoint  itemSprite1position = ccp(100,200): NSMutableArray * array  = [[NSMutableArray alloc] initW ...

  10. 纯css3开发的响应式设计动画菜单(支持ie8)

    这是一个响应式设计的菜单.单击列表图标,当你显示屏大小可以完全水平放下所有菜单项时,菜单水平显示(如图1).当你的显示屏不能水平放置所有菜单项时,菜单垂直显示(如图2). 而且显示的时候是以动画的型式 ...