您尚未登录。

#1 2016-11-03 04:17:16

cevin
作死小王子
所在地: 帝都
注册时间: 2016-11-03
帖子: 16
个人网站

更新linux内核时是不是当前没在使用的设备的驱动会被忽略?

比如打印机,更新内核时如果打印机没插着更新完了是不是打印机的驱动就没了。

离线

#2 2016-11-03 10:19:57

zsrkmyn
lazy...
注册时间: 2013-05-05
帖子: 331

Re: 更新linux内核时是不是当前没在使用的设备的驱动会被忽略?

没这回事。驱动要么作为 modules 在内核之外,通过 modprobe 之类的方式加载,要么在编译内核前由 make *config 指定编译进内核。你用包管理器装的内核都是编译好的。

离线

#3 2016-11-03 11:28:36

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 8,956
个人网站

Re: 更新linux内核时是不是当前没在使用的设备的驱动会被忽略?

是没了,不是被忽略了。更新内核之后旧内核的模块全部被删掉了,但是重启之前还是运行的旧内核,新版本的模块不一定能用(好像第三位版本号升级时没关系的)。

官方 bugs 列表里有一个关于此的 bug,还在争论中……

离线

#4 2016-11-03 14:03:58

cevin
作死小王子
所在地: 帝都
注册时间: 2016-11-03
帖子: 16
个人网站

Re: 更新linux内核时是不是当前没在使用的设备的驱动会被忽略?

依云 说:

是没了,不是被忽略了。更新内核之后旧内核的模块全部被删掉了,但是重启之前还是运行的旧内核,新版本的模块不一定能用(好像第三位版本号升级时没关系的)。

官方 bugs 列表里有一个关于此的 bug,还在争论中……


soga.

离线

#5 2016-11-03 18:57:48

zsrkmyn
lazy...
注册时间: 2013-05-05
帖子: 331

Re: 更新linux内核时是不是当前没在使用的设备的驱动会被忽略?

依云 说:

是没了,不是被忽略了。更新内核之后旧内核的模块全部被删掉了,但是重启之前还是运行的旧内核,新版本的模块不一定能用(好像第三位版本号升级时没关系的)。

官方 bugs 列表里有一个关于此的 bug,还在争论中……

这个问题是有点烦人的,每次更新完内核就必须重启系统,否则就各种东西都不能用了……记得以前用 Ubuntu 的时候会保留老的内核,但是必须手动清理。
其实之前我还考虑过怎样设计能让内核更新时保留新老两个内核以及各自模块,重启之后再自动清理老内核。但是内核使用包管理器管理,安装新内核必然会删除旧内核 sad

离线

#6 2016-11-03 20:49:33

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 8,956
个人网站

Re: 更新linux内核时是不是当前没在使用的设备的驱动会被忽略?

zsrkmyn 说:
依云 说:

是没了,不是被忽略了。更新内核之后旧内核的模块全部被删掉了,但是重启之前还是运行的旧内核,新版本的模块不一定能用(好像第三位版本号升级时没关系的)。

官方 bugs 列表里有一个关于此的 bug,还在争论中……

这个问题是有点烦人的,每次更新完内核就必须重启系统,否则就各种东西都不能用了……记得以前用 Ubuntu 的时候会保留老的内核,但是必须手动清理。
其实之前我还考虑过怎样设计能让内核更新时保留新老两个内核以及各自模块,重启之后再自动清理老内核。但是内核使用包管理器管理,安装新内核必然会删除旧内核 sad

包管理器需要支持一个 KeepFiles 参数,然后设个标志,下次启动时跑个脚本去清理需要删除的内核。

离线

页脚