ent*_*iac 22 linux virtual-machine kernel-modules
我在一个操作系统类。接下来,我们必须做一些修改内核代码的工作。我们被建议不要使用个人机器进行测试(我想这意味着安装它),因为我们可能会写出错误的代码并在我们不应该写的地方重写。为了安全起见,我们可以使用实验室中的机器。
如果我要使用 VM 进行测试,是否可以保护主机系统免受潜在不安全代码的影响?我真的不想被困在学校的系统中,快照会很有用。
如果它仍然是高风险,关于我需要考虑什么来安全测试的任何建议?
我们将使用 linuxmint 之类的东西开始。如果有人想查看当前项目中的内容:http : //www.cs.fsu.edu/~cop4610t/assignments/project2/writeup/specification.pdf
小智 30
开发内核模块的主要风险是,与使用常规代码相比,您的系统更容易崩溃,而且您可能会发现有时会创建无法卸载的模块,这意味着您必须重新启动才能重新加载在你解决问题之后。
是的,VM 非常适合这种开发,而且我在处理内核模块时使用它。VM 很好地将您的测试环境与正在运行的系统隔离开来。
如果您要拍摄和恢复快照,您应该将源代码签入到VM外部的版本控制存储库中,这样在丢弃 VM 的当前状态时就不会意外丢失最新代码。
Hac*_*Saw 14
假设您没有尝试为实际硬件编写驱动程序,这是处理模块的好方法。你可以对工作系统进行快照,如果你搞砸了,就回到快照。
如果可以的话,制作一个完整的 VM 副本,以防万一快照系统比我想象的更奇怪。:)