Windows下安装Ubuntu 14.04(/14.10)及Linux下安装配置NS-3

   这五天折腾Linux,并在Linux系统下安装NS-3网络模拟器,中间曲折,遇到各种奇葩问题,所幸一一解决,现将遇到的问题及解决方法记录下来,以便后续需要查用。

   首先是在window下安装Ubuntu。以前没有装系统的相关经验,所以在这一项上花费了近两天的时间,也是学到了很多。在百度上检索“在Windows下安装Linux”,会有很多相关的检索结果,总结安装方法主要有以下三种:1、在虚拟机下安装Linux(大概就是先下个VMware虚拟机和Ubuntu的镜像文件,然后新建虚拟机,再安装客户机操作系统,即Linux);2windows下硬盘安装(参考网址:http://www.linuxidc.com/Linux/2014-04/100369.htm);3、制作U盘系统盘,利用U盘安装(参考网址:https://jingyan.baidu.com/article/c275f6bacc3326e33c756743.htmlhttps://jingyan.baidu.com/article/60ccbceb18624464cab197ea.html)。由于以前曾经学DSP时曾经装过虚拟机,并在虚拟机下装过XP,当时频繁进入虚拟机操作导致我的电脑卡到爆,鉴于以后的主要工作都是在Linux下进行,我果断放弃了这个方法,主要尝试了第二和第三种方法。先说第二种方法吧,具体步骤在参考网址上说的挺清楚,这个方法需要注意的就是在easyBCD中选NeoGrub配置这项,网站上提到的

判断电脑上的第一个盘符是不是C盘,右键计算机管理磁盘管理,如图1-1所示,看下边的这行,我的笔记本上第一个盘符就是C盘,而对于Lenovo的机子(我实验室的台式机就是),还存在一个OEM分区(装的是备份的系统和驱动,就是联想的一键还原功能,当电脑崩溃到启动都启动不了的情况可以按电脑键盘上的功能键直接还原),它的第一个盘符就是SYSTEM_DRV,针对这种情况,NeoGrub配置是就要将(hd0,0)改为(hd0,1)。

 Windows下安装Ubuntu 14.04(/14.10)及Linux下安装配置NS-3

1-1

   再谈利用U盘制作系统盘,安装的方法,我个人觉得这个方法比较简单,出错可能性小一些,推荐使用,只是U盘需要格式化,在格式化之前记得备份U盘中对你有用的数据。主要步骤也是按照推荐网站上的来,需要注意的就是分区时通过压缩卷划分出一个可用空间就行,不要新建卷;另外,插入U盘,重启笔记本启动时,有些电脑是按F12,有些电脑是F1Delete键进入Bios界面,这个要尝试,或者重启之前先百度电脑的牌子,确定是哪个键,我的经验是:笔记本Dell,插入U盘后,它会默认进入Bios界面;台式机Lenovo,在开机出现Lenovo字样时,不停地重复按F12,进入Bios界面,如图1-2所示:

Windows下安装Ubuntu 14.04(/14.10)及Linux下安装配置NS-3

1-2

USB KEY下有两个选项,进入Legacy或进入UEFI安装都可以,这是两种不同的引导方式,简单来说,Legacy执行的是传统Bios的运行流程:开机Bios初始化Bios自检引导操作系统进入系统,而UEFI的运行流程则是:开机UEFI初始化引导操作系统进入系统,与Legacy相比,UEFI省去了Bios自检的步骤,因而节省了大量的时间,大大加快了平台的启动速度,所以,在这个选项下选择UEFI,然后进入Ubuntu的安装界面。接下来,按步骤操作,在手动给Linux分盘符的时候,建议参照https://jingyan.baidu.com/article/60ccbceb18624464cab197ea.html(除了分盘符和制作U盘启动盘参考这一网址外,其他步骤参考https://jingyan.baidu.com/article/c275f6bacc3326e33c756743.html),上边对于分几次区,每次分区设置多大的空间,以及分区位置、分区类型、挂载点等都做了详细说明,操作过程中我遇到的主要问题就是先分了主分区和交换空间之后,明明空闲处还有足够的剩余空间,但是步骤点上的+”号却变灰不能点击使用了,这个原因我没有搞清楚,后来在百度上搜索了解决方法,那就是先分逻辑空间,把三个逻辑分区都分好后,再分主分区,这样就成功对Linux设置分区了

    现在回过头来看,其实在一台机子上装好Linux系统,我在没有经验的情况下,需要的时间大概是下午两点到晚上八点,也就是六个小时。第二天,我又在实验室上的台式机上,想着用同样的U盘装,可是遇到了各种问题。先是分区的问题,台式机是联想的机子,打开磁盘管理时,发现它的分区如图2-1所示:Windows下安装Ubuntu 14.04(/14.10)及Linux下安装配置NS-3

2-1

仔细观察就可以发现,当前的台式机上已经存在四个主分区了(那个E不管,是我插入的U盘),硬盘分区的话,系统最多只能有四个主分区,再有多的空间也是不能用的,只能浪费,也就是像上图显示的那个100G黑色的未分配空间,但是系统可以有多个逻辑分区,想要全部利用磁盘空间的话,基本上就是划分1-3个主分区,剩下的划分为一个扩展分区,再从扩展分区下划分多个逻辑分区,所以我下一步要做的工作就是先把图中那个未分配的黑色空间和D盘合并(也可以不合并,直接将其转化为绿色的可用空间,我合并的目的是想从D盘划分出大于100G的空间给Ubuntu)。未分配的空间只能与其左侧的盘合并,方法如下:鼠标单击图中的D盘,点右键,选择扩展卷,在最下面,“选择空间量”里输入数字。默认就是最大的可利用的剩余空间,可以不用改,然后,点下一步,再点完成就可以,这一步昨晚之后,这个100G的未分配空间就与D盘合并了,但是显示的还是D盘为主分区,接下来要做的就是将主分区划分可扩展分区,可以用分区助手(百度有方法介绍),也可以用命令行,我选择的是后者,步骤如下:1)打开开始菜单,在最下边搜索框中输入命令cmd,运行cmd.exe程序;2)运行命令窗口后,输入命令“dispart”,然后回车;

