热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

手把手教你配置最新linux-2.6.6内核

文章标题:手把手教你配置最新linux-2.6.6内核。Linux是中国IT实验室的一个技术频道。包含桌面应用,Linux系统管理,内核研究,嵌入式系统和开源等一些基本分类

  下载内核源代码
  http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.6.tar.gz
  放置到 /usr/src/下
  解压 tar zxvf linux-2.6.6.tar.gz
  #cd linux-2.6.6
  #make menuconfig (如果装了X11 可用Xconfig 命令) 配置内核 一定要选自己的网卡驱动!
  不选的为空 选的是*号 M 是编译为模块形式,日后可手动插入模块
  
  升级module-init-tools软件包
  要编译与正常运行新的内核你需要升级一些软件包,这些信息在源码目录下的Documentation/Changes文件中,请根据你的实际情况选择升级。
  特别要说明的是,因为2.4.x下的modutils工具包已经不在适合新的2.6.x内核, 必需将其升级到module-init-tools工具包.,我下载module-init-tools-3.0.tar.gz源码包的地方是:
  
  http://www.kernel.org/pub/linux/kernel/people/rusty/modules/module-init-tools-3.0.tar.gz
  
  接下来, 按照下列步骤安装module-init-tools工具包:
  
  tar -zxvf module-init-tools-3.0.tar.gz
  
  在module-init-tools-3.0目录下,
  
  # configure --prefix=/
  # make moveold
  # make all install
  # ./generate-modprobe.conf /etc/modprobe.conf
  
  命令"make moveold"将把系统原来的modutils工具程序改名为"*.old"(比如,lsmod.old等等). NOTE! 这是非常重要的一步, 千万不要省略. 这将使得你可以继续使用原有的linux-2.4.x系统, 因为在2.4.x系统下, 新的module-init-tools工具包实际上是倚赖原来"*.old"程序来加载内核模块. 如果忘记了这一步也不要紧张, 可以先下载并安装原来的modutils程序包, 然后按照上面的步骤重来一遍就可以了.
  新的module-init-tools工具包不再使用原来的/etc/modules.conf配置文件了, 而是使用新的配置文件/etc/modprobe.conf. 因此必需用命令"./generate-modprobe.conf /etc/modprobe.conf"来生成新的配置文件/etc/modprobe.conf.
  如果你使用devfs系统你还需要复制modprobe.devfs 到/etc目录下。
  当你升级完相关软件包之后,准备工作就算完成了,下面我们将进入到编译阶段。
  
  1. Code maturity level options
  ??代码成熟等级。此处只有一项:prompt for development and/or incomplete code/drivers,如果你要试验现在仍处于实验阶段的功能,比如khttpd、IPv6等,就必须把该项选择为Y了;否则可以把它选择为N。
  2. Loadable module support
  ??对模块的支持。这里面有三项:
  ??Enable loadable module support:除非你准备把所有需要的内容都编译到内核里面,否则该项应该是必选的。
  ??Set version information on all module symbols:可以不选它。
  ??Kernel module loader:让内核在启动时有自己装入必需模块的能力,建议选上。
  3. Processor type and features
  ??CPU类型。内容蛮多的,不一一介绍了,有关的几个如下:
  ??Processor family:根据你自己的情况选择CPU类型。
  ??High Memory Support:大容量内存的支持。可以支持到4G、64G,一般可以不选。
  ??Math emulation:协处理器仿真。协处理器是在386时代的宠儿,现在早已不用了。
  ??MTTR support:MTTR支持。可不选。
  ??Symmetric multi-processing support:对称多处理支持。除非你富到有多个CPU,否则就不用选了。
  4. General setup
  ??这里是对最普通的一些属性进行设置。这部分内容非常多,一般使用缺省设置就可以了。下面介绍一下经常使用的一些选项:
  ??Networking support:网络支持。必须,没有网卡也建议你选上。
  ??PCI support:PCI支持。如果使用了PCI的卡,当然必选。
  ??PCI access mode:PCI存取模式。可供选择的有BIOS、Direct和Any,选Any吧。
  ??Support for hot-pluggabel devices:热插拔设备支持。支持的不是太好,可不选。
  ??PCMCIA/CardBus support:PCMCIA/CardBus支持。有PCMCIA就必选了。
  ??System V IPC
  ??BSD Process Accounting
  ??Sysctl support:以上三项是有关进程处理/IPC调用的,主要就是System V和BSD两种风格。如果你不是使用BSD,就按照缺省吧。
  ??Power Management support:电源管理支持。
  ??Advanced Power Management BIOS support:高级电源管理BIOD支持。
  5. Memory Technology Device(MTD)
  ??MTD设备支持。可不选。
  6. Parallel port support
  ??串口支持。如果不打算使用串口,就别选了。
  7. Plug and Play configuration
  ??即插即用支持。虽然Linux对即插即用目前支持的不如Windows好,但是还是选上吧,这样你可以拔下鼠标之类的体验一下Linux下即插即用的感觉。
  8. Block devices
  ??块设备支持。这个就得针对自己的情况来选了,简单说明一下吧:
  ??Normal PC floppy disk support:普通PC软盘支持。这个应该必选。
  ??XT hard disk support:
  ??Compaq SMART2 support:
  ??Mulex DAC960/DAC1100 PCI RAID Controller support:RAID镜像用的。
  ??Loopback device support:
  ??Network block device support:网络块设备支持。如果想访问网上邻居的东西,就选上。
  ??Logical volume manager(LVM)support:逻辑卷管理支持。
  ??Multiple devices driver support:多设备驱动支持。
  ??RAM disk support:RAM盘支持。
  9. Networking options
  ??网络选项。这里配置的是网络协议。内容太多了,不一一介绍了,自己看吧,如果你对网络协议有所了解的话,应该可以看懂的。如果懒得看,使用缺省选项(肯定要选中TCP/IP networking哦)就可以了。让我们看看,TCP/IP、ATM、IPX、DECnet、Appletalk……支持的协议好多哦,IPv6也支持了,Qos and/or fair queueing(服务质量公平调度)也支持了,还有kHTTPd,不过这些都还在实验阶段。
  10. Telephony Support
  ??电话支持。这个是什么东东?让我查查帮助,原来是Linux下可以支持电话卡,这样你就可以在IP上使用普通的电话提供语音服务了。记住,电话卡可和modem没有任何关系哦。
  11. ATA/IDE/MFM/RLL support
  ??这个是有关各种接口的硬盘/光驱/磁带/软盘支持的,内容太多了,使用缺省的选项吧,如果你使用了比较特殊的设备,比如PCMCIA等,就到里面自己找相应的选项吧。
  12. SCSI support
  ??SCSI设备的支持。我没有SCSI的设备,所以根本就不用选,如果你用了SCSI的硬盘/光驱/磁带等设备,自己找好了。
  13. IEEE 1394(FireWire)support
  ??这个是什么?低版本的没有见过,看看帮助再说。原来是要Fireware硬件来提高串行总线的性能,我没有,不选了。
  14. I2O device support
  ??这个也不清楚,帮助里说是这个需要I2O接口适配器才能支持的,在智能Input/Output(I2O)体系接口中使用,又是要硬件,不选了。
  15. Network device support
  ??网络设备支持。上面选好协议了,现在该选设备了,可想而知,内容肯定多得很。还好还好,里面大概分类了,有ARCnet设备、Ethernet(10 or 100 Mbit)、Ethernet(1000Mbit)、Wireless LAN(non-hamradio)、Token Ring device、Wan interfaces、PCMCIA network device support几大类。我用的是10/100M的以太网,看来只需要选则这个了。还是10/100M的以太网设备熟悉,内容虽然多,一眼就可以看到我所用的RealTeck RTL-8139 PCI Fast Ethernet Adapter support,为了免得麻烦,编译到内核里面好了,不选M了,选Y。耐心点,一般说来你都能找到自己用的网卡。如果没有,你只好自己到厂商那里去要驱动了。
  16. Amateur Radio support
  ??又一个不懂的,应该是配置业余无线广播的吧,没有,不要了。
  17. IrDA(infrared)support
  ??这个要红外支持,免了。
  18. ISDN subsystem
  ??如果你使用ISDN上网,这个就必不可少了。自己看着办好了。
  19. Old CD-ROM drivers(not SCSI、not IDE)
  ??做的可真周到,原来那些非SCSI/IDE口的光驱谁还在用啊,自己选吧,反正我是用的IDE的CD-ROM,不选这个。
  20. Character devices
  ??字符设备。这个内容又太多了,先使用缺省设置,需要的话自己就修改。把大类介绍一下吧:
  ??I2C support:I2C是Philips极力推动的微控制应用中使用的低速串行总线协议。如果你要选择下面的Video For Linux,该项必选。
  ??Mice:鼠标。现在可以支持总线、串口、PS/2、C&T 82C710 mouse port、PC110 digitizer pad,自己根据需要选择。
  ??Joysticks:手柄。即使在Linux下把手柄驱动起来意义也不是太大,游戏太少了。
  ??Watchdog Cards:虽然称为Cards,这个可以用纯软件来实现,当然也有硬件的。如果你把这个选中,那么就会在你的/dev下创建一个名为watchdog的文件,它可以记录你的系统的运行情况,一直到系统重新启动的1分钟左右。有了这个文件,你就可以恢复系统到重启前的状态了。
  ??Video For Linux:支持有关的音频/视频卡。
  ??Ftape, the floppy tape device driver:
  ??PCMCIA character device support:
  21. File systems
  ??文件系统。内容又太多了,老法子,在缺省选项的基础上进行修改。介绍以下几项:
  ??Quo
