Yo! 服务器

服务器问题集锦,包括 Linux(Ubuntu, Centos,Debian等)和Windows Server服务器

在重新启动时select制作并安装新的Linux内核和驱动程序有风险吗?

通常的做法是在源代码中提供Linux内核驱动程序(内核对象KO),并在目标计算机上构build和安装它们。 例如Nvidia的显示驱动程序,Oracle VirtualBox guest加载项驱动程序就是这样安装的。 通过系统更新接收新版本的内核(包含适当的头文件)也很常见。 这需要重新构build和重新安装KO,否则更新后设备将停止工作。 在我们的产品安装启动脚本中,我们希望添加一个步骤来在每次启动时安装KO。 用户可以select退出,并且必须手动构build和安装KO。 设备驱动程序与USB设备通信。 相关细节:1.当安装新内核时,实际的重新构build只会发生一次,因为make不会重新构build已经存在并且是最新的文件。 2.重build驱动程序需要大约2秒的时间,并且在正常启动期间(而不是在内核更新之后)需要几毫秒的时间来跳过构build。3.如果构build失败,不应该使系统崩溃或使其不稳定,但是我们的硬件设备将无法工作。 4.一些发行版可能允许注册钩子,对某些事件执行操作,如内核更新。 但是,我们正试图实现一些能够以统一的方式在大多数分布上运行的东西。 我们的安装程序是脚本+ tar或脚本+ rpm。 不幸的是,对于这个版本,我们没有带宽来为所有发行版本准备本地软件包(例如debian风格)。 问题:1.这是一个可接受的解决scheme? 如果没有,为什么? 2.与这种方法相关的潜在风险是什么? 3.启动过程中正确/首选的地点是什么? rc.local或脚本在init.d或其他? 目标是使其使用相同的方法(如果可能的话)在大多数分布上工作。