内核编译安装学习笔记

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

查看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


你可能感兴趣的:(开发,硬件,常用工具,详细信息)