Ubuntu系统下NS-3安装与工具配置

1.NS3介绍

官网:https//www.nsnam.org/

引用官网的介绍:

ns-3是用于因特网系统的离散事件网络模拟器,主要用于研究和教育用途。ns-3是免费软件,根据GNU GPLv2许可证授权,可公开用于研究,开发和使用。

NS-3是一个离散的事件驱动的网络系统模拟器,旨在为科研和教学服务.NS-3是免费的软件,使用GNU GPLv2证书,对研究,开发,和使用开放。目前(2016年10月24日)的最新版本是NS-3.27。稳定版本是NS-3.26。几乎每三到四个月就会更新一个版本.ns3之前有NS2。但是NS2与NS3区别很大。强烈建议使用NS3。另外,ns3.26版本是支持C ++ 11。所以建议使用最新的版本。

官方提供了说明文档,教程文档,模块库文档,API文档等。这些文档很重要。

通过可以网址https://www.nsnam.org/ns-3-26/documentation/电子杂志。

这里写图片描述

官网提供了PDF格式和HTML格式。下载PDF格式更好,本地查看,不受网络限制。

需要说明的是,上面的文档都是英文的。如果英文好,直接阅读这些文档,就可以入门NS3了。

但是肯定有英文不好的同学喽,怎么办呢?还是有办法的。有一本书,名字是“NS-3网络模拟器基础及应用”,走淘宝就可以了。这本书就是上面的官方文档的翻译版本。如果英文好的话,别花冤枉钱了。

2.安装

根据NS3-教程文档的说明,来进行安装。网上也有博客说明安装步骤。大家可以参考。需要说明的是,NS3安装以及配置都是ubuntu的下进行的。

对于视窗系统用户来说,最好使用双系统,因为在视窗下使用虚拟机来做的话,太慢了。个人建议用双系统。如果你自己使用的就是Linux的的话,那就更好了。

在安装NS3前需要安装一些依赖库,否则,安装NS3会出错。

