| 
 
          [ << ]
        
          [ < ]
        
      [ 主页 ]
      
            [ > ]
          
            [ >> ]
           
 7. 配置内核内容:7.a. 时区 
您首先需要选择您自己的时区,这样可以让系统知道它的位置在哪里。您可以在/usr/share/zoneinfo中找到您所在的时区,然后把它复制到/etc/localtime。请不要使用/usr/share/zoneinfo/Etc/GMT*下的时区,因为它们“名不副实”。例如,GMT-8事实上是GMT+8区。
 
| 代码 1.1: 设置时区信息 |  | 
# ls /usr/share/zoneinfo
# cp /usr/share/zoneinfo/GMT /etc/localtime
 |  7.b. 安装源码 选择内核 
Linux内核是所有发行版的核心。它位于用户程序和系统硬件之间。Gentoo提供给我们几个可选的内核源码。完整的清单参见Gentoo内核指南。
 
对于PPC64你应该使用gentoo-sources。
 
| 代码 2.1: 安装内核源码 |  | 
# emerge gentoo-sources
 |  
当您查看/usr/src时,您将会看到一个叫做linux的符号链接指向您安装的内核源码。在我们这个例子中,安装的源码指向gentoo-sources-2.6.19-r7。你的版本可能会不同,所以请记住这点。
 
| 代码 2.2: 查看内核源码符号链接 |  | 
# ls -l /usr/src/linux
lrwxrwxrwx    1 root    root       12 Aug 10 11:04 /usr/src/linux -> linux-2.6.19-r7
 |  
现在,我们开始配置和编译您的内核。您可以用“genkernel”来做这件事。这将会建立一个和安装光盘所用的内核类似的通用内核。不过目前PPC64并不能完全工作正常。
 
现在请继续阅读手动配置你的系统。 
 7.c. 手动配置 介绍 
手动配置内核经常被Linux使用者认为是最困难的步骤。事实并非如此——当您手动配置几次内核之后,您就不会再觉得它有多么难了:)
 
然而,一件事情是真的:在手动配置内核之前,您必须了解您的系统。您可以安装pciutils(emerge pciutils),用其中的lspci来了解您需要的大部分信息。您现在可以在chroot的环境中运行lspci。您可以忽略任何pcilib的警告。(类似于pcilib: cannot open/sys/bus/pci/devices)。此外,您也可以在非chroot的环境执行lspci。结果相同。您还可以运行lsmod来查看安装光盘使用了哪些内核模块。(这也是个不错的提示,它可以教你该选择哪些模块)。
 
| 代码 3.1: 调用menuconfig |  | 
# cd /usr/src/linux
# make menuconfig
 |  
您将会看到一些配置条目。首先我们将会列出一些您必须启用的选项(否则Gentoo将根本不能运行或者在未经调试的情况下不能正常运行)。
 启用必须的选项 
首先,开启development and experimental code/drivers。您必须激活它,否则,您将无法看到一些非常重要的代码/驱动:
 
| 代码 3.2: 选择experimental code/drivers |  | 
General setup --->
  [*] Prompt for development and/or incomplete code/drivers
 |  
现在转到File Systems,选中你使用的文件系统的支持。不要将它们编译成模块,否则Gentoo将无法正常地挂载你的分区。另外选中/proc file system和Virtual memory以及/dev/pts file system for Unix98 PTYs:
 
| 代码 3.3: 选中必需的文件系统 |  | 
File systems --->
  [*] Virtual memory file system support (former shm fs)
  [*] /proc file system support
  [*] /dev/pts file system for Unix98 PTYs
  <*> Reiserfs support
  <*> Ext3 journalling file system support
  <*> JFS filesystem support
  <*> Second extended fs support
  <*> XFS filesystem support
 |  | 注意: 
你会发现在Pseduo filesystems中提及的选项只不过是File systems中一部分。
 | 
 
如果您在使用PPPoE接入Internet或者您在使用拨号的调制解调器,您需要下面内核中的选项(你会发现在Networking support中提到的选项只是Device Drivers中的一部分:
 
| 代码 3.4: 选中PPPoE需要的驱动 |  | 
Network device support --->
  <*> PPP (point-to-point protocol) support
  <*>   PPP support for async serial ports
  <*>   PPP support for sync tty ports
 |  
两个压缩选项不会造成什么错误,不过它们不是必需的。PPP over Ethernet选项也不是必需的,只在使用ppp并被配置成是使用核心模式PPPoE时才会用到它。
 
如果您需要它,请不要忘记在内核中包含对您的网卡的支持。
 
禁掉ADB raw keycodes:
 
| 代码 3.5: 禁掉ADB raw keycodes |  | 
Macintosh Device Drivers --->
  [ ] Support for ADB raw keycodes
 |  
当你配置好你的内核后,请继续阅读编译和安装。
 编译和安装 
现在你的内核已配置好,是时候来编译和安装它了。退出配置菜单,然后运行编译内核的命令:
 
| 代码 3.6: 编译内核 |  | 
# make && make modules_install
 |  
当你的内核编译完成之后,复制内核镜像至/boot目录。记住用你实际的内核版本替换<kernel-version>: 
 
| 代码 3.7: 安装内核 |  | 
# cp vmlinux /boot/<kernel-version>
 |  
现在请继续阅读配置内核模块。
 7.d. 配置模块 
你应该将你想在启动时加载的模块列在/etc/modules.autoload.d/kernel-2.6中。如果你需要你也能为你的模块加上额外的选项。
 
要查看所有可用的模块,运行如下的find命令。不要忘记把“<kernel version>”替换成你刚编译好的内核版本:
 
| 代码 4.1: 查看所有可用的模块 |  | 
# find /lib/modules/<kernel version>/ -type f -iname '*.o' -or -iname '*.ko'
 |  
比如,要自动加载3c59x.ko模块,编辑文件kernel-2.6并在其中输入模块名。
 
| 代码 4.2: 编辑/etc/modules.autoload.d/kernel-2.6 |  | 
# nano -w /etc/modules.autoload.d/kernel-2.6
 |  
| 代码 4.3: /etc/modules.autoload.d/kernel-2.6 |  | 
3c59x.ko
 |  
请阅读配置你的系统来继续安装。
 
 
          [ << ]
        
          [ < ]
        
      [ 主页 ]
      
            [ > ]
          
            [ >> ]
           
 本文档的内容遵循知识共享-署名-相同方式共享许可协议 |