如何重建 OpenSuse 内核?

如何重建 OpenSuse 内核?

我正在尝试安装一些 wifi 卡所需的补丁和驱动程序,但收到一条错误消息:“使用 CONFIG_LIBIPW=m 构建内核”。

我该如何重新编译内核来添加它?

我可以在不下载新内核包的情况下做到这一点吗?(我的意思是重新编译现有的内核)

答案1

可以这样做,但系统崩溃的可能性不小。所以要小心。

  1. 安装kernel-source
    1. rug in kernel-source
    2. 或者打开Yast -> 软件管理。安装“内核源”包。
  2. 以 root 身份打开命令提示符
  3. 到 /usr/src/linux
  4. cp /proc/config.gz
  5. gunzip config.gz
  6. cp config .config
  7. 在所选编辑器中打开 .config
  8. 查找 CONFIG_LIBIPW 行

笔记:您可能会发现它已经设置为“m”。在这种情况下,现在停止因为其他的事情也是你的问题。

  1. 将其从 更改nm
  2. 保存 .config
  3. make prepare
  4. make oldconfig
  5. make M=/drivers/net/
  6. make install
  7. 重启

答案2

地毯早已不见踪影。正确的做法是:

  1. 获取一些源代码。有很多方法,例如从 SUSE 内核 git 树中提取,但这当然是下载。zypper in kernel-source,前提是您同意,它可能会在某处下载。

  2. rsync -HPSav /usr/src/linux-2.the version you chose/ ~/linux/

  3. 进入目录并使用make cloneconfig/menuconfig/etc。不要运行 /usr/src/ 或 root 中的命令,因为这可能会破坏该内核的 KMP 构建。make prepare是多余的,就像在 menuconfig/etc 已经运行时 oldconfig 一样。

  4. make M=/drivers/net是不够的,因为System.map需要先存在。只需运行make,否则可能会制造不完整的对象。

  5. make install似乎仍在摆弄 LILO,几乎没有人使用这个 make 目标。手动复制内容。

相关内容