1.准备工作

在一台Linux系统的主机或服务器上安装最新版本的 docker CE,然后再进行接下来的操作。

创建Linux操作系统用户nocsys,且该用户要加入docker 用户组中:

sudo useradd -d /home/nocsys -m -g docker nocsys

设定nocsys用户的密码:

sudo passwd nocsys

编辑 /etc/sudoers ,在最后一行添加:

nocsys ALL=(ALL:ALL) NOPASSWD:ALL

切换到刚才创建的nocsys用户:

su – nocsys

加载内核模块:

sudo modprobe overlay

2.从SONiC社区代码库克隆代码

git clone https://github.com/Azure/sonic-buildimage.git

cd sonic-buildimage

切换代码分支。建议选择最近发布的代码分支,比如本文选择截止目前最新的分支201904:


3.修改配置文件rules/config中的参数

将交换机admin用户密码改为nocsys :

将L3 功能改为基于frr :


4.编译交换机NOS镜像

网络良好的情况下,完成下列编译工作大约需要三个小时。如果是克隆代码后的第一次编译,所花时间会更长。

make init

根据交换机型号选择正确的的交换芯片平台(如果不清楚ASIC平台的话,可以去SONiC社区这个网页查找: https://github.com/Azure/SONiC/wiki/Supported-Devices-and-Platforms)
如果是Barefoot交换机,交换平台代码就是 p4。而 broadcom则代表基于博通ASIC的交换机:

make configure PLATFORM=broadcom

编译跟Debian 9 Stretch发行版相关的包:

BLDENV=stretch make stretch

编译最终的SONiC操作系统镜像:

make target/sonic-broadcom.bin

编译完成后在target目录下生成文件名为“sonic-broadcom.bin”的SONiC镜像:

SONiC镜像编译指南(转,参考1)相关推荐

  1. SONiC镜像编译指南

    1.准备工作 在一台Linux系统的主机或服务器上安装最新版本的 docker CE,然后再进行接下来的操作. 创建Linux操作系统用户nocsys,且该用户要加入docker 用户组中: sudo ...

  2. Multi-Architecture镜像制作指南已到,请查收!

    摘要:使用Multi-Architecture镜像,可以让docker根据系统架构去拉取对应的镜像,服务的部署脚本等可以在不同架构的系统间使用相同的配置,减化服务配置,提高了服务在不同系统架构间的一致 ...

  3. Android高版本P/Q/R源码编译指南

           Android高版本P/Q/R源码编译指南 Android源码编译系列博客: Android.bp你真的了解吗 Android.bp入门指南之Android.mk转换成Android.b ...

  4. access口 环路_交换机二层环路问题处理指南[苍松参考]

    <交换机二层环路问题处理指南[苍松参考]>由会员分享,可在线阅读,更多相关<交换机二层环路问题处理指南[苍松参考](19页珍藏版)>请在人人文库网上搜索. 1.目录1介绍32网 ...

  5. 黑群晖7.1.0-42661版本的DS918+引导镜像编译(添加Mellanox万兆网卡MNPA19-XTR和瑞昱2.5G网卡R8125B驱动) 在线编译和本地编译

    本人小白,之前未编译过类似镜像,参考了3位大佬文章: 1.使用GitHub Actions 在线编译群晖DSM7.X引导 - VAY冬冬の秘密 Blog (vay1314.top)https://bl ...

  6. mongodb 4.0.3 源码编译【1】编译指南的翻译

    [原始文档] mongodb-src-r4.0.3.zip\mongodb-src-r4.0.3\docs\building.md [翻译] 编译 MongoDB ================ 编 ...

  7. linux编译ace tao,CentOS环境下ACE编译指南

    CentOS环境下ACE编译指南 1.环境说明: (1)CentOS6.3 (2) ACE6.10 2.编译步骤: (1)定义环境变量: ACE_ROOT=/root/work/cots/ACE_wr ...

  8. subst命令镜像虚拟磁盘指南(原创)

    subst命令镜像虚拟磁盘指南 1.镜像虚拟磁盘subst命令 利用subst命令可以将一个文件夹镜像成本地的一个硬盘, 映射虚拟磁盘: subst B: F:\ghost // B盘只要盘符没有用到 ...

  9. linux编译准备,Linux 下编译指南

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 首先,我们需要获取最新的源码. 使用如下命令即可: git clone -b master --depth=1 https://github.com/Cl ...

  10. linux下编译,Linux 下编译指南

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 首先,我们需要获取最新的源码. 使用如下命令即可: git clone -b master --depth=1 https://github.com/Cl ...

最新文章

  1. 一个 零差评的 Python 内置库
  2. SAP CRM interaction center呼叫中心的一些性能问题的分析
  3. 启动tomcat不出现命令窗口
  4. python url拼接_详解Python urlencode编码和url拼接方法
  5. “黑科技”监控图像技术你知道吗?
  6. ES6——Class 笔记
  7. 如何用python批量下载数据_Python实现批量下载文件
  8. HDU1465 不容易系列之一【递推】
  9. python求解LeetCode习题Sort Colors
  10. AD之PCB快速选中所有元器件并锁定
  11. python虚线画田字格_[Matplotlib官方示例教程]第19课.自定义虚线样式
  12. 不要在意FIl短期,FIl未来价值可期
  13. pdf如何转换成word?分享三个好用的方法!
  14. 无人驾驶能解决什么问题?
  15. 从0到1Python数据科学之旅
  16. Linux系统安装make命令(错误提醒:Failed to search for file: Cannot update read-only repo)
  17. 积分与微分电路 (转)
  18. 公用网络切换为专用网络的详细步骤
  19. 简述工业机器人示教再现的一般步骤_工业机器人示教与初识编程语言
  20. 适配 iphone 微信h5页面

热门文章

  1. [置顶]【留言板 Message Board】
  2. 【Struts1】--beanutils
  3. Ubuntu 16.04 安装 Apache, MySQL, PHP7
  4. Go语言实战 - 网站性能优化第一弹“七牛云存储”
  5. Delphi 的绘图功能[2] - 入门
  6. Elasticsearch5.X Centos7安装过程
  7. sqlite3 命令行操作
  8. 《I'm a Mac:雄狮训练手册》——2.3 账户类型
  9. UITableView介绍 之 复杂cell的高度计算
  10. 一道和逆向和溢出有关的竞赛题分析