内核编译安装学习笔记

前提:查看本地硬件信息常用工具

查看CPU信息:

#cat /proc/cpuinfo

#x86info

#lscpu

查看PCI:

#lspci

查看USB:

#lsusb

查看块设备:

#lsblk

查看综合的设备详细信息:

#hal-device

编译:交叉编译

cross-compiling用于在宿主机上编译,应用于别的机器上架构迥异的内核。

编译内核的步骤:(安装好开发环境:Development Tools,Server Platform Development,ncurses-devel)

前提1:安装开发环境

#yum grouplist

yum groupinstall Development Tools

#yum install ncurses-devel

前提2:下载内核

#lftp 172.16.0.1

cd pub/Sourcess/sources/kernel

get linux-3.10.10.tar.xz

前提3:展开内核

#tar xf linux-3.10.10.tar.xz -C /usr/src

前提4:查看内核大小

#du -sh /usr/src/linux-3.10.10/

前提5:创建链接

#ln -sv linux-3.10.10 linux

注:以下步骤都在展开内核的目录下进行:

步骤1:配置内核编译选项

#make menuconfig

步骤1_1:复制编译配置选项

#cp /boot/config-2.6.32-431.el6.x86_64 ./.config

步骤2:使用多窗口运行编译

#screen

步骤3:启用2个进程同时编译

#make -j 2

步骤4:安装内核模块

#make modules_install

步骤5:安装内核

#make install

步骤6:检查grub.conf中是否有新title出现

#cat /boot/grub/grub.conf

二次编译之前,需要进行的清理操作:

#make clean清理编译的文件,但保留配置文件

#make mrproper移除所有编译生成的文件、配置文件和备份文件

#make distclean完全清理

1.将编译生成的文件保存至别处:

#mkdir /path/to/somewhere

#cd /path/to/somewhere

#./config --ksource=/usr/src/linux

2.如何只编译内核的部分代码:

(1)只编译某子目录中的相关代码

#cd /usr/src/linux

#make path/to/dir/

例如:

#make SUBDIR=arch/

#make drivers/net/

(2)只编译部分模块

#make M=path/to/dir

#make M=drivers/net/

(3)只编译一个模块

#make path/to/dir/MOD_NAME.ko

例如:

#make drivers/net/ethernet/intel/e1000/e1000.ko

(4)将编译生成的文件保存至别处

#make O=/path/to/somewhere

3.交叉编译

#make ARCH=arch

例如:

#make ARCH=arm acs5k_defconfig

获取某ARCH的可用的默认配置

#make ARCH=arch help

例如:

#make ARCH=i386 help

内核编译安装学习笔记

时间: 2024-11-10 07:04:48

内核编译安装学习笔记的相关文章

linux+python+djiango+mysql编译安装学习笔记

1 环境准备 oel5.8 32位 Database version : 5.0.77 MySQL-python-1.2.3.tar.gz Python-2.7.5.tar.bz2 setuptools-0.6c11.tar.gz Django-1.5.12.tar.gz 2 oel5.8安装(略) 3 安装python,系统自带可以不管,安装好2.7.5后做一个软链接就可以了 tar jxvf Python-2.7.5.tar.bz2 cd Python-2.7.5 ./configure -

linux笔记 14课linux内核参数设定及内核编译安装

