Ubuntu编译安装Linux内核过程(整理版)

Ubuntu编译Linux内核过程
一、 首先解决Ubuntu代理上网的问题
1、这种方法要用到/etc/apt/文件夹下的f文件。如果您希望apt-get(而不是其他应用程序)一直使用http代理,您可以使用这种方式。
注意:某些情况下,系统安装过程中没有建立apt配置文件。下面的操作将视情况修改现有的配置文件或者新建配置文件。
sudo gedit /etc/f在您的f文件中加入下面这行(根据你的实际情况替换yourproxyaddressproxyport)。
Acquire::http::Proxy "yourproxyaddress:proxyport";保存f文件。
如果代理服务器需要登录,那么可以在指定代理服务器地址的时候,用如下格式(根据情况把usernamepassword yourproxyaddressproxyport替换为相应内容):
http_proxy=username:password@yourproxyaddress:proxyport
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
我们选用的是图形界面的配置,在配置选项的最下方有一个LoadSave选项,我们先将第四步复制过来的配置文件.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.deblinux-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显卡,启动之后往往无法正常进入xwindow。即使能看到gdm登录界面,效果也是很差的。
那么就要安装nvidia驱动。
ctrl+alt+f1 进入字符命令行,输入用户名,密码登录。
命令:
代码:
下载驱动
$wget us.download.nvidia/XFree86/Linux-x86/173.14.12/NVIDIA-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拷贝到新内核对应的目录,名字和内核一致,我的内核是 linuximage-2.6.25.10dell1400,那建的目录名就是2.6.25.10dell1400
代码谱图:
具体命令:
$ cd /lib/firmware/
$ sudo mkdir 2.6.25.10dell1400
把你的老内核中的4965firmware拷贝过来。
$ 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

本文发布于:2024-09-23 12:27:25,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/181819.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:内核   命令   安装   编译   情况   目录   驱动   字符
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议