Debian/Debian 与内核

来自站长百科
跳转至: 导航、​ 搜索

Debian | Debian安装 | Debian使用 | Debian系统升级 | Debian常见问题

可以不考虑 Debian 因素编译内核吗[ ]

可以.

需要注意的是: Debian 的 C 库文件是在最新的 stable 发行版的 kernel headers 基础上构建的, 如果你碰巧需要使用比 stable 发行版的 kernel headers 更高版本编译一个程序, 那么要么升级包含headers的软件包(libc6-dev), 要么从新版的 kernel 中解压出 headera 来使用, 如果 kernel 源文件在 /usr/src/linux 目录下, 那么编译时需要在命令行加入

-I/usr/src/linux/include/.

Debian 的编译内核工具[ ]

如果用户想(或必须)定制内核, 建议下载使用 kernel-package 软件包, 其包含构建 kernel软件包的脚本, 并提供了创建 Debian kernel-image 软件包, 在 kernel 源文件的最上层目录运行命令:

make-kpkg kernel_image

要获取帮助, 运行

make-kpkg --help

或者查询 make-kpkg(1).

如果没有现成的 kernel-source-version 软件包(这里 "version" 指 kernel 版本号), 则用户必须自己到 Linux 站点上下载新版的 kernel(或者需要的那个版本)..

在 /usr/share/doc/kernel-package/README.gz 处有 kernel-package 的详细使用说明. 主要步骤:

  • 将 Kernel 源代码解包, 切换到新建目录.
  • 用下面(任一)命令修改 kernel 配置:
  1. make config (命令行界面).
  2. make menuconfig (一个基于 ncurses 的菜单界面). 注意必须安装了 libncurses5-dev 软件包.
  3. make xconfig (X11 界面). 需要安装相关的 X 和 Tcl/TK 软件包.

置完成后, 就会在 kernel 源文件的最上层目录生成一个 .config 文件.

执行命令: make-kpkg -rev Custom.N kernel_image, N 指用户指定的版本数字. 就会生成一个修正版为 Custom.1 的新 Debian 包, 例如 Linux 2.2.14 内核,就会是kernel-image-2.2.14_Custom.1_i386.deb.

安装生成的软件包.

  • 运行 dpkg --install /usr/src/kernel-image-VVV_Custom.N.deb 安装内核. 安装脚本会:
  • 运行启动加载程序, LILO(如果安装了的话),
  • 安装放在 boot/vmlinuz_VVV-Custom.N 下定制的 kernel, 并生成相应的符号连接.
  • 提示用户制作启动软盘, 启动盘仅包含基本内核.
  • 如果使用第三方启动加载程序, 如 grub 或 loadlin, 把这个影像考到相应位置(如 /boot/grub 或 MS-DOS 分区).

如何制作启动软盘[ ]

制作启动盘需要用到 Debian 的 boot-floppies 工具, 该软件包位于 Debian FTP 的 admin 目录下. 该软件包的脚本会生成一个 SYSLINUX 格式的启动盘, 对于那些使用 MS-DOS 格式化的软盘, 其主引导扇区的记录将被修改为直接引导 linxux(或在 syslinux.cfg 中定义的其它系统). 这个包中的其它脚本还可以制作应急盘, 甚至重建基本系统.

安装 boot-floppies 后可以在 /usr/doc/boot-floppies/README 中找到更详细信息.

Debian 下的模块管理[ ]

Debian 的 modconf 软件包提供了一个 shell 脚本(/usr/sbin/modconf)用于完成模块的配置.该脚本使用菜单界面, 用户通过它给出系统中可挂载设备驱动的有关细节, 它再将这些细节信息生成 /etc/modules.conf 文件(其中列出了别名 aliases 和其它参数, 用于连接各种模块), 该配置文件用来加载 /etc/modutils/ 目录下和 /etc/modules(其中列出了需要在系统启动时加载的模块)目录的相关模块.

新版的配置帮助文件可为构造自定义内核提供帮助, 同样, modconf 软件包中也有一系列帮助文件(位于/usr/lib/modules_help/), 告诉你如何对模块设定合适的参数.

可以删除旧内核吗, 如果可以, 怎么做[ ]

是的. kernel-image-NNN.prerm 脚本检查当前运行 kernel 是否与你要删掉的相同. 因此用下边的命令删除你不想要的内核影像:

dpkg --purge --force-remove-essential kernel-image-NNN

("NNN" 当然要用你的内核版本和修订号替换)

Debian使用手册导航

Debian安装

安装Debian GNU/Linux前准备 | 获取系统安装介质 | 使用Debian安装程序 | 启动进入新 Debian 系统 | 内核及其它信息 | 为Debian准备分区 | 安装指南 | 在Debian上安装Apache+Mysql+PHP

Debian使用

Debian 文件 | Debian基本操作 | Midnight Commander (MC) | 类Unix工作环境 | 类Unix文本处理 | 类Unix文件系统 | Debian生存命令 | Debian进阶 | Debian其他特性 | Debian下的Linux内核 | 启动系统 | Debian/活动记录及拷贝、创建子目录 | 差量备份、数据同步与系统冻结恢复 |常用命令与典型错误| 系统初始化 | 访问限制(Restricting access) | 刻录机 | 本地化

Debian升级

Debian系统升级 | 发行版升级到stable、testing或unstable

Debian技术支持

Debian技术支持

Debian常见问题

定义与概述 | 兼容性问题 | Debian 的软件系统 | Debian 的 FTP | Debian 的包管理系统 |Debian 的包管理工具 |更新系统 | Debian 与内核 | 定制 Debian GNU/Linux 的安装 |获取 Debian GNU/Linux 的支持 | 为 Debian 项目捐赠 | 作为商品销售Debian以及对其的展望

参考来源[ ]

http://www.debian.org/doc/manuals/debian-faq/ch-kernel.zh-cn.html