<span style="color:#2f2f2f"><span style="color:#abb2bf"><code><span style="color:#e06c75">sudo</span> <span style="color:#e06c75">apt-get</span> <span style="color:#e06c75">install</span> <span style="color:#e06c75">gcc</span> <span style="color:#e06c75">g</span>++ <span style="color:#e06c75">Python</span>
<span style="color:#e06c75">sudo</span> <span style="color:#e06c75">apt-get</span> <span style="color:#e06c75">install</span> <span style="color:#e06c75">mercurial</span>
<span style="color:#e06c75">sudo</span> <span style="color:#e06c75">apt-get</span> <span style="color:#e06c75">install</span> <span style="color:#e06c75">bzr</span>
<span style="color:#e06c75">sudo</span> <span style="color:#e06c75">apt-get</span> <span style="color:#e06c75">install</span> <span style="color:#e06c75">gdb</span> <span style="color:#e06c75">valgrind</span>
<span style="color:#e06c75">sudo</span> <span style="color:#e06c75">apt-get</span> <span style="color:#e06c75">install</span> <span style="color:#e06c75">gsl-bin</span> <span style="color:#e06c75">libgsl0-dev</span> <span style="color:#e06c75">libgsl0ldbl</span>
<span style="color:#e06c75">sudo</span> <span style="color:#e06c75">apt-get</span> <span style="color:#e06c75">install</span> <span style="color:#e06c75">flex</span> <span style="color:#e06c75">bison</span>
<span style="color:#e06c75">sudo</span> <span style="color:#e06c75">apt-get</span> <span style="color:#e06c75">install</span> <span style="color:#e06c75">g</span>++<span style="color:#e06c75">-3</span><span style="color:#d19a66">.4</span> <span style="color:#e06c75">gcc-3</span><span style="color:#d19a66">.4</span>
<span style="color:#e06c75">sudo</span> <span style="color:#e06c75">apt-get</span> <span style="color:#e06c75">install</span> <span style="color:#e06c75">tcpdump</span>
<span style="color:#e06c75">sudo</span> <span style="color:#e06c75">apt-get</span> <span style="color:#e06c75">install</span> <span style="color:#e06c75">sqlite</span> <span style="color:#e06c75">sqlite3</span> <span style="color:#e06c75">libsqlite3-dev</span>
<span style="color:#e06c75">sudo</span> <span style="color:#e06c75">apt-get</span> <span style="color:#e06c75">install</span> <span style="color:#e06c75">libxml2</span> <span style="color:#e06c75">libxml2-dev</span>
<span style="color:#e06c75">sudo</span> <span style="color:#e06c75">apt-get</span> <span style="color:#e06c75">install</span> <span style="color:#e06c75">libgtk2</span><span style="color:#d19a66">.0-0</span> <span style="color:#e06c75">libgtk2</span><span style="color:#d19a66">.0-dev</span>
<span style="color:#e06c75">sudo</span> <span style="color:#e06c75">apt-get</span> <span style="color:#e06c75">install</span> <span style="color:#e06c75">vtun</span> <span style="color:#e06c75">lxc</span>
<span style="color:#e06c75">sudo</span> <span style="color:#e06c75">apt-get</span> <span style="color:#e06c75">install</span> <span style="color:#e06c75">uncrustify</span>
<span style="color:#e06c75">sudo</span> <span style="color:#e06c75">apt-get</span> <span style="color:#e06c75">install</span> <span style="color:#e06c75">doxygen</span> <span style="color:#e06c75">graphviz</span> <span style="color:#e06c75">imagemagick</span>
<span style="color:#e06c75">sudo</span> <span style="color:#e06c75">apt-get</span> <span style="color:#e06c75">install</span> <span style="color:#e06c75">texlive</span> <span style="color:#e06c75">texlive-pdf</span> <span style="color:#e06c75">texlive-latex-extra</span> <span style="color:#e06c75">texlive-generic-extra</span> <span style="color:#e06c75">texlive-generic-recommended</span>
<span style="color:#e06c75">sudo</span> <span style="color:#e06c75">apt-get</span> <span style="color:#e06c75">install</span> <span style="color:#e06c75">texinfo</span> <span style="color:#e06c75">dia</span> <span style="color:#e06c75">texlive</span> <span style="color:#e06c75">texlive-pdf</span> <span style="color:#e06c75">texlive-latex-extra</span> <span style="color:#e06c75">texlive-extra-utils</span> <span style="color:#e06c75">texlive-generic-recommended</span>
<span style="color:#e06c75">sudo</span> <span style="color:#e06c75">apt-get</span> <span style="color:#e06c75">install</span> <span style="color:#e06c75">python-pygraphviz</span> <span style="color:#e06c75">python-kiwi</span> <span style="color:#e06c75">python-pygoocanvas</span> <span style="color:#e06c75">libgoocanvas-dev</span>
<span style="color:#e06c75">sudo</span> <span style="color:#e06c75">apt-get</span> <span style="color:#e06c75">install</span> <span style="color:#e06c75">libboost-signal-dev</span> <span style="color:#e06c75">libboost-filesystem-dev</span>
</code></span></span>

主要有上面这些。安装之后,再安装教程文档中的步骤进行,下载NS3,编译。

详细过程请看教程文档。

我在安装的时候遇到了错误。其中大部分错误应该是没有安装依赖的库造成的。如果在安装过程中出了错误,请看看终端上面显示的错误,是不是依赖的库没有安装?如果是因为有些库没有安装的话,可以先安装提示的库,然后在向下进行安装。

如果上面依赖的库安装完成之后,按照教程文档中的下载过程下载NS3便可,就不多说了,下载过程简单要看各位的网速了。
下载完成之后,目录截图如下:

这里写图片描述

完成之后,就是要编译这个工程了。
其实我们下载的NS3文件没有IDE来打开看是肯定不行的,稍后会说明如何在蚀中打开我们下载的NS3。

首先编译并运行一下NS3。看看是否安装成功。此时的NS3文件总大小大约150M左右。我使用的是WAF进行配置和编译。这里完全不用看教程文档了。里面说的太啰嗦了。

