安装新内核(通过命令行)作为旧内核的一面

安装新内核(通过命令行)作为旧内核的一面

我需要在我的 fedora/ubuntu 机器(x86)中安装另一个内核(2.6.34),并且我需要在启动菜单中显示新旧启动选项(新旧内核)

我已经下载了新的内核,我需要编译它并构建它。

我怎样才能从头到尾完成这件事?

答案1

好的,现在我们继续讨论如何编译和安装新内核:

首先,所有这些的依赖关系是:

sudo apt-get install build-essential makedumpfile

加上特定内核的依赖项,对于存储库中的内核,您可以执行以下操作:

sudo apt-get build-dep linux-image-"kernel number"

对于你的内核,我不知道,也许它们相同,也许它们不同,你应该在 Google 上搜索信息,这可能取决于你如何配置你的内核。

此后,我建议您在主文件夹中创建一个工作地方:

mkdir src
cd src

您可以在此处解压缩内核或从存储库中获取内核:

apt-get source linux-image-"kernel number"

现在我们要在解压后的文件夹中进行操作:

cd linux-"kernel number"

在此之后,您将需要一个工具来编辑您的内核配置,有两种不同的工具,要使用它们,您必须安装它们的依赖项:

For xconfig = sudo apt-get install qt3-dev-tools libqt3-mt-dev
For menuconfig = sudo apt-get install libncurses5 libncurses5-dev

我建议你使用 xconfig,它更易于使用。要使用它,请输入:

xconfig = make xconfig
menuconfig = make menuconfig

根据需要配置内核并保存配置。如果不需要,应禁用“内核调试 (DEBUG_KERNEL)”下的“内核调试 (DEBUG_KERNEL)”,因为这将缩短编译时间。

要编译,请输入:

CONCURRENCY_LEVEL=3 sudo make-kpkg --initrd --append-to-version=-something kernel-image kernel-headers

将“CONCURRENCY_LEVEL=3”替换为您的处理器核心数 +1,这将使编译速度更快。将“--append-to-version=-something”替换为您要附加到内核名称的内容。

等待很长时间,具体取决于您的计算机,可能需要几个小时。

当它完成后,如果没有发生任何不好的事情,你将在父文件夹中创建两个漂亮的 Debian 包,安装它们:

cd ..
sudo dpkg -i linux-image-"kernel number".deb
sudo dpkg -i linux-headers-"kernel number".deb

不要忘记更新 grub:

sudo dpkg-reconfigure grub-pc

重新启动新的内核,如果一切正常,您就完成了。

答案2

你真的需要自己编译吗?主线内核构建适用于 Ubuntu。还有关于构建你自己的内核

答案3

安装新内核的步骤如下。我也遇到了一些问题,但我想分享如何构建新内核。

  1. 下载最新内核

  2. 将其解压到任意目录中。将其解压到您的主文件夹中很有用。

  3. 转到该文件夹cd /home/linux/linux-{version}/

  4. 现在创建一个新的配置文件。为此,请使用以下命令之一:

    • make config,这将给你配置文件

    • make defconfig,这将为你提供默认配置文件

  5. 然后通过以下命令检查配置文件是否适合您的内核:

    make oldconfig
    

    如果您的配置文件中没有某个选项,那么它将为您提供选择选项的选项<Y/n/m>。大写字母表示这是默认选项。您Enter只需按一下即可选择该选项。

  6. make或者make -jn其中n2* 核心处理器数量

  7. make modules_install

  8. make install

重新启动系统并选择新的内核选项。

相关内容