趣谈 Linux 操作系统
刘超
前网易杭州研究院云计算技术部首席架构师
84364 人已学习
新⼈⾸单¥68
登录后,你可以任选4讲全文学习
课程目录
已完结/共 72 讲
趣谈 Linux 操作系统
15
15
1.0x
00:00/00:00
登录|注册

60 | 搭建操作系统实验环境(上):授人以鱼不如授人以渔

操作系统的理论部分我们就讲完了,但是计算机这门学科是实验性的。为了更加深入地了解操作系统的本质,我们必须能够做一些上手实验。操作系统的实验,相比其他计算机课程的实验要更加复杂一些。
我们做任何实验,都需要一个实验环境。这个实验环境要搭建在操作系统之上,但是,我们这个课程本身就是操作系统实验,难不成要自己 debug 自己?到底该咋整呢?
我们有一个利器,那就是 qemu 啊,不知道你还记得吗?它可以在操作系统之上模拟一个操作系统,就像一个普通的进程。那我们是否可以像 debug 普通进程那样,通过 qemu 来 debug 虚拟机里面的操作系统呢?
这一节和下一节,我们就按照这个思路,来试试看,搭建一个操作系统的实验环境。
运行一个 qemu 虚拟机,首先我们要有一个虚拟机的镜像。咱们在虚拟机那一节,已经制作了一个虚拟机的镜像。假设我们要基于 ubuntu-18.04.2-live-server-amd64.iso,它对应的内核版本是 linux-source-4.15.0。
当时我们启动虚拟机的过程很复杂,设置参数的时候也很复杂,以至于解析这些参数就花了我们一章的时间。所以,这里我介绍一个简单的创建和管理虚拟机的方法。
CPU 虚拟化那一节,我留过一个思考题,OpenStack 是如何创建和管理虚拟机的?当时我给了你一个提示,就是用 libvirt。没错,这一节,我们就用 libvirt 来创建和管理虚拟机。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《趣谈 Linux 操作系统》
新⼈⾸单¥68
立即购买
登录 后留言

全部留言(19)

  • 最新
  • 精选
  • Gnayils
    1. apt安装qemu-kvm,使用/usr/bin/kvm作为domain.xml中的emulator, 然后更改domain节点的type值为kvm,这样虚拟机的速度会更快。 2. 创建ubuntutest.img文件时,size至少30G,否则kernel的编译中间结果很大,会造成编译失败。 3. 将虚拟机的内存改大一些,否则在make install后使用带有debug info的内核启动系统时,unpack initramfs会失败。

    作者回复: 赞,实战派

    3
    8
  • LDxy
    可以在虚拟机里运行虚拟机吗?

    作者回复: 可以,就是慢的一塌糊涂了

    1
  • leslie
    发现老师的课如老师自己介绍的学习方法一样:不是一遍就能学懂的,跟着做跟着反思;要第二遍或者第三遍才能理解和明白老师所讲所授的知识。 看来所谓的第一遍或者第二遍第三遍只是大概:其实应当是三个阶段/层次;努力坚持努力学习,希望多遍之后能尽力掌握其6-8成。

    作者回复: 是的,加油

    1
  • 李海涛
    在定义xml文件时, <emulator>/usr/bin/qemu-system-x86_64</emulator>里面为什么是/usr/bin/qemu-system-x86_64?我看还有的文档说用 <emulator>/usr/bin/kvm</emulator>, 或 <emulator>/usr/libexec/qemu-kvm</emulator>? 请问这几个的区别?各个的适合使用场景?谢谢!

    作者回复: ls一下,看是不是指向同一个文件,不同系统安装完,名字不一定一样

  • 许童童
    跟着老师一起动手,实战。

    作者回复: 动手好,印象深刻

  • 郭江伟
    请问下老师 每次修改内核都需要全部编译吗? 可以部分编译吗?

    作者回复: 如果是模块,可以部分编译,然后加载,核心的部分,就需要全部编译了

  • 大王叫我来巡山
    当年上课的时候只是给了个文档,让增加系统调用,其实并不明白,终于看明白了

    作者回复: 自己尝试一把

  • Marshall
    后期准备跟着老师动手一下

    作者回复: 一定要动手哦

  • 王建峰
    希望我的记录能帮助到各位同学 Ubuntu20.04上搭建操作系统实验环境:https://blog.csdn.net/feit2417/article/details/116504341
    1
    10
  • 一栋人
    如果使用 virt-install 加上 "--graphics none --extra-args='console=ttyS0'" 就能直接 virsh console 上了。
    2
收起评论
显示
设置
留言
19
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部