打开终端,进行到下载的NS3目录下,(是在上面的目录下打开命令行终端),输入以下运行命令:

<span style="color:#2f2f2f"><span style="color:#abb2bf"><code>./waf configure --build-profile=debug --<span style="color:#e6c07b">enable</span>-examples --<span style="color:#e6c07b">enable</span>-tests
</code></span></span>

这一行命令是为了配置NS3。

命令中的点号代表当前目录,当前命令下的WAF文件,WAF文件是一个蟒蛇。是NS3自带的。

通过上面的命令,使用当面目录下的WAF文件配置NS3,并使得编译版本为调试模式,同时使得实例代码和测试代码可用。

终端上输出日志如下:

<span style="color:#2f2f2f"><span style="color:#abb2bf"><code>Setting top to                           : .
Setting out to                           : build
Checking <span style="color:#c678dd">for</span> <span style="color:#98c379">'gcc'</span> (c compiler)          : /usr/bin/gcc
Checking <span style="color:#c678dd">for</span> cc version                  : <span style="color:#d19a66">4.2</span><span style="color:#d19a66">.1</span>
Checking <span style="color:#c678dd">for</span> <span style="color:#98c379">'g++'</span> (c++ compiler)        : /usr/bin/g++
Checking boost includes                  : <span style="color:#d19a66">1</span>_46_1
Checking boost libs                      : ok
Checking <span style="color:#c678dd">for</span> boost linkage               : ok
Checking <span style="color:#c678dd">for</span> click location              : <span style="color:#c678dd">not</span> found
Checking <span style="color:#c678dd">for</span> program pkg-config          : /sw/bin/pkg-config
Checking <span style="color:#c678dd">for</span> <span style="color:#98c379">'gtk+-2.0'</span> >= <span style="color:#d19a66">2.12</span>          : yes
Checking <span style="color:#c678dd">for</span> <span style="color:#98c379">'libxml-2.0'</span> >= <span style="color:#d19a66">2.7</span>         : yes
Checking <span style="color:#c678dd">for</span> type uint128_t              : <span style="color:#c678dd">not</span> found
Checking <span style="color:#c678dd">for</span> type __uint128_t            : yes
Checking high precision implementation   : <span style="color:#d19a66">128</span>-bit integer (default)
Checking <span style="color:#c678dd">for</span> header stdint.h             : yes
Checking <span style="color:#c678dd">for</span> header inttypes.h           : yes
Checking <span style="color:#c678dd">for</span> header sys/inttypes.h       : <span style="color:#c678dd">not</span> found
Checking <span style="color:#c678dd">for</span> header sys/types.h          : yes
Checking <span style="color:#c678dd">for</span> header sys/stat.h           : yes
Checking <span style="color:#c678dd">for</span> header dirent.h             : yes
Checking <span style="color:#c678dd">for</span> header stdlib.h             : yes
Checking <span style="color:#c678dd">for</span> header signal.h             : yes
Checking <span style="color:#c678dd">for</span> header pthread.h            : yes
Checking <span style="color:#c678dd">for</span> header stdint.h             : yes
Checking <span style="color:#c678dd">for</span> header inttypes.h           : yes
Checking <span style="color:#c678dd">for</span> header sys/inttypes.h       : <span style="color:#c678dd">not</span> found
Checking <span style="color:#c678dd">for</span> library rt                  : <span style="color:#c678dd">not</span> found
Checking <span style="color:#c678dd">for</span> header netpacket/packet.h   : <span style="color:#c678dd">not</span> found
Checking <span style="color:#c678dd">for</span> header sys/ioctl.h          : yes
Checking <span style="color:#c678dd">for</span> header net/<span style="color:#c678dd">if</span>.h             : <span style="color:#c678dd">not</span> found
Checking <span style="color:#c678dd">for</span> header net/ethernet.h       : yes
Checking <span style="color:#c678dd">for</span> header linux/if_tun.h       : <span style="color:#c678dd">not</span> found
Checking <span style="color:#c678dd">for</span> header netpacket/packet.h   : <span style="color:#c678dd">not</span> found
Checking <span style="color:#c678dd">for</span> NSC location                : <span style="color:#c678dd">not</span> found
Checking <span style="color:#c678dd">for</span> <span style="color:#98c379">'mpic++'</span>                    : yes
Checking <span style="color:#c678dd">for</span> <span style="color:#98c379">'sqlite3'</span>                   : yes
Checking <span style="color:#c678dd">for</span> header linux/if_tun.h       : <span style="color:#c678dd">not</span> found
Checking <span style="color:#c678dd">for</span> program sudo                : /usr/bin/sudo
Checking <span style="color:#c678dd">for</span> program valgrind            : /sw/bin/valgrind
Checking <span style="color:#c678dd">for</span> <span style="color:#98c379">'gsl'</span>                       : yes
Checking <span style="color:#c678dd">for</span> compilation flag -Wno-error=deprecated-d... support : ok
Checking <span style="color:#c678dd">for</span> compilation flag -Wno-error=deprecated-d... support : ok
Checking <span style="color:#c678dd">for</span> compilation flag -fstrict-aliasing... support       : ok
Checking <span style="color:#c678dd">for</span> compilation flag -fstrict-aliasing... support       : ok
Checking <span style="color:#c678dd">for</span> compilation flag -Wstrict-aliasing... support       : ok
Checking <span style="color:#c678dd">for</span> compilation flag -Wstrict-aliasing... support       : ok
Checking <span style="color:#c678dd">for</span> program doxygen                                     : /usr/local/bin/doxygen
---- Summary of optional NS<span style="color:#d19a66">-3</span> features:
Build profile                 : debug
BRITE Integration             : <span style="color:#c678dd">not</span> enabled (BRITE <span style="color:#c678dd">not</span> enabled (see option --<span style="color:#c678dd">with</span>-brite))
Build directory               : build
Build examples                : enabled
Build tests                   : enabled
Emulated Net Device           : enabled (netpacket/packet.h include <span style="color:#c678dd">not</span> detected)
Emulation FdNetDevice         : <span style="color:#c678dd">not</span> enabled (needs netpacket/packet.h)
File descriptor NetDevice     : enabled
GNU Scientific Library (GSL)  : enabled
GtkConfigStore                : enabled
MPI Support                   : enabled
NS<span style="color:#d19a66">-3</span> Click Integration        : <span style="color:#c678dd">not</span> enabled (nsclick <span style="color:#c678dd">not</span> enabled (see option --<span style="color:#c678dd">with</span>-nsclick))
NS<span style="color:#d19a66">-3</span> OpenFlow Integration     : <span style="color:#c678dd">not</span> enabled (Required boost libraries <span style="color:#c678dd">not</span> found, missing: system, signals, filesystem)
Network Simulation Cradle     : <span style="color:#c678dd">not</span> enabled (NSC <span style="color:#c678dd">not</span> found (see option --<span style="color:#c678dd">with</span>-nsc))
PlanetLab FdNetDevice         : <span style="color:#c678dd">not</span> enabled (PlanetLab operating system <span style="color:#c678dd">not</span> detected (see option --force-planetlab))
PyViz visualizer              : enabled
Python Bindings               : enabled
Real Time Simulator           : enabled (librt <span style="color:#c678dd">is</span> <span style="color:#c678dd">not</span> available)
SQlite stats data output      : enabled
Tap Bridge                    : <span style="color:#c678dd">not</span> enabled (linux/if_tun.h include <span style="color:#c678dd">not</span> detected)
Tap FdNetDevice               : <span style="color:#c678dd">not</span> enabled (needs linux/if_tun.h)
Threading Primitives          : enabled
Use sudo to set suid bit      : <span style="color:#c678dd">not</span> enabled (option --enable-sudo <span style="color:#c678dd">not</span> selected)
XmlIo                         : enabled
<span style="color:#98c379">'configure'</span> finished successfully (<span style="color:#d19a66">1.944</span>s)    
</code></span></span>

