Ubuntu编译安装Linux内核过程(整理版)
ubuntu安装及android源码编译环境搭建

ubuntu安装及android源码编译环境搭建为了能够编译和运行 Android 源码,我们需要在 Ubuntu 系统中搭建相应的开发环境。
下面是 Ubuntu 安装及 Android 源码编译环境搭建的详细步骤:一、Ubuntu 系统的安装2.将ISO文件写入USB或DVD中,制作启动盘。
3.在计算机上将系统引导到USB活动盘或DVD上,并启动系统。
4. 在启动菜单中选择安装 Ubuntu,按照提示完成安装过程。
二、系统更新和软件安装1.安装后,运行系统更新以获取最新的软件包和安全修复程序。
可以在终端中运行以下命令:```sudo apt updatesudo apt upgrade```2.安装开发工具和编译器。
可以在终端中运行以下命令:```sudo apt install build-essentialsudo apt install openjdk-8-jdksudo apt install pythonsudo apt install gitsudo apt install curlsudo apt install gnupg```1. 配置 Git 个人信息,可以在终端中运行以下命令:```git config --global "Your Name"``````chmod a+x ~/bin/repo```3. 配置 PATH 环境变量,这样在终端中就可以使用 Repo 了。
打开`~/.bashrc` 文件,并在末尾添加以下内容:```export PATH=~/bin:$PATH```4.执行以下命令使配置生效:```source ~/.bashrc```1. 创建一个空文件夹作为 Android 源码存放的目录,并在终端中进入该目录。
```repo init -u <URL> -b <branch>````````````repo sync```5.开始编译。
Ubuntu下构建内核源码树的方法

Ubuntu 下构建内核源码树网上好多文章,他大爷的都是转来转去,每一篇中用的。
索性还是自己整理一篇吧。
网上牛人多,但是小白问题更多,更何况咱们这号不入门的,因为最近学内核,要写模块,模块要在源码树下编译安装,又习惯了Ubuntu的OS,不忍转向他方,还是好好摆置摆置它吧,找的几篇文章不怎么好用,下边开始吧。
PS:当前系统是上一篇配置SSH博文里Jun从Ubuntu9.04更新到Ubuntu 10.04的系统。
这个网上都这么装,就这样来吧。
1.安装编译内核所需要的软件build-essential、autoconf、automake、cvs、subversion$ sudo apt-get install build-essential kernel-package libncurses5-devlibncurses5这个软件包在使用menuconfig配置内核的时候会用到。
2.进入/usr/src ,在这里构建源码树,我们用下面指令查看可用的源码包:$ sudo apt-cache search linux-source我的提示是:linux-source - Linux kernel source with Ubuntu patcheslinux-source-2.6.32 - Linux kernel source for version 2.6.32 with Ubuntu patches3.那么就让我们来下载2.6.32版的kernel,通过下边命令:$ sudo apt-get install linux-source-2.6.32等待下载完成。
4.下载完成后,我们进入/usr/src ,默认会在这里,看看他的目录结构:(ls 一下)我的显示可以看到有两对儿Linux-header-2.6.* 的目录,你的应该是只有一对儿,之所以这样是以为我的是从9.04更新到10.4,Ubuntu会保留历史版本,不用管它,记住,这里linux-headers-2.6.32-34-generic 、linux-headers-2.6.32-34、linux-source-2.6.32.tar.bz2 ,这才是我们用到的。
Ubuntu Linux 操作系统(微课版)第一章 Ubuntu概述、安装与基本操作