3)在DISKPART>后面输入select disk 0 选择我们的硬盘,然后回车,如果电脑上有好几块硬盘的话,可以输入select disk X,X代表你的那个硬盘通常为数字0,1,2,3,4等不过一般电脑只有一块硬盘输入0即可

4)输入命令“create partition extended”创建扩展分区,然后回车,这样系统会自动把主分区后的剩余空间全部划分为扩展分区。

5)完成以后,可以再扩展空间上再划分出E、F盘等,为了装Ubuntu,我磁盘管理中的状态如图2-2所示:

Windows下安装Ubuntu 14.04(/14.10)及Linux下安装配置NS-3

2-2

分区完成以后按上边提到的步骤就可以装Ubuntu了。

   把笔记本和台式机上的Linux系统都装好后,和同学讨论时,他问我,为什么要装14.10版本的Ubuntu,是不是我们实验室有特殊要求?于是,我去搜索了Ubuntu各版本的区别,拿14.10来说,14为主版本号,表示该版本是2014年更新的,而10为次版本号,表示10月份更新,一般来说,Ubuntu分为长期技术支持版(LTS)和普通版,我一开始下的14.10就是普通版,也可以说是最新版吧,LTS版每两年出一个,相比其他版本,维护时间更长,相对来说也更稳定,它的更新更多的是Bug和漏洞的更新,基本上不怎么升级软件的版本,而非长期支持版本则会不断地升级版本,比如14.10升级到16.10,就类似从Windows 7升级到Windows 10,一般没有特别要求,推荐选LTE版(此版本号为04),据我同学说,10版使用apt-get命令时还有可能出问题,于是,为了避免以后有可能出现的问题,我又把下好的Ubuntu 14.10卸了,重新装了个14.04(就是爱折腾啊),这个时候先把给Ubuntu 14.04的分区删除(其实不删应该也没事,会覆盖,先删除比较保险),也把easyBCD中加载的引导项删除,再重复同样的方法,下个14.04版本的Ubuntu,加载到U盘上。同样的过程操作得很顺利,直到我要安装的时候,提示界面告诉我,这台计算机似乎没有安装操作系统!这就把我吓到了,我之前装Ubuntu 14.10的时候,提示语是:检测到您的计算机已经安装了windows系统,您准备怎么做?我就怀疑是不是因为直接把Ubuntu 14.04的分区删掉了,导致现在它检测不到我的win,但是选其他选项重复之前的步骤的时候是可以看但windows的分区的,而且也能正常地给Linux分区,这个时候一直不敢下手安装,害怕把自己的windows也搞没了,中间百度了很多,推荐网址:http://tieba.baidu.com/p/4215293978(我的问题和上边提到的也不太一样),最后实在没办法,把台式机的数据备份,先在其中一台电脑上做实验,结果,发现这个提示没什么影响,Ubuntu 14.04正常安装了,所以,总结一句话就是,装系统一定要胆子大,做好数据备份,大不了就是重装!