上面命令完成之后,编译NS3,在终端输入命令:

<span style="color:#2f2f2f"><span style="color:#abb2bf"><code>./waf build
</code></span></span>

该命令会编译整个NS3编译完成之后,在终端会显示如下日志信息:

这里写图片描述

编译完成之后,整个NS3文件大小大约在1.2G左右此后,在此输入构建命令,终端输出信息如下:

这里写图片描述

其中,根据终端中的提示信息,还有四个模块没有编译。这是因为这四个模块并不是必须的。你可以在使用到的时候再添加也不晚。我在做的时候,没有用到过。所以我一直没有添加。

下面运行NS3,测试一下,在终端输入命令:

<span style="color:#2f2f2f"><span style="color:#abb2bf"><code>./test.py -c core
</code></span></span>

这一行命令会测试整个NS3的代码。在终端的日志信息会输出每一个测试用例。这个过程会比较久。

下面运行NS3 Hello代码,在终端输入命令:

<span style="color:#2f2f2f"><span style="color:#abb2bf"><code>./waf --run hello-simulator
</code></span></span>

上面代码完成之后,在终端会输出信息:

这里写图片描述

至此就完成了NS3的安装。

3.eclipse中配置NS3

下面说说如何在日食中配置NS3。

https://www.nsnam.org/wiki/HOWTO_configure_Eclipse_with_ns-3

