相关疑难解决方法(0)

如何构建自定义内核?

我想在 Fedora 上测试一个(上游)自定义内核。

目前的计划是:

  • 使用最近的 Fedora 配置作为起点,例如 /boot/config-3.6.6-1.fc17.x86_64
  • 查找构建依赖项
  • 查找正确的 make 命令
  • 执行一些 make 命令
  • cp 生成的 vmlinuz/System.map 到 /boot
  • 调整grub

但是 initramfs...img 文件呢?我如何生成它?

还有什么重要的?

compiling linux-kernel

6
推荐指数
1
解决办法
4782
查看次数

Linux 内核手动构建:生成的二进制文件比预编译的二进制文件大 10 倍

我正在使用 Linux Mint 13 MATE 32 位,我正在尝试构建内核(主要是为了体验和乐趣)。

现在,我喜欢使用与预编译内核相同的配置来构建它,所以首先我从kernel.ubuntu.com安装了预编译内核3.16.0-031600rc6,并成功引导到它。

然后我从kernel.org下载了 3.16.rc6 内核,解压它,将其配置为使用来自现有预编译内核的配置:

$ make oldconfig
Run Code Online (Sandbox Code Playgroud)

它没有问我任何问题,因此,预编译的内核包含所有必要的信息。然后我构建了它(大约花了 6 个小时):

$ make
Run Code Online (Sandbox Code Playgroud)

然后安装:

$ sudo make modules_install install
Run Code Online (Sandbox Code Playgroud)

然后我启动到我手动编译的内核,它可以工作,但启动过程有点慢。但是后来我发现所有的二进制文件(/boot/initrd.img-3.16.0-rc6以及其中的所有*.ko模块/lib/modules/3.16.0-rc6/kernel都比预编译版本大 10 倍左右!说,initrd.img-3.16.0-rc6160 658 665字节,但预编译initrd.img-3.16.0-031600rc6-generic16 819 611字节。每个*.ko模块都同样大。

为什么是这样?我没有为构建指定任何特殊选项(我输入的命令与我上面提到的完全相同)。如何“正确”构建它?

linux compiling linux-kernel

6
推荐指数
1
解决办法
2887
查看次数

如何离线升级 Debian Wheezy 内核?

我在内核版本中使用 Debian ( Wheezy )3.2.0-4 amd64并希望将我的内核升级到最新版本,例如3.13.3 stable,但我的 Debian 操作系统没有互联网连接。我已经安装了“usb-modeswitch”和“usb-modeswitch-data”软件包,但是 Debian 没有检测到我的 3g-modem-usb 加密狗。

我已经3.13.3 tar.xzkernel.org. 如何在没有互联网连接的情况下从 3.2 编译和升级到 3.13.3?

kernel debian

5
推荐指数
1
解决办法
1万
查看次数

如何创建内核源码树?

我正在读一本关于在 Linux 上创建驱动程序的书,我对 Linux 没有太多经验,我之前安装过很多发行版,但我一直使用 Windows 作为我的主要操作系统。

我知道一些C,但我主要是一名C#程序员。

我希望学习(为了好玩)驱动程序编程,并希望它能教我一些有关 Linux 的知识并“深入了解它”。

我的第一个障碍是找到一个具有标准2.6.x内核的发行版。我试图找到一个,但3.x现在它们都已经过去了。有人知道适合此类任务的吗?

这本书还说我应该从中获取一个标准内核kernel.org并构建一个源代码树。我不知道这意味着什么。

这是书: http: //oreilly.com/openbook/linuxdrive3/book/

drivers kernel tree distributions

3
推荐指数
1
解决办法
3273
查看次数

标签 统计

compiling ×2

kernel ×2

linux-kernel ×2

debian ×1

distributions ×1

drivers ×1

linux ×1

tree ×1