本学期选择了游伟和黄建军老师的操作系统内核分析与安全,目前已经试听了第一节课。这门的授课老师建了一个网页用于收录本次课程的幻灯片材料,录屏材料,以及软件安装包等一系列课程用得到的材料。对于学生而言,这是一门既硬核能够学到东西的金课,同时也是一个友好到不会难到让人无法下手的课。出于上述原因,博主打算认真学习这门课,并开通系列博客,记录学习心得。本篇博客介绍了本次课程基础实验环境搭建。
实验环境搭建
本次课程的实验需要在机器上安装一个虚拟机,并在虚拟机中使用Qemu以模拟不同架构的计算机环境。准备一台win10机器,在win10机器上安装16.2版本及以上VMWare workstation,然后打开提供的虚拟镜像,便可以在老师提供的环境里进行试验。(ps:这门课可以说是十分良心了,环境的问题老师已经基本解决了)。
我安装的是17版本的VM,下载方法参考知乎帖子,这个帖子提供了VM的安装文件和序列号。安装好VM后,从课程网站上下载虚拟环境镜像。在VM中点击文件
>打开
>,选择解压后文件夹里的.vmx文件。
接下来需要修改属性共享文件夹的路径,CD/DVD SATA选择自动检测,内存大小改为合适的大小(ps:计算机的内存一半比较合适:如果你的电脑是16G内存,那这里设置8G就可以)
如上,课程实验环境搭建完毕,可以尝试第一堂课的实验。
实验心得
- 分清GuestOS和HostOS,在老师提供的运行指令里会显示当前运行指令到底是在Host还是在Guest上运行,要注意区分。Guest指:Qemu环境,Host指:VM Ubuntu的环境。
- 实验中遇到端口占用的情况,可以调用
netstat -a | grep [port_id]
指令查看占用端口的pid并kill掉它。 - 老师对这个部分进行了详细的介绍:如何运行内核与编译内核将贯穿后面的实验。(ps:课程本身就提供了一些脚本,简化了学生上手的难度,学生只需要按照老师规定的方法调用工具即可。)
一些额外设置
课程默认了同学们使用win10电脑,博主在Mac电脑上尝试了安装VMfussion并安装实验环境虚拟镜像并未成功。分析原因是:老师提供的环境只针对x86_64架构。所以使用M系列芯片的苹果用户只能另谋他法。
我的解决方案是:在win10台式机上安装17版本的VM,然后使用teamviewer链接这台台式机。这需要苹果电脑和win10台式机都安装teamviewer工具。这款工具对于非商用用户是免费的,下载安装秩序从官网上下载即可。
只需要输入id和密码即可以远程连接win10主机。
参考资料
课程官网上给出了所有资料,老师推荐了4本参考资料。
上半学期会主要参考前3本书,下半学期讲到安全时才会用到第四本书。前三本书我浅浅翻了一下前三本书:第一本书会薄一些,第二本书和第一本书相比厚了许多(1000页的厚书),第三本书网上目前还没找到免费下载的版本,相对会新一些,而且据老师说会没那么系统一些。
Linux内核设计与实现
链接:https://pan.baidu.com/s/1taFpULWiOJmk9hmu-3ZURg
提取码:3mjb
深入Linux内核架构
链接:https://pan.baidu.com/s/1kWA_bqyQ4iqUU0yo2Z2SXg
提取码:021w
内核漏洞的利用与防范
链接: https://pan.baidu.com/s/1Tij-UbyeKn3TToeliwMq9g
提取码: ajqg