1.linux内核参数设定及initramfs的生成 2.linux内核编译安装 一.回顾启动流程 post--引导次序(BIOS)--bootloader(MBR)--Kernel+ramdisk--根切换(footfs)--/sbin/init(配置文件)配置文件:设置默认运行级别--制定系统初始化脚本进行系统初始化--启动服务(/etc/rc.d/re#.d,/etc/rc.d/init.d)--/etc/rc.d/rc.local--设置Ctrlaltdel组合键--启动终端(minge

编译原理学习笔记 -- 绪论1

1. 语言处理器 语言处理系统 _________ 经过预 _______ 源程序 --> |预处理器| --> 处理的 --> |编译器| --> 目标汇编程序 -------- 源程序 ------- _______ 可重定位的 ______________ --> |汇编器| --> 机器代码 --> |链接器/加载器| --> 目标机器代码 ------- -------------- ↑ 库文件/可重定位对象文件 预处理器:把源程序聚合在一起,并宏

windows内核对象管理学习笔记

目前正在阅读毛老师的<windows内核情景分析>一书对象管理章节,作此笔记. Win内核中是使用对象概念来描述管理内核中使用到的数据结构.此对象(Object)均是由对象头(Object Header)组成,实际上由于对象头概念的特殊结构,还有些可选成分.于是一个对象实际上是分为三部分. OBJECT_HEADER对象头. 数据本体(比如文件对象File Object.Event等) 附加信息(比如Object Header Name Info等) 结构如下: //摘录自 Reactos代码

马哥教育第十四天内核编译、lftp、内核编译安装

内核参数配置 /proc: 内核映像:许多参数(读写,只读),/proc:把内核参数net.ipv4.ip_forward虚拟成文件系统:net/ipv4/ip_forward 只读文件:输出统计信息 读写文件:设定内核工作特性,不允许使用文本编辑器打开进行编写,而只能使用重定向的方式或使用专用的工具 几个常用参数: kernel.hostname:设定主机名 vm.drop_caches:回收虚拟内存中buffers.cache中的空间.例如: echo 1 > /proc/sys/vm/dr

内核编译安装

以下讲的是内核基础.内核管理.安装编译内核.安装程序anaconda.kickstart. 1.内核基础 对于内核,现在有单内核和微内核设计,现在的内核多采用单内核和高度模块化设计,对于模块化设计,可以进行动态装卸载. 内核一般由三部分组成:内核核心文件.内核对象.ramdisk.内核核心文件,一般为bzImage,经过压缩处理的镜像文件,通常内核核心文件保存在/boot目录下,名称为vmlinuz-VERSION-release.内核对象,即内核额外的功能模块,该类文件放置于/lib/modu

内核编译,安装

以内核linux-3.15.6.tar.xz为例,在ubuntu14.04下进行.. 第一步:配置内核. 1,对内核进行解压. $tar  -Jxvf linux-3.15.6.tar.xz  (注意:J是大写的) 得到文件夹linux-3.15.6 2,配置内核,由于内核源码是对多个计算机架构设计的,因此在编译之前要对内核的功能进行选择. 配置内核完成后会在linux-3.15.6文件夹下形成.config文件,这个文件就是内核功能列表文件,/boot/config-3.15.6就是根据这个.

编译原理学习笔记(十一)错误处理

错误处理 说明:以老师PPT为标准,借鉴部分教材内容,AlvinZH学习笔记. 1. 目标:编译程序对于语法和语义正确的源程序要正确地编译生成等价的目标代码:而对于错误的源程序不能一发现就停止,而是要能检查出错误的性质和出错位置,并使编译能继续下去,同时尽可能多而准确地发现错误和指出各种错误. 2. 编译器的错误处理能力 诊察各类错误的能力. 报错及时准确(出错位置,错误性质). 一次编译找出错误的多少. 改正错误的能力. 遏制重复错误信息的能力. 3. 错误分类:语法错误.语义错误. 语法错误

LINUX系统开启故障排错及linux-4.16.8内核编译安装

1.破解root口令,并为grub设置保护功能 1).进入单用户模式 在 GRUB 启动菜单里使用 "e" 操作按键进入 CentOS 的启动菜单向界面 ,移动光标至"kernel"配置项一行,在末尾加入single,ctrl+x,然后进入bash#页面2).进入单用户模式后,不需要输入用户名和口令,系统启动完成后将直接获得管理员 root 的权限,控制台的提示符为"#",需要以rw方式挂载/ mount -o remount rw /3).输入