前提:查看本地硬件信息常用工具
查看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
内核编译安装学习笔记