推荐阅读
  • 在Docker中,将主机目录挂载到容器中作为volume使用时,常常会遇到文件权限问题。这是因为容器内外的UID不同所导致的。本文介绍了解决这个问题的方法,包括使用gosu和suexec工具以及在Dockerfile中配置volume的权限。通过这些方法,可以避免在使用Docker时出现无写权限的情况。 ... [详细]
  • Java验证码——kaptcha的使用配置及样式
    本文介绍了如何使用kaptcha库来实现Java验证码的配置和样式设置,包括pom.xml的依赖配置和web.xml中servlet的配置。 ... [详细]
  • 恶意软件分析的最佳编程语言及其应用
    本文介绍了学习恶意软件分析和逆向工程领域时最适合的编程语言,并重点讨论了Python的优点。Python是一种解释型、多用途的语言,具有可读性高、可快速开发、易于学习的特点。作者分享了在本地恶意软件分析中使用Python的经验,包括快速复制恶意软件组件以更好地理解其工作。此外,作者还提到了Python的跨平台优势,使得在不同操作系统上运行代码变得更加方便。 ... [详细]
  • 基于layUI的图片上传前预览功能的2种实现方式
    本文介绍了基于layUI的图片上传前预览功能的两种实现方式:一种是使用blob+FileReader,另一种是使用layUI自带的参数。通过选择文件后点击文件名,在页面中间弹窗内预览图片。其中,layUI自带的参数实现了图片预览功能。该功能依赖于layUI的上传模块,并使用了blob和FileReader来读取本地文件并获取图像的base64编码。点击文件名时会执行See()函数。摘要长度为169字。 ... [详细]
  • HDU 2372 El Dorado(DP)的最长上升子序列长度求解方法
    本文介绍了解决HDU 2372 El Dorado问题的一种动态规划方法,通过循环k的方式求解最长上升子序列的长度。具体实现过程包括初始化dp数组、读取数列、计算最长上升子序列长度等步骤。 ... [详细]
  • 本文讨论了Alink回归预测的不完善问题,指出目前主要针对Python做案例,对其他语言支持不足。同时介绍了pom.xml文件的基本结构和使用方法,以及Maven的相关知识。最后,对Alink回归预测的未来发展提出了期待。 ... [详细]
  • 本文讨论了如何优化解决hdu 1003 java题目的动态规划方法,通过分析加法规则和最大和的性质,提出了一种优化的思路。具体方法是,当从1加到n为负时,即sum(1,n)sum(n,s),可以继续加法计算。同时,还考虑了两种特殊情况:都是负数的情况和有0的情况。最后,通过使用Scanner类来获取输入数据。 ... [详细]
  • 本文介绍了OC学习笔记中的@property和@synthesize,包括属性的定义和合成的使用方法。通过示例代码详细讲解了@property和@synthesize的作用和用法。 ... [详细]
  • Mac OS 升级到11.2.2 Eclipse打不开了,报错Failed to create the Java Virtual Machine
    本文介绍了在Mac OS升级到11.2.2版本后,使用Eclipse打开时出现报错Failed to create the Java Virtual Machine的问题,并提供了解决方法。 ... [详细]
  • 本文讲述了作者通过点火测试男友的性格和承受能力,以考验婚姻问题。作者故意不安慰男友并再次点火,观察他的反应。这个行为是善意的玩人,旨在了解男友的性格和避免婚姻问题。 ... [详细]
  • 安卓select模态框样式改变_微软Office风格的多端(Web、安卓、iOS)组件库——Fabric UI...
    介绍FabricUI是微软开源的一套Office风格的多端组件库,共有三套针对性的组件,分别适用于web、android以及iOS,Fab ... [详细]
  • 解决Cydia数据库错误:could not open file /var/lib/dpkg/status 的方法
    本文介绍了解决iOS系统中Cydia数据库错误的方法。通过使用苹果电脑上的Impactor工具和NewTerm软件,以及ifunbox工具和终端命令,可以解决该问题。具体步骤包括下载所需工具、连接手机到电脑、安装NewTerm、下载ifunbox并注册Dropbox账号、下载并解压lib.zip文件、将lib文件夹拖入Books文件夹中,并将lib文件夹拷贝到/var/目录下。以上方法适用于已经越狱且出现Cydia数据库错误的iPhone手机。 ... [详细]
  • 《数据结构》学习笔记3——串匹配算法性能评估
    本文主要讨论串匹配算法的性能评估,包括模式匹配、字符种类数量、算法复杂度等内容。通过借助C++中的头文件和库,可以实现对串的匹配操作。其中蛮力算法的复杂度为O(m*n),通过随机取出长度为m的子串作为模式P,在文本T中进行匹配,统计平均复杂度。对于成功和失败的匹配分别进行测试,分析其平均复杂度。详情请参考相关学习资源。 ... [详细]
  • Android源码深入理解JNI技术的概述和应用
    本文介绍了Android源码中的JNI技术,包括概述和应用。JNI是Java Native Interface的缩写,是一种技术,可以实现Java程序调用Native语言写的函数,以及Native程序调用Java层的函数。在Android平台上,JNI充当了连接Java世界和Native世界的桥梁。本文通过分析Android源码中的相关文件和位置,深入探讨了JNI技术在Android开发中的重要性和应用场景。 ... [详细]
  • Ubuntu 用户安装 Linux Kernel 3.15 RC1
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
author-avatar
麦尔小哈PICA
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有