gpt4 book ai didi

linux - 从 bash 脚本初始化 Mininet 拓扑

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:07:34 29 4
gpt4 key购买 nike

我想自动化设置 Mininet 的过程虚拟机,通过 SSH 连接到 VM,在 VM 中启动 Mininet,并初始化拓扑。我需要 session 保持打开状态,以便我可以使用创建的网络向 Mininet 发出命令。一切正常,包括初始化网络,但一旦 bash 脚本结束,Mininet 就会拆除拓扑并退出虚拟机。我的代码的相关部分如下:

vboxmanage startvm "Mininet-VM_1" --type=headless

ssh -t -Y -l mininet -p 2222 localhost << HERPDERP

# Start the network
sudo mn --controller=remote,ip=$ip --custom /home/mininet/sf_mininet_vm/mininet/topo_basic.py --topo clos_tree --switch ovsk --link tc

HERPDERP

我尝试过的事情:

  1. 使用 s0 bash 结束here 文档;
  2. s0 $SHELL 结尾;
  3. 删除此处文档末尾的分隔符(在黑暗中拍摄)。

(1) 和 (2) 退出 Mininet 并在 VM 中留下提示,但由于某种原因我无法从它发出命令。 (3) 什么都不做。

最佳答案

如果你在一个文件中有那个 python topo,你可以通过使用

来运行 topo
sudo -E python <nameofthefile>

例如,如果您的拓扑在文件 Pkt_Topo_with_loop.py 中,你可以只使用 sudo -E python Pkt_Topo_with_loop.py 来启动 mininet。因此,您可以在 bash 脚本中包含该行以实现自动化。

关于linux - 从 bash 脚本初始化 Mininet 拓扑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31070393/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com