• 获取Ubuntu安装包 • 到Ubuntu官网下载Ubuntu 18.04 LTS桌面版的ISO镜像。
• 准备硬件 • 至少2GHz的双核处理器。 • 4GB内存。 • 25GB可用硬盘空间。 • DVD光驱或USB端口。 • 确保计算机能够连接访问Internet。
1.2 安装Ubuntu操作系统
• 发行版本
1.1 Linux与Ubuntu
Ubuntu Linux
第1章 Ubuntu概述、安装与基本操作 8
• Ubuntu的父版本Debian • Debian是极为精简的Linux发行版,操作环境干净,安装步骤简易。 • Ubuntu继承Debian的优点,集成在Debian下经过测试的优秀自由软件。
1.2 安装Ubuntu操作系统
Ubuntu安装过程
• 选择语言类型
第1章 Ubuntu概述、安装与基本操作 12
• 选择键盘局
1.2 安装Ubuntu操作系统
Ubuntu安装过程
• 选择更新和其他软件
第1章 Ubuntu概述、安装与基本操作 13
• 选择安装类型
1.2 安装Ubuntu操作系统
• 硬件系统。包含Linux所使用的所有物理设备。
第1章 Ubuntu概述、安装与基本操作 6
用户应用程序 操作系统服务
Linux内核 硬件系统
1.1 Linux与Ubuntu
多种多样的Linux版本
第1章 Ubuntu概述、安装与基本操作 7
• 内核版本 • 内核版本是指内核小组开发维护的系统内核的版本号。 • 内核版本的每一个版本号由4个部分组成。 [主版本].[次版本].[修订版本]-[附版本]
安装前的准备工作
第1章 Ubuntu概述、安装与基本操作 11
Ubuntu编译安装Linux内核过程

Ubuntu编译安装Linux内核过程编译安装Linux内核是Ubuntu系统用户进行内核优化、定制和个性化的重要方式之一、本文将介绍Ubuntu编译安装Linux内核的过程,帮助用户完成编译安装。
## 1. 获取Linux内核源代码##2.安装必要的工具和依赖项在编译安装Linux内核之前,需要安装一些必要的工具和依赖项,以确保编译过程的顺利进行。
你可以通过以下命令来安装它们:```sudo apt updatesudo apt install build-essential libncurses-dev bison flex libssl-dev libelf-dev```##3.解压源代码```tar -xf linux-x.x.x.tar.xz```##4.进入源代码目录进入解压后的源代码目录:```cd linux-x.x.x```##5.配置内核在继续编译之前,需要对内核进行配置。
你可以使用以下命令打开配置窗口:```make menuconfig```这个命令会打开一个文本界面的配置窗口,你可以在其中选择和配置不同的内核选项。
根据你的需求进行自定义配置。
##6.编译内核完成内核配置后,可以执行以下命令来开始编译内核:```make -j4```这个命令中的“-j4”表示使用4个线程进行编译。
你可以根据你的系统硬件配置自定义线程数量。
编译内核的时间会根据你的系统配置和编译选项的不同而有所不同。
请耐心等待编译过程完成。
##7.安装内核完成编译后,可以执行以下命令来安装编译得到的内核:```sudo make modules_install install```这个命令将编译得到的内核模块和内核文件安装到系统中。
安装完成后,你需要更新系统的引导加载程序(grub)以使用新的内核。
##8.更新引导加载程序执行以下命令来更新引导加载程序(grub):```sudo update-grub```这个命令会自动检测并添加新安装的内核到引导菜单中。
kernel5.10 编译方法 -回复

