WSLUbuntu18.04 磁盘迁移 与 ns3gym 安装

–>

ns3-gym 是从一篇论文看到,据说可以更好的将强化学习与ns3仿真结合起来的一个框架。
论文地址: https://arxiv.org/abs/1810.03943
WSL,即windows的子linux系统,两者之间可以更好的交互,更方便,主要还支持GPU运算(需要预览版才行)。

WSL 安装

win10 版本应大于或等于 1903

  1. win10 设置页面 输入 控制面板 并点击进入

  2. 找到 程序和功能 并打开

  3. 找到 启动或关闭 Windows 功能 并打开

  4. 向下拉 勾选 适用于Linux的Windows子系统,虚拟机平台(预览版需要勾选),确定

  5. 打开win10 自带的 Microsoft Store,搜索Ubuntu,选择18.04LTS版本进行安装即可(也可以安装其它linux系统

  6. 在 最近添加 找到Ubuntu18.04 LTS,点击启动,设置用户名和密码即可使用 (后续启动 可以在 Windows PowerShell 或 cmd 中 输入 bash 即可启动)

WSL 迁移(预览版无法适用)

由于 linux 系统默认安装在 C 盘,后续使用可能占用磁盘越来越多,因此需要把它迁移到其它盘符。

  1. 下载 LxRunOffline,点击 https://github.com/DDoSolitary/LxRunOffline/releases 选择最新版本

  2. 解压压缩包,打开 PowerShell 并将目录切换到 解压目录下,然后进行迁移

    • .\LxRunOffline.exe list #查看已安装的子系统
      
    • .\LxRunOffline.exe move -n Ubuntu-18.04 -d E:\Ubuntu #迁移到目标目录下
      

    ​ 出现如下提示,耐心等待它完成即可。

  3. 验证一下,如图所示,即为成功迁移

    .\LxRunOffline.exe get-dir -n Ubuntu-18.04
    

ns3-gym 安装(ubuntu 2004)

之前一直使用ubuntu1804 安装ns3gym,但是一直报如下错误,尝试了很多方法,多没能成功。

​ 后面有个大佬的回答,说是ubuntu2004 能成功,所以试了一下,发现成功了。

​ 附上链接:https://github.com/tkn-tub/ns3-gym/issues/33#issue-643301286

  1. 对 ubuntu 进行换国内源,加快下载速度

    sudo sed -i 's#archive.ubuntu.com#mirrors.aliyun.com#g' /etc/apt/sources.list
    sudo apt update
    sudo apt upgrade
    sudo passwd  # 设置root密码
    su root # 如果提示权限不够,可以切换root用户安装
    
  2. 安装 ns3-gym 的依赖环境,其实就是安装 ns3 时所需要的依赖环境(如果要在conda虚拟环境中安装,创建激活环境,执行下面操作即可)

    下载ns3-gym 以及 官方安装教程:https://github.com/tristone13th/ns3-gym

    ns3 官方安装过程:https://www.nsnam.org/wiki/Installation

    sudo apt-get install g++ python3
    sudo apt-get install g++ python3 python3-dev pkg-config sqlite3
    sudo apt-get install python3-setuptools git
    sudo apt-get install qt5-default mercurial
    # ipython python-pygraphviz 在ubuntu2004无法安装,但不影响。
    sudo apt-get install gir1.2-goocanvas-2.0 python-gi python-gi-cairo python-pygraphviz python3-gi python3-gi-cairo python3-pygraphviz gir1.2-gtk-3.0 ipython ipython3
    sudo apt-get install openmpi-bin openmpi-common openmpi-doc libopenmpi-dev
    sudo apt-get install autoconf cvs bzr unrar
    sudo apt-get install gdb valgrind
    sudo apt-get install uncrustify
    sudo apt-get install doxygen graphviz imagemagick
    sudo apt-get install texlive texlive-extra-utils texlive-latex-extra texlive-font-utils dvipng latexmk
    sudo apt-get install python3-sphinx dia
    sudo apt-get install gsl-bin libgsl-dev libgsl23 libgslcblas0
    sudo apt-get install tcpdump
    sudo apt-get install sqlite sqlite3 libsqlite3-dev
    sudo apt-get install libxml2 libxml2-dev
    sudo apt-get install cmake libc6-dev libc6-dev-i386 libclang-6.0-dev llvm-6.0-dev automake
    sudo apt install python3-pip
    sudo pip3 install --upgrade pip
    python3 -m pip install --user cxxfilt
    sudo apt-get install libgtk-3-dev
    sudo apt-get install vtun lxc uml-utilities
    # libboost-signals-dev 安装不了,无伤大雅,去掉再安装即可
    sudo apt-get install libboost-signals-dev libboost-filesystem-dev
    
  3. 进行 protoc 的安装

    • 安装 ZMQ、protobuf-compiler 和 libprotobuf-dev 文件

      sudo apt-get install libzmq5 libzmq5-dev
      sudo apt-get install libprotobuf-dev
      sudo apt-get install protobuf-compiler
      
    • 检查当前系统的protoc安装环境

      sudo apt-cache showpkg libprotobuf-dev
      sudo apt-cache showpkg protobuf-compiler
      
    • 检查protobuf-compiler和 libprotobuf-dev的版本信息,然后在protoc官网上:https://pypi.org/project/protobuf/#history 下载对应版本。我的 libprotobuf-dev和protobuf-compiler均是3.6.1。

      pip3 install protobuf==3.6.1
      
  4. 下载ns3gym,解压放置 home 目录下

    sudo unzip ns3gym.zip #解压压缩包
    sudo chmod -R 777 ns3-gym-master #更改权限,防止因权限问题报错
    
    cd ns3-gym-master #切换到解压目录中运行
    # Ubuntu2004 只有python3, 所以无需指定python版本
    ./waf configure # 或者python3 ./waf configure 指定版本
    ./waf build # 或者python3 ./waf build
    

    pip3 install ./src/opengym/model/ns3gym
    

    # 运行示例
    cd ./scratch/opengym
    ./simple_test.py
    

    安装成功!

other

sudo chmod -R 777 home #修改为可写目录(-R:所有子文件)

原文链接:https://www.cnblogs.com/huang-xiang/p/13968972.html
本文来源 互联网收集,文章内容系作者个人观点,不代表 本站 对观点赞同或支持。如需转载,请注明文章来源,如您发现有涉嫌抄袭侵权的内容,请联系本站核实处理。

© 版权声明

相关文章