高级配置和管理<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
一、编译环境
1、编译环境一切软件的运行基础
2、查看编译环境 rpm -qa|grep gcc
3、配置如何去编译软件步骤:
是配置(确定软件的安装位置),linux通常把这项工作交给configure完成,而configure通常由Autoconf软件根据情况产生,这是一个脚本文件,会自动完成编译所需要的各种配置.通常在源代码目录下都会有一个configure的可执行文件.
以下方式可得到和该软件配置相关的所有选项
cd some_souece_dir
./configure -help
(对于目录中没有configure或Makefile的程序包,很可能是已经编译好的二进制文件,只要执行安装就可以了,请马上阅读目录中的README或install开头的文本文件,这些文件或详细说明如何安装次软件.如果程序包是perl模块,可能需要运行perl Makefile.PL来生成Makefile文件).
然后是编译,编译是根据某些规则将源程序连接成为对象文件{后缀为.o},即中间文件.然后将这些文件连接为可执行文件或者动态共享库.完成这两类操作的程序是make和link、ld
安装工作也是由脚本来完成的.一般就是把对应的文件复制到对应的目录,并确保其属性正确.Make install就能完成上述操作.
4、内核配置编译
下载解压 tar xvfz linux-2.6.18.tar.gz
编译方式:终端文件界面(make config)终端图形界面(make menuconfig)图形化界面(make xconfig或make gconfig)
常见的内核选项(make menuconfig)
菜单中的约定
-->子菜单<>内核的功能,其下有可能有一些属性[]表示上面功能的属性()输入项
比较重要且容易出错的选项
第一个子菜单【Code maturity level option】下的prompt,就是是否启用那些还在开发测试中的功能或属性.如果不选择很多新硬件和新特性将不可用.很多pc服务器的硬件如网卡和raid卡都可能出现问题.
第三个子菜单【Loadable module support】控制内核是否支持内核模块的加载,这里的选项基本都应该以*方式选择.
第四个子菜单【Block Layers】控制内核支持磁盘大小.如果磁盘超过2TB,就需要选择其中的项目.
关系到内核能否成功启动,除了一些核心功能外,可供选择的项目中,虚拟文件系统(【File System】菜单下及其下的【pseudofilesystems下】)、真实文件系统(【File systems】)、raid/scsi(【Device Driver】)类型和网卡类型(【Device Driver】-->【Nerwork Device support】)是置关重要的.
以上是让系统启动并运转的必备条件,而要想系统的性能发挥到最佳,主要在于cpu管理、内存管理上.
第五个子菜单【Process Type and features】对系统性能影响非常大,它直接确定内核如何调用cpu,如果你的cpu是多处理器应选择smp
默认配置内核不支持大内存,此时它只能寻址到512M.
5、如何安装新的内核
使用make menuconfig完成后,直接运行make就可以把内核镜像和模块编译好.在完成make工作后,可以直接把bzImage复制到/boot目录下并重新命名为vmlinux-2.x.x,然后运行模块安装命令make modules_install(这个命令会将所有模块复制到/lib/modules/2.6.x下).,我们在启动加载器中更改设置以便在下次启动时加载新的内核grub下,可以运行命令update-grub,来自动更新grup的配置文件(grub配置文件通常在/boot/grub/menu.list或者/儿童床、grub、rub.conf)可植入认证模块.
|
|