Windows下安装Ubuntu 14.04(/14.10)及Linux下安装配置NS-3

   对了,在这还想提一下Linux系统和Windows的时间设置问题,WindowsUbuntu默认的时间管理方式不一样,Ubuntu默认时间是把BIOS时间当成GMT+0时间,也就是世界标准时,而我国在东八区(GMT+8),所以如果你的Ubuntu位置是中国的话你系统显示的时间就是BIOS时间+8小时,而Windows认为BIOS时间就是本地时间,所以如果Ubuntu系统上的时间正确,那么进入Windows系统,就会发现,时间总是比实际时间晚8个小时,具体修改方法如下:在Ubuntu系统下,Ctrl+Alt+T打开终端,输入命令sudo vi /etc/default/rcS,键入i,切换到插入模式,UTC=yes这一行,改成UTC=no,按Esc键退出键入模式,再按:wq保存并关闭,就可以同时正确设置Ubuntu和Windows下的时间了。

   将Linux系统装好以后,就是在Linux下安装网络模拟器NS-3的问题了,这个软件做网络协议仿真的时候回用到,用不到的就自动忽略吧。安装和配置主要参考的是图3-1所示的这本书:具体步骤自书中14页开始按步就班地做即可,在这里我指出书中的几点错误,18页,解压命令应为tar -jxvf ns-allinone-3.16.tar.bz219页,编译build.py文件时,应输入命令sudo ./build.py --enable-examples --enable-tests20页,第三个命令应为[[email protected] ns-3.16]$ sudo ./waf -d optimized --enable-examples --enable-tests configure21页最后一行命令为sudo ./waf --run scratch-simulator23页,在Ubuntu下安装eclipseC/C++语言插件CDT的命令应为:sudo apt-get install eclipsesudo apt-get install ecplise-CDT,除此之外,eclipse也可以直接从网上下载安装包保存,不一定非要通过命令行下载,建议下载安装NS-3前先熟悉一下Linux的常用命令,也方便解决问题。

Windows下安装Ubuntu 14.04(/14.10)及Linux下安装配置NS-3

   除此之外,下载的ns-3的版本不一样,可能遇到的问题也不同,比如我下载ns-3.16时遇到的问题,我要进入源目录去修改源代码,而下载安装ns-3.25时就没有遇到类似的问题,所以遇到问题时,要注意查看报错的项,耐心解决。

   最后还要说两个重要的问题,一个是在ns3中新建一个空工程,然后将解压后的ns-3.25文件中的文件全部复制到刚才建立的工作目录***意,这里是要将安装包ns-allinone-3.25解压后得到的解压缩文件ns-allinone-3.25中的一个名为ns-3.25文件夹中的所有文件复制到新建的这个工程ns3文件夹下,而不是直接将解压后的ns-allinone-3.25复制到ns3工程下,就是因为忽略了这个细节,我后来编译配置了好久都没有成功,还重新安装了各种安装包,很浪费时间。二是,在eclipse中编译文件时,先要去ns3这个工程路径下查看有没有带锁的,没有权限查看的文件,要在终端敲入sudo chmod path将文件解锁,最好的办法是在root下操作系统,以root权限操作系统的方法如下:

1)root用户设置密码打开终端输入以下命令sudo passwd root设置root密码输入当前用户密码,然后输入两次设置的root密码;

2)输入命令:sudo vi /usr/share/lightdm/lightdm.conf.d/50-ubuntu.conf,打开配置文件,在打开的文件中输入:

[SeatDefaults]

user-session=ubuntu

autologin-user=root

greeter-session=unity-greete

greeter-show-manual-login=true

allow-guest=false

3)重启系统,在登录界面就可以看到加入的root用户登录的选项,在用户名中输入root,输入刚才设置的密码,就可以使用root权限操作系统了。

   总结一句,Linux系统中,桌面环境提供的任何系统工具实际上都是基于系统的基本命令实现的,系统强大的功能完全表现在命令行中,所以学习Linux一定要熟悉命令行的操作,我也是刚入门,特地准备了一本本子记录用过的命令,方便以后使用;除此之外就是遇到问题一定要有耐心,多百度!!!这几天折腾,发现百度实在是太强大!!