这个网址是官方给出的如何在蚀中配置NS3的过程。但是这个过程复杂难懂。本来挺简单的事情,我在看这个文章的时候觉得写得太复杂。

下面我一方面截图一方面文字说明,一步步来。

首先,我们进入刚刚下载的NS3目录下,在终端打开,输入命令行:

<span style="color:#2f2f2f"><span style="color:#abb2bf"><code>./waf clean
</code></span></span>

这样做可清除NS3项目的编译。从上面我们知道,编译之后NS3工程有1.2G左右,太大了。但是运行此命令之后,工程要小很多。一会儿再配置蚀中,需要导入该NS3文件。

3.1安装eclipse

可从
http://www.eclipse.org/downloads/packages/eclipse-ide-cc-developers/neon2
这个网址下载对应的eclipse c ++版本。具体安装过程就不多说了。

3.2安装mercurial eclipse插件

百度一下google一下就可以了。

https://www.nsnam.org/wiki/HOWTO_configure_Eclipse_with_ns-3
这个网址里面在说明如何安装这个插件的时候说的不清楚。不用看。记得安装善变的插件就行。

我给一个参考网址:
http:
//wireframesketcher.com/support/install/installing-mercurial-plugin.html可以参考这个进行安装。

3.3新建c ++工程

安装成功之后,随便打开一个命令行终端,输入蚀命令即可启动蚀。

这里写图片描述

打开之后,File-> new C ++ project

这里写图片描述

输入项目工程名字,选择空工程和Linux GCC,next-> Finish即可。

新建工程目录如下:

这里写图片描述

然后在工程上右键鼠标,选择导入...按钮

这里写图片描述

选择文件系统,然后接下来

这里写图片描述

点击浏览按钮,选择我们下载的NS3目录,全选我这里是把ns326目录导入ns327工程然后点击完成按钮。
导入成功之后,工程结构图如下,我已ns326项目实例:

这里写图片描述

3.4配置waf Build

工程右键鼠标,选择属性。

这里写图片描述

选择c / c ++ build-> builder settings 
填写其中的build命令和构建目录。

其中的ns326必须替换成你自己新建的工程的名字。完成之后,选择行为。

这里写图片描述

严格按照图中的选择。然后点击OK。

3.5配置配置外部流道

点击eclipse中的Run-> External Tools-> External Tools Configuration

这里写图片描述

在最左边计划上面有一排按钮,第一个按钮新建配置,点击,会出现图中所示的右边的三个空白行要填写,填写内容如下:

这里写图片描述

姓名随机自己起名字,不重要,自己看得懂就行。
下面的三个位置,工作目录,参数按照上面的填写。
其中上面出现ns3字样的地​​方,需要换成你自己新建的工程的名字。其他的内容按照上面的字符串填写。