kernel5.10 编译方法-回复标题:编译Linux Kernel 5.10的详细步骤在Linux的世界中,编译Kernel是一项基础且重要的技能。
本文将详细介绍如何从源代码编译Linux Kernel 5.10。
以下是一步一步的详细教程。
一、准备工作1. 确保系统环境首先,你需要一个运行中的Linux系统。
本文以Ubuntu 20.04为例,但大部分Linux发行版的步骤应该是类似的。
2. 更新系统确保你的系统已经更新到最新版本,可以使用以下命令:sudo apt-get updatesudo apt-get upgrade3. 安装必要的工具编译Kernel需要一些基本的开发工具和库,可以通过以下命令安装:sudo apt-get install build-essential libncurses5-dev bc flex bison openssl libssl-dev dkms二、下载Kernel源代码1. 创建工作目录在你的主目录下创建一个名为kernel的工作目录:mkdir ~/kernelcd ~/kernel2. 下载Kernel源代码你可以从Kernel官网(5.10的源代码:wget3. 解压源代码使用以下命令解压下载的源代码:tar xvf linux-5.10.tar.xz这将在当前目录下创建一个名为linux-5.10的目录,这是Kernel的源代码目录。
三、配置和编译Kernel1. 进入源代码目录cd linux-5.102. 配置Kernel配置Kernel是编译过程中最重要的一步,你可以根据你的硬件和需求选择要编译的功能。
对于大多数用户,使用以下命令进行基本配置应该足够:make menuconfig这将打开一个基于文本的配置界面。
你可以使用方向键和回车键浏览和选择选项。
完成后,保存并退出。
3. 开始编译配置完成后,可以开始编译Kernel了。
这个过程可能需要一些时间,取决于你的计算机性能:make -j(nproc)这里的-j参数表示使用多少个进程进行编译,(nproc)会自动获取你的CPU 核心数。
ubuntu下编译驱动程序的准备

ubuntu下编译驱动程序的准备ubuntu不带linux内核源码,需要自己下载安装。
1,查看自己的内核版本uname -r2,查看源内的内核源码类表apt-cache search linux-source3,下载安装内核源代码sudo apt-get install linux-source- //我选的是这一个,自己看着办吧4,等待........下载完成后,在/usr/src下会有一个文件名为linux-source-5,解压缩包tar jxvf linux-source- //看清自己的版本解压后会生成一个源代码目录/usr/src/linux-source-6,进入源码目录后,配置文件make oldconfig7,生成内核make8,疯狂等待,大约1个多小时9,编译模块make modules10,安装模块make modules_install大功告成!^_^下面说一下Makefile文件$(MAKE) -C $(KERNELDIR) M=$(PWD) modules_install #PWD当前工作目录的变量obj-m := hello.o#hello.o是你要生成的驱动,以后可以自己改KERNELDIR:=/lib/modules/#这里别抄,写成你自己的版本,这个目录执行了内核源码目录PWD:=$(shell pwd) #将当前工作目录赋值该PWD modules:$(MAKE) -C $(KERNELDIR) M=$(PWD) modulesmodules_install:下面是一个经典的Hello,world!例子自己make一下就行了。
#include <linux/init.h>#include <linux/module.h>MODULE_LICENSE("Dual BSD/GPL");static int hello_init(void){printk(KERN_ALERT "Hello, world!\n");return 0;}static void hello_exit(void){printk(KERN_ALERT"Goodbye, cruel world!\n");}module_init(hello_init);module_exit(hello_exit);本文是参考了网上多篇帖子而写的算不上什么原创。
ubuntu安装教程双系统

ubuntu安装教程双系统Ubuntu是一种基于Debian的操作系统,它主要使用GNU工具链和Linux内核。
与Windows一样,Ubuntu也可以安装在电脑上与其他操作系统共存,这种安装方式被称为双系统安装。
本文将为您提供一份详细的Ubuntu双系统安装教程,帮助您成功安装Ubuntu。
步骤一:准备工作1. 在Ubuntu官方网站上下载最新版本的Ubuntu镜像文件。
您可以选择下载桌面版本或服务器版本,根据您的需求进行选择。
2. 确保您的电脑硬盘有足够的空间用于安装Ubuntu。
一般建议留出至少30GB的空间供Ubuntu使用。
3. 备份重要的数据。
在进行双系统安装之前,为了避免意外情况导致数据丢失,建议您备份重要的数据。
步骤二:创建Ubuntu安装U盘1. 使用一个空闲的U盘(至少4GB)创建Ubuntu启动盘。
您可以使用软件如Rufus或UNetbootin来创建启动盘。
2. 在Rufus或UNetbootin中选择您下载的Ubuntu镜像文件,并选择您的U盘作为目标磁盘。
3. 在创建启动盘之前,确保选择的分区或U盘是空的,因为创建启动盘会删除其中的所有数据。
步骤三:安装Ubuntu1. 插入您的Ubuntu启动盘,并重启电脑。
2. 在计算机启动过程中,请按下相应的按键(通常是F12、F2或删除键)进入BIOS设置。
3. 在BIOS设置中,将启动顺序调整为从U盘启动。
4. 保存设置并重启电脑。
计算机会从U盘启动,并显示一个Ubuntu安装界面。
5. 在Ubuntu安装界面中,选择"Install Ubuntu"进入安装过程。
6. 在安装过程中,您可以选择语言、键盘布局等设置。
根据您的喜好和需要进行选择。
7. 在硬盘分区界面,选择"Install Ubuntu alongside..."选项,并选择您空闲的硬盘空间作为Ubuntu的安装位置。
8. 填写您的用户名、密码等信息,并等待安装过程完成。
ubuntu命令安装内核源码及升级内核源码

sudo apt-get install linux-source 会自动安装当前版本内核的源代码到/usr/src升级内核源码:1.将下载过来linux源代码包(tar.bz2包)解压到/usr/src下。
如果你还不知道怎么解压,请google之~解压完毕后可以在/usr/src目录下看到一个linux-2.6.31.6的文件夹2.转移目录至linux-2.6.31.6用如下命令:cd /usr/src/linux-2.6.31.63.先配置Ubuntu内核:make menuconfig具体怎么配置我不清楚,不过这个基本上不用怎么配置的,直接选最后一项,save,exit 就OK了4.接着开始编译Ubuntu内核:make这是一个漫长的过程,慢慢等吧~~这个花了我将近一个半小时的时间5.加入模块:make modules_install6.生成可执行的Ubuntu内核引导文件:make bzImage (注意i字母要大写)7.将bzImage复制至/boot下:cp arch/i386/boot/bzImage /boot/vmlinuz-2.6.31.6 //2.6.32Ubuntu内核的bzImage目录为arch/x86/boot/bzImage8.清除多余的创建文件:make clean //这一步最好还是留到最后来做(现在可以先不跳过这一步),这样的话,即使你后面操作失误也可以回到这里重做,而不需要重新编译9.将System.map复制至/boot下:cp System.map /boot/System.map-2.6.31.610.生成initrd.img 这个很重要,我开始弄错了这个,害的我白重启了一次。
命令:cd /lib/modules/2.6.31.6sudo mkinitramfs -o /boot/initrd.img-2.6.31.6 //2.6.32可以为sudo update-initramfs -c - k 2.6.3211.自动查找新Ubuntu内核,并添加至grub引导:sudo update-grub这个过程也可以手动完成,方法是更改/boot/grub目录下menu.lst文件。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Ubuntu编译Linux内核过程
一、首先解决Ubuntu代理上网的问题
1、这种方法要用到/etc/apt/文件夹下的apt.conf文件。
如果您希望apt-get(而不是其他应用程序)一直使用http代理,您可以使用这种方式。
注意:某些情况下,系统安装过程中没有建立apt配置文件。
下面的操作将视情况修改现有的配置文件或者新建配置文件。
sudo gedit /etc/apt/apt.conf在您的apt.conf文件中加入下面这行(根据你的实际情况替换yourproxyaddress和proxyport)。
Acquire::http::Proxy "http://yourproxyaddress:proxyport";保存apt.conf文件。
如果代理服务器需要登录,那么可以在指定代理服务器地址的时候,用如下格式(根据情况把username,password, yourproxyaddress 和proxyport替换为相应内容):
http_proxy=http://username:password@yourproxyaddress:proxyp ort
2、然后在新立得设置http代理,在系统--系统管理--新立得软件包管理器--设置--首选项--网络里也要设置http的代理
二、下载源代码和编译软件的准备
下载内核源代码:/
注意,点击2.6.39.3内核的F版,即完整版。
如果你懒得去网站点联接,运行下列命令:
代码:
$cd ~
$wget
/pub/linux/kernel/v2.6/linux-2.6.39.3. tar.bz2
安装有关编译程序。
安装make ,gcc, make-kpkg,运行menuconfig 等等和编译内核相关的工具。
安装不了,请检查/etc/apt/sources.list 文件。
安装所需工具包有关命令:
代码:
$sudo apt-get install build-essential kernel-package libncurses5-dev fakeroot
三、解压源代码
注意,网上很多教程上说应该解压到 /usr/src,纯属以讹传讹,linux掌门人linus说解压到任何目录上都可以。
当然,linus的说法是正确的。
先将压缩包复制到usr/src目录下,然后将压缩包解压到user/src目录下。
如果压缩包现在放在个人主目录的桌面上,则运行下列命令:
代码:
$sudo cp Desktop/linux-2.6.39.3.tar.bz2 /usr/src
$ cd usr/src
$ tar jxvf linux-2.6.39.3.tar.bz2
现在,源代码就在 usr/src/linux-2.6.39.3
进入源代码的目录,准备下一步的工作。
后面都在这个目录里面进行。
代码:
$ cd usr/src/linux-2.6.39.3
四、开始编译前的准备工作。
首先,清理以前编译时留下的临时文件。
如果是刚刚解开的包,不需要执行这步。
如果是第二次或者是第n次编译,那么一定要执行。
相关命令如下:
代码:
$ sudo make mrproper
网上很多教程上说把现在使用的内核的config拷贝过来参考,据实验,是不需要的,ubuntu还有debian会自动做这步。
不过这条命令倒是可以学习一下。
当然你可以将以前的配置拷贝过来。
命令:
代码:
cp /boot/config-2.6.35-22-generic ./.config
加红部分视自己操作系统情况而定
五、开始配置内核选项。
相关命令:
代码:
$sudo make menuconfig
我们选用的是图形界面的配置,在配置选项的最下方有一个Load和Save选项,我们先将第四步复制过来的配置文件.config文件Load 进来,在Save就可以了。
六、开始编译内核。
ubuntu的工具是make-kpkg,和其他的发行版相比,步骤相对简单。
相关命令:
代码:
$sudo make-kpkg clean 这条命令好像不要超级权限,很多资料上说要,不过这不是原则问题。
$sudo make-kpkg --initrd --append-to-version=t61 kernel_image kernel-headers
上述命令中的t61可以用自己喜欢的字符代替,最后的字符一定是数字.
输完上述命令回车之前,建议大家把浏览器还有别的运用程序都关掉,机器开始的工作比较艰苦。
七、安装内核
编译完成就是安装工作。
编译好的内核在上一层目录。
包括linux-headers-2.6.39.3t61_2.6.39.3t61-10.00.Custom_i386.deb 和linux-image-2.6.39.3t61_2.6.39.3t61-10.00.Custom_i386.deb 两个文件,如果你不搞开发的话,只要安装内核就可以,头文件以后
要用的时候再说。
安装相关命令:
代码:
$ cd ..
$ sudo dpkg -i linux-image-(按tab键)
文件名很长,如果不用tab自动补足是不可能的。
安装完成后和老内核比较一下大小
代码:
$ ls -l /boot/
八、重新启动验证新内核。
代码:
$ sudo reboot
重启后可以检查新内核版本,命令如下:
$ uname -a
至此Linux内核的安装编译已经完成,以下几个步骤是个人情况而定:
九、显卡驱动
如果你的显卡和我一样是nvidia显卡,启动之后往往无法正常进入x-window。
即使能看到gdm登录界面,效果也是很差的。
那么就要安装nvidia驱动。
用ctrl+alt+f1 进入字符命令行,输入用户名,密码登录。
命令:
代码:
下载驱动
$wget
/XFree86/Linux-x86/173.14.12/N VIDIA-Linux-x86-173.14.12-pkg1.run
$sudo -s
输入密码取得超级权限。
#ps ax
看看和gdm相关的进程,把这些进程全部关闭;用sudo /etc/init.d/gdm stop有可能有一个进程没有关闭:
#kill 进程号
然后安装nvidia显卡驱动,当然驱动要先下好,到nvidia驱动所在的目录里,运行:
# sh ./NVIDIA-Linux-x86-173.14.12-pkg1.run
重新启动以后就ok。
要用nvidia的驱动,每次升级内核都要这么做。
十、无线网卡
相关的内核选项是
Networking --->
Wireless --->
Generic IEEE 802.11 Networking Stack (mac80211)
还有4965的驱动。
4965 无线网卡驱动虽然已经编入内核,但没有firmware无法使用。
需要把原来内核的firmware拷贝到新内核对应的目录,名字和内核一致,我的内核是 linux-image-2.6.25.10dell1400,那建的目录名就是2.6.25.10dell1400。
代码:
具体命令:
$ cd /lib/firmware/
$ sudo mkdir 2.6.25.10dell1400
把你的老内核中的4965的firmware拷贝过来。
$ sudo cp 2.6.24-16-generic/* 2.6.25.10dell1400/
上面的命令和下面的命令是等价的:
$ cd /lib/firmware/
$ sudo cp -R 2.6.24-16-generic/ 2.6.25.10dell1400/
重新启动系统,无线网卡就正常了。
复制命令:sudo cp Desktop/linux-2.6.39.3.tar.bz2 /usr/src 解压命令:sudo tar jxvf FileName.tar.bz2。