Linux学习笔记<十八>——内核编译

内核由核心和内核模块两部分组成

核心:/boot/vmlinuz-version

内核模块(ko):/lib/modules/version/

查看内核版本

uname -r

主版本号.次版本号(偶数表示稳定版本,奇数表示测试版本).修订版本号(修订的次数)

用户空间访问、监控内核是通过访问修改/proc,/sys目录下的文件(即设定内核的参数值)实现的

/proc/sys:此目录中的文件很多是可读写的

/sys:某些文件可写

设定内核参数值的方法:

1.echo VALUE > /proc/sys/file

echo 1 > /proc/sys/vm/drop_cache  清空内存中的buffers和cached

2.sysctl -w kernel.hostname="chenqiyi"

systcl -w vm.drop_cache=1

sysctl -w net.ipv4.ip_forward=1 一台主机多网卡间可实现转发

前面两种方法能立即生效,但无法永久有效

3.修改/etc/sysctl.conf,修改后执行sysctl -p重读配置文件可立即生效,并永久有效

sysctl -a:显示所有内核参数及其值

内核模块管理:

lsmod:列出当前系统中使用的内核模块

modprobe MOD_NAME:装载模块

modprobe -r MOD_NAME:卸载模块

modifo MOD_NAME:查看模块的具体信息

insmod /path/to/modile_file:装载模块

rmmod MOD_NAME:卸载模块

depmod /path/to/module_directory:生成模块的依赖关系

内核中的功能除了核心功能之外,在编译时,大多功能都有三种选择

1.不适用此功能

2.编程内核模块  (需要装载模块)

3.编译进内核

手动编译内核

1.yum groupinstall "Development Tools" "Development Libraries"

2.tar xf 内核文件.tar.gz -C /usr/src

3.配置内核,模块增删减,在内核目录下

cp /boot/config-`uname -r` /usr/src/内核目录/.config 将系统原来的内核配置cp过去进行修改

①make gconfig: Gnome桌面环境使用,需要安装图形开发库组:GNOME Software Development

②make kconfig: KDE桌面环境使用,需要安装图形开发库

③make menuconfig

4.配置完成后,在内核目录下执行make命令编译内核

5.make modules_install 安装模块

6.make install 安装内核

screen命令:

screen -ls:显示已经建立的屏幕

screen:直接打开一个新的屏幕

Ctrl+a松开以后按d:拆除屏幕

screen -r ID:还原某屏幕

exit:退出

时间: 2024-12-21 20:10:51

Linux学习笔记<十八>——内核编译的相关文章

【Linux学习】Ubuntu下内核编译(一)

(1)当要执行内核配置时,输入make menuconfig时出现错误 遇到这个问题,主要是以为没有ncurses库,而make menconfig 需要这个库,因此需要安装ncurses或者ncurses-devel即可.输入命令:sudo  apt-get  install ncurses或者sudo apt-get  install ncurses-devel. (2)错误 drivers/input/touchscreen/eeti_ts.c: In function 'eeti_ts_

Linux系统管理之十二---内核编译升级

一.内核基础 1.内核下载地址www.kernel.org 2.内核核心存于:/boot/vmlinuz-version, 用uname  -r命令查询版本号.   内核模块存于:/lib/modules/version 3.linux内核设计:   单内核+模块 4.用户空间访问.监控内核的方式:通过修改/proc, /sys,这两个目录中文件的内容,来访问.修改.监控内核的特性. /proc  :大部分是只读的.     /proc/sys:大多数是可读写的.  设定内核数值的方法::   

Linux学习笔记&lt;十&gt;——vim编辑器

vi:Visual Interface vim:Visual Interface iMproved vim模式: 编辑模式(命令模式):默认打开vim后处于的模式 输入模式 末行模式 模式转换: 编辑-->输入: i: 在当前光标所在字符的前面,转为输入模式: a: 在当前光标所在字符的后面,转为输入模式: o: 在当前光标所在行的下方,新建一行,并转为输入模式: I:在当前光标所在行的行首,转换为输入模式 A:在当前光标所在行的行尾,转换为输入模式 O:在当前光标所在行的上方,新建一行,并转为

Linux学习笔记十:软件包管理

在Linux的众多版本中,可以大致分成两个系列,分别是:RedHat系Linux,Debian系Linux.在这两种不同系的Linux中,软件包的管理也是有着一定的区别,但他们的原理都大致相同.这篇笔记将以RedHat系Linux为重点讲解其软件包的管理,并简单介绍Debian系Linux软件包的管理.其大致的结构如下: · RedHat系Linux软件包管理 - 1. 二进制包管理(基于rpm) - 2. 二进制包管理(基于yum) - 3. 源代码包管理 - 4. 脚本安装 · Debian

Linux学习笔记十:Linux用户管理

本笔记说的Linux用户管理主要包括以下内容: 1.用户配置文件(/etc/passwd  /etc/shadow) 2.组配置文件(/etc/group  /etc/gshadow) 3.用户缺省配置文件(/etc/login.defs  /etc/default/useradd) 4./etc/motd文件./etc/issue文件 5.SetUID权限.SetGID权限.黏着位 6.典型案例之一:手动创建一个用户 7.典型案例之二:批量添加用户 8.典型案例之三:限制用户使用su 9.典型

Linux学习笔记第八周五次课(3月30日)

复习(今日无答疑,笔记可以不写) 三.用户和组管理 3.1 用户配置文件和密码配置文件5 /etc/passwd用户账号密码文件,配置文件:第一列,用户名:第二列,密码全用X表示:第三列,UID:第四列,GID:第五列,注释:第六列,用户家目录:第七列,用户shell目录: /etc/shadow专门存用户密码:第一列,用户名:第二列,加密的密码:第三列,密码从1970年1月1日开始最后修改的天数:第四列,密码要多少天才能修改:第五列,密码要多少天必须修改:第六列,密码到期前的警告天数:第七列,

Linux学习笔记 (八)Shell概述

一.什么是Shell? Shell是一个命令行解释器,它为用户提供了一个向Linux内核发送请求以便运行程序的界面系统级程序,用户可以用Shell来启动,挂起,停止甚至是编写一些程序.Shell还是一个功能强大的编程语言,易编写,易调试,灵活性强.Shell是解释执行的脚本语言,在Shell中可以直接调用Linux系统命令. 二.Shell的分类 1.Bourne Shell:简称:B Shell,从1979年起Unix就开始使用Bourne Shell,B Shell的主文件后缀是.sh,bs

Linux学习笔记&lt;十九&gt;——系统裁剪之一

grub-->kernel-->initrd-->ROOTFS(/sbin/init, /bin/bash) 自行在一块新硬盘上组建一个简单的Linux系统,具有/sbin/init初始化,能够使用/bin/bash 1.磁盘分区:只创建boot分区mount到/mnt/boot和根分区mount到/mnt/sysroot 2.cp /boot/vmlinuz-`uname -r` /mnt/boot/vmlinuz 3.grub-install --root-directory=/mn

Java基础学习笔记十八 异常处理

什么是异常?Java代码在运行时期发生的问题就是异常. 在Java中,把异常信息封装成了一个类.当出现了问题时,就会创建异常类对象并抛出异常相关的信息(如异常出现的位置.原因等). 异常的继承体系 在Java中使用Exception类来描述异常. 查看API中Exception的描述,Exception 类及其子类是 Throwable 的一种形式,它用来表示java程序中可能会产生的异常,并要求对产生的异常进行合理的异常处理. Exception有继承关系,它的父类是Throwable.Thr