位置指定的是waf文件的位置。
工作目录指的是工作目录
.Arguments指定的是参数,字符串参数,基本不用,按照图中书写就行。

完成之后,点击运行按钮,会弹出一个框:

这里写图片描述

这里需要输入一个运行代码文件名,这里输入hello-simulator。
为什么输入这个名字呢?
因为我们上面配置了工作目录,工作目录,这里指定的目录下有一个hello-simulator.cc文件,所以可以运行这个代码。

点击OK按钮,在日食控制台输出信息如下:

这里写图片描述

3.6配置配置Runner

点击eclipse界面上的Run - > Run Configuration

这里写图片描述

左边有一个C / C ++应用。上面的按钮第一个新建一个,就会出现上面图中的右边的界面,主要选项卡下项目为你自己新建的工程文件名。

第二个C / C ++应用为你自己的工程中可以运行的文件,这个工程配置的编译之后的代码都放在建立目录下,这个建目录在你自己的工程目录下,点击浏览按钮,选择可执行文件。然后,选择环境选项卡

这里写图片描述

点击新建...新建一个变量LD_LIBRARY_PATHValue值就是上面的图中所示。记得把NS3换成你自己的工程的名字。

还有最下面有两个选择,勾选第一个追加的环境,原生环境。然后点击RUN按钮就会运行上面的工作目录中配置的对应的编译代码文件,在控制台就会有输出信息。

3.7其他提示

打开任意命令行终端,输入

<span style="color:#2f2f2f"><span style="color:#abb2bf"><code><span style="color:#e06c75">pkg-config</span> <span style="color:#e06c75">--cflags</span> <span style="color:#e06c75">libxml-2</span><span style="color:#d19a66">.0</span>
</code></span></span>

回车

这里写图片描述

然后右键鼠标,属性 - > C / C ++一般 - >路径和符号 - >语言下的GNU C ++点击添加按钮,

这里写图片描述

把命令行输出的在/ usr /包括/ libxml2的复制到图中所有位置。然后重新编译整个工程。

这一步貌似可以不要。我后来新建的工程,没有用这个,也照样运行的良好。可省略。

至此,完成了全部的配置。

4.编译和运行

编译

关于编译NS3工程,有两种方式

一种是命令行模式,在工程目录下,直接输入命令

<span style="color:#2f2f2f"><span style="color:#abb2bf"><code>./waf build
</code></span></span>

即可编译整个项目

这里写图片描述

第二种是使用eclipse->运行 - >外部工具 - >外部工具配置

这里写图片描述

点击右下角的RUN按钮,编译的日志输出会在蚀的控制台输出。

对于这两种方式,我建议使用命令行终端。

因为蚀界面上日志输出,在工程大的情况下,非常卡,耗时耗力,在终端上要好很多。

运行

同样有两种方式。

第一种使用命令行:

这里写图片描述

这种方式可以添加运行参数,其中的HELLO-模拟器是默认工作目录下的代码。如果是想要运行其他目录下的代码,比如示例目录下的代码,这需要把喂模拟器替换成/示例/ XXX / XXX就可以运行了。

第二种方式eclipse界面,运行 - >运行配置选项

这里写图片描述

想要运行什么代码,只需要选择c / c ++ application选项就可以了。

对于以上两种运行方式,个人建议使用蚀界面。简单方便。命令行要输入很多字符,很容易出错。

5.安装python插件

NS3中可以使用Python的开发,不过我没有用过。如果想用的话,可以在日食中安装Python的插件。即使不用蟒蛇开发,安装Python的插件,可以对数据进行处理,也是不错的选择。

点击eclipse界面中的帮助 - >安装新软件

这里写图片描述

选择第一个的PyDev即可。第二个不用选。一路接下来就可以了。

6.后记

上面的过程,大家看着可能感觉很麻烦。确实如此,整个的过程可能花一天的时间才能搞好,并且还是顺利的情况下。如果出现奇奇怪怪的问题,可能要很久时间才能搞好。

不过,其实完成上面的过程一次之后,下面如果在配置就很容易了。

编译就是,/ waf build运行的话直接使用eclipse界面完成。

如果想再新建工程,直接新建C ++工程,然后导入原来的NS3工程就可以。需要做的就是配置CONFIGRATION。

如果想使用NS3最新版本,直接下载NS3最新版本之后,新建C ++工程,然后再导入下载的最新版本文件就可以了,然后再配置的配置就可以了。

最后,就可以苦逼的玩耍了〜


NS3常用命令汇总:

<span style="color:#2f2f2f"><span style="color:#abb2bf"><code>./waf clean

./waf configure --build-profile=debug --<span style="color:#e6c07b">enable</span>-sudo --<span style="color:#e6c07b">enable</span>-examples --<span style="color:#e6c07b">enable</span>-tests./test.py -c core

./waf --run hello-simulator
</code></span></span>

运行程序命令行:

<span style="color:#2f2f2f"><span style="color:#abb2bf"><code>./waf --run "examples/wireless/wifi-simple-learn-tcptest
</code></span></span>

Eclipse的快速操作组合键

ctrl + shift + r:打开资源
ctrl + o:快速大纲
ctrl + e:快速切换编辑器
alt + shift + r:重命名
shift + enter:在当前行之下,添加空白行
ctrl + shift + enter:在当前行之上,添加空白行
alt +方向键:将当前行内容上下移动
Ctrl + T:显示一个类的继承关系
Ctrl + shift + X:转换成大写字母
Ctrl + shift + Y:转换成小写字母


sudo su root权限

磁盘挂载:

<span style="color:#2f2f2f"><span style="color:#abb2bf"><code>sudo ntfsfix /dev/sda7
</code></span></span>

双系统情况下,Ubuntu的打开文件系统时候,有时候不能访问的Windows系统文件,会出现磁盘挂载出现问题的提示,可以使用该命令修复,之后就可以打开窗口系统文件。

不过,要注意sda7其中的7不能照抄。按照自己的ubuntu系统标记改成对应的数字。


没有声音:

登录ubuntu系统是没有声音的,反正我的是没有,开启方法:
root登录后打开终端输入:

<span style="color:#2f2f2f"><span style="color:#abb2bf"><code>pulseaudio --start --<span style="color:#e6c07b">log</span>-target=syslogsudo sh -c <span style="color:#e6c07b">echo</span> “pulseaudio –start –<span style="color:#e6c07b">log</span>-target=syslog” >> /etc/environment
</code></span></span>

只需运行这一次,以后每次启动音量调节都可以使用。

如果每次启动都可以这样:/etc/rc.local中加入pulseaudio --start --log-target = syslog语句。


gnuplot的使用命令:

进入.PLT文件所在的目录,打开终端,输入命令:

<span style="color:#2f2f2f"><span style="color:#abb2bf"><code><span style="color:#e06c75">gnuplot</span> <span style="color:#e06c75">xxxx</span><span style="color:#d19a66">.plt</span>
</code></span></span>

回车即可生成PNG或者EPS图片文件。即可查看效果图。


netanim使用命令:

进入netanim所在的目录下,命令行输入:

<span style="color:#2f2f2f"><span style="color:#abb2bf"><code>./NetAnim
</code></span></span>

回车之后进入NetAnim界面,打开XML文件即可。


Wireshark的使用命令:

进入Wireshark的-2.0.1所在的目录下,命令行输入:

<span style="color:#2f2f2f"><span style="color:#abb2bf"><code>sudo wireshark
</code></span></span>

如果有异常,尝试输入:

<span style="color:#2f2f2f"><span style="color:#abb2bf"><code>sudo ldconfigwireshark
</code></span></span>

查看和杀死进程:

<span style="color:#2f2f2f"><span style="color:#abb2bf"><code>ps -ekill pid
</code></span></span>

如果还杀不死,使用

<span style="color:#2f2f2f"><span style="color:#abb2bf"><code><span style="color:#e6c07b">kill</span> -9 pid
</code></span></span>

 

猜你喜欢

转载自blog.csdn.net/weixin_41213648/article/details/86626124