分类: LINUX
2009-03-06 09:30:17
最小光盘 LiveCD CPU i486或更新 i686或更新 内存 64MB 256MB 硬盘空间 1.5GB(不包括交换分区) 交换分区 至少256MB |
硬件选项: acpi=on 加载对ACPI的支持,在启动光盘的同时启动acpid后台程序。这个选项只有 在你的系统需要ACPI才能正常运行的情况下才需要。启用超线程的支持 这个选项不是必需的。 acpi=off 完全关闭ACPI。这在一些比较老的系统上有用,同时也是使用高级电源管 理(APM)的必要选项。这也将关闭对你的处理器的超线程的支持。 console=X 这个选项可以设置光盘的串口访问。第一个选项是设备,在x86上通常为 ttyS0,后面可以跟其他选项并用逗号分隔。默认选项为9600,8,n,1。 dmraid=X 这个选项用于向设备映射器RAID子系统传递参数。传递的参数必须包含 在引号内。 doapm 这个选项加载高级电源管理(APM)驱动支持。这需要你同时使用acpi=off 选项。 dopcmcia 这个选项加载了对PCMCIA和Cardbus硬件的支持,也使得pcmcia卡的 cardmgr能够在光盘启动的时候运行起来。这个选项只有在从 PCMCIA/Cardbus设备启动的时候才需要。 doscsi 这个选项加载对大部分SCSI控制器的支持。在大多数USB设备启动的时候 也需要这个选项,因为USB设备使用内核中的SCSI子系统。 sda=stroke 这个选项允许你对整个硬盘进行分区,即使你的BIOS不能处理大硬盘。 此选项仅使用在使用旧BIOS的机器上。使用时把sda替换为需要这个选项 的设备。 ide=nodma 此选项强制关闭内核中的DMA,一些IDE和CDROM驱动需要这个选项。如果 你的系统在读取IDE接口的光驱的时候遇到麻烦,可以尝试一下此选项。 此选项同时也将关闭hdparm的默认设置。 noapic 此选项关闭了在一些新主板上存在的高级可编程中断控制器。它在一些旧 的硬件上会引发一些问题。 nodetect 此选项降会关闭光盘会做的所有自动检测,包括设备检测和DHCP探测。这 在调试有问题的光盘或驱动的时候有用。 nodhcp 此选项将禁止在检测到的网卡上进行DHCP探测。这对仅有静态地址的网络 很有用。 nodmraid 关闭了设备映射RAID的支持,例如用于板载IDE/SATA RAID的控制器。 nofirewire 此选项关闭了Firewire模块加载。这个选项只有在你的Firewire硬件导致 光盘启动出现问题的时候才需要。 nogpm 此选项关闭了gpm控制台鼠标支持。 nohotplug 此选项关闭启动时对热插拔(hotplug)和冷插拔(coldplug)启动脚本的加 载。这个选项在调试失败的光盘和驱动的时候有用。 nokeymap 此选项禁止了键盘布局选择。 nolapic 此选项关闭了在单处理器内核上的本地APIC。 nosata 此选项关闭了对串行ATA(SATA)模块的加载。当你的系统的SATA子系统有 问题的时候,此选项有用。 nosmp 此选项关闭了在支持SMP(对称式多处理)的内核中的SMP功能。这个选项用 于调试在特定的驱动和主板上与SMP相关的问题。 nosound 此选项关闭了声音支持和音量的设置。这个选项在声音支持出现问题的系 统上有用。 nousb 此选项关闭了USB模块的自动加载。这个选项在调试USB问题时有用。 slowusb 这个选项在启动过程中增加一些额外的暂停,主要是为了一些慢速USB CDROM,例如IBM BladeCenter的。 卷/设备管理: doevms 此选项打开了对IBM的可插拔EVMS(企业卷管理系统)的支持。这个选项与 lvm同时使用并不安全。 dolvm 此选项打开对Linux逻辑卷管理(lvm2)的支持。这个选项与evms同时使用 并不安全。 其他选项: debug 启用调试代码。这个选项会在屏幕上显示很多数据,可能会很凌乱。 docache 此选项把光盘中整个运行部分缓存到内存中,你就可以umount /mnt/cdrom 然后mount另一个CDROM。此选项要求你至少有两倍于CDROM的可用内存。 doload=X 此选项使得初始内存盘加载任何列出的及其依赖的模块。把X替换成模 块名称。多个模块可以用一个逗号分隔的列表来指定。 dosshd 启动sshd,对于无人职守安装有用 passwd=foo 将foo设置为root用户密码;若使用dosshd必须使用此选项,否则我们会 将root密码设为随机值。 noload=X 此选项使得初始内存盘跳过那些指定的可能引起问题的模块。语法同 doload。 nonfs 启动是不启动portmap/nfsmount。 nox 此选项使得一个支持X的LiveCD不自动启动X,而是启动到命令行模式。 scandelay 此选项使光盘在启动过程的特定部分暂停10秒,以允许那些初始化比较慢的 设备能够被使用。 scandelay=X 此选项允许你在启动过程的特定部分指定暂停指定的秒数,以允许那些 初始化比较慢的设备能够被使用。把X替换成暂停的秒数。 注意: 本CD将会先检查“no*”选项,然后再检查“do*”选项,所以你可以以你指定的顺序来覆盖任意选项。 有些在其它发行版也适用哦。 |
max ~ # fdisk -l Disk /dev/sda: 6442 MB, 6442450944 bytes 255 heads, 63 sectors/track, 783 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Disk identifier: 0x44509001 Device Boot Start End Blocks Id System /dev/sda1 1 3 24066 83 Linux /dev/sda2 4 35 257040 82 Linux swap / Solaris /dev/sda3 36 783 6008310 83 Linux max ~ # |
mkswap /dev/sda2 swapon /dev/sda2 |
#mount /dev/sda3 /mnt/gentoo # mkdir /mnt/gentoo/boot # mount /dev/sda1 /mnt/gentoo/boot # cd /mnt/gentoo |
tar xvpjf stage3-i686-2008.0.tar.bz2 tar xvjf /mnt/gentoo/portage-latest.tar.bz2 -C /mnt/gentoo/usr |
# nano -w /mnt/gentoo/etc/make.conf |
CHOST CHOST变量声明了你的系统的target、build和host(译注: target定义了编译出的工具链产生的代码将运行的系统类型,只在编译工具链时有意义;build定义了本机系统类型;host定义了编译出的软件将运行的系统类型)。这个变量应该已经被设置为正确的值了。不要编辑它,这可能会毁坏你的系统。如果CHOST变量看起来是不正确的,你也许使用了错误的stage3 tarball。 白话白话 CFLAGS和CXXFLAGS CFLAGS和CXXFLAGS变量分别定义了gcc C和C++编译器的优化标记。尽管我们通常都在这里定义,你也可以对每个软件单独定义这些优化标记以获得最好的性能。因为每个程序都是不同的。 在make.conf里你应该定义一些你认为可以使系统在一般情况下快速响应的优化标记。 这些默认的都行,我也就在后面加了MAKEOPTS="-j2"而已 MAKEOPTS 通过使用MAKEOPTS你可以定义在安装软件的时候同时可以产生并行编译的数目。你的CPU数目加一是个不错的选择,但是这个准则并不永远都是完美的。 |
# mirrorselect -i -o >> /mnt/gentoo/etc/make.conf |
# mirrorselect -i -r -o >> /mnt/gentoo/etc/make.conf |
cp -L /etc/resolv.conf /mnt/gentoo/etc/ |
# mount -t proc none /mnt/gentoo/proc # mount -o bind /dev /mnt/gentoo/dev |
# chroot /mnt/gentoo /bin/bash # env-update >> Regenerating /etc/ld.so.cache... # source /etc/profile # export PS1="(chroot) $PS1" (PS1 可以随便定义,你觉得好看就行) |
USE是Gentoo为用户提供的最具威力的变量之一。很多程序通过它可以选择编译或者不编译某些可选的支持。例如,一些程序可以在编译时加入对gtk或是对qt的支持。其它的程序可以在编译时加入或不加入对于SLL的支持。有些程序甚至可以在编译时加入对帧缓冲的支持(svgalib)以取代X11(X服务器)。 大多数的发行版会使用尽可能多的支持特性编译它们的软件包,这既增加了软件的大小也减慢了启动时间,而这些还没有算上可能会涉及到的大量依赖性问题。Gentoo可以让你自己定义软件编译的选项,而这正是USE要做的事。 在USE变量里你可以定义关键字,它被用来对应相应的编译选项。比如,ssl会让程序在它编译时加入对它的支持。-X会移除其对于X服务器的支持(注意前面的减号)。gnome gtk -kde -qt3 -qt4将会在你编译软件的时候添加对gnome(和gtk)的支持,并且移除对kde(和qt)的支持,这可以让你的系统尽可能多的为GNOME做优化。 默认的USE设置位于你profile的make.defaults文件里。你可以在符号连接/etc/make.profile所指向的目录和它所有的父目录里找到make.defaults文件。默认的USE设置是所有make.defaults文件里USE的集合。所有你放在/etc/make.conf里的USE都会根据默认设置重新计算。如果你添加了一些USE的设置,它会被增加到默认的列表里。如果你删除了一些USE设置(通过放一个减号到它前面),它将被从默认的列表里移除(如果它确实在默认列表里的话)。绝对不要改变/etc/make.profile目录里的任何东西,它会在你更新Portage的时候被覆盖掉! |
# less /usr/portage/profiles/use.desc |
USE="-gtk -gnome qt3 qt4 kde dvd alsa cdr" |
en_US ISO-8859-1 en_US.UTF-8 UTF-8 |
# emerge gentoo-sources |
# cd /usr/src/linux # make menuconfig |
现在选择正确的处理器类型: 代码 3.2: 选择正确的处理器类别 Processor type and features ---> (Change according to your system) (Athlon/Duron/K7) Processor family 现在进入File Systems并且选择您使用的文件系统。请不要把它们编译成模块,否则您的Gentoo系统将不能挂载您的分区。同时您也要启用Virtual memory和/proc file system的支持。 选择需要的文件系统 File systems ---> Pseudo Filesystems ---> [*] /proc file system support [*] Virtual memory file system support (former shm fs) #-#-#-#-# choice #-#-#-#-# (依照你系统的需要启用下面所列出的一个或是多个选项) <*> Reiserfs support <*> Ext3 journalling file system support <*> JFS filesystem support <*> Second extended fs support <*> XFS filesystem support 启用SMP支持 Processor type and features ---> [*] Symmetric multi-processing support 注意: 在多核心系统中,处理器的数目相当于核心的数目。 如果你有多于4GB的内存,你需要启用"High Memory Support (64G)"。 如果您使用USB输入装置(比如键盘或者鼠标)那么不要忘记支持它们: 启用USB接口的输入设备支持 Device Drivers ---> [*] HID Devices---> <*> USB Human Interface Device (full HID) support 如果你想要对你的笔记本的PCMCIA支持,也不要忘了在系统中允许PCMCIA card bridge。 启用PCMCIA支持 Bus options (PCI, PCMCIA, EISA, MCA, ISA) ---> PCCARD (PCMCIA/CardBus) support ---> <*> PCCard (PCMCIA/CardBus) support (如果您需要使用老式的PCMCIA卡,选择16位。大多数人需要。) <*> 16-bit PCMCIA support [*] 32-bit CardBus support (选择相关的bridges) --- PC-card bridges <*> CardBus yenta-compatible bridge support (NEW) <*> Cirrus PD6729 compatible bridge support (NEW) <*> i82092 compatible bridge support (NEW) <*> i82365 compatible bridge support (NEW) <*> Databook TCIC host bridge support (NEW) |
# make && make modules_install |
# cp arch/i386/boot/bzImage /boot/kernel-2.6.24-gentoo-r5 |
# emerge genkernel |
# zcat /proc/config.gz > /usr/share/genkernel/x86/kernel-config-2.6 |
#genkernel all |
max ~ # cat /etc/fstab /dev/sda1 /boot ext2 defaults,noatime 1 2 /dev/sda2 none swap sw 0 0 /dev/sda3 / ext3 noatime 0 1 max ~ # |
max ~ # cat /etc/conf.d/hostname # /etc/conf.d/hostname # Set to the hostname of this machine HOSTNAME="max" max ~ # max ~ # cat /etc/conf.d/net # This blank configuration will automatically use DHCP for any net.* # scripts in /etc/init.d. To create a more complete configuration, # please review /etc/conf.d/net.example and save your configuration # in /etc/conf.d/net (this file :]!). config_eth0=( "192.168.228.238 netmask 255.255.255.0 brd 192.168.228.255" ) routes_eth0=( "default via 192.168.228.153" ) #config_eth0=( "dhcp" ) max ~ # |
# rc-update add net.eth0 default |
# cd /etc/init.d # ln -s net.lo net.eth1 # rc-update add net.eth1 default |
# emerge pcmciautils |
# emerge syslog-ng # rc-update add syslog-ng default |
#emerge slocate |
# emerge dhcpcd |
max ~ # cat /boot/grub/grub.conf # This is a sample grub.conf for use with Genkernel, per the Gentoo handbook # # If you are not using Genkernel and you need help creating this file, you # should consult the handbook. Alternatively, consult the grub.conf.sample that # is included with the Grub documentation. default 0 timeout 30 splashimage=(hd0,0)/boot/grub/splash.xpm.gz title Gentoo Linux 2.6.24-r5 root (hd0,0) kernel /boot/kernel-genkernel-x86-2.6.27-gentoo-r8 root=/dev/ram0 init=/linuxrc real_root=/dev/sda3 initrd /boot/initramfs-genkernel-x86-2.6.27-gentoo-r8 # vim:ft=conf: max ~ # |
# grep -v rootfs /proc/mounts > /etc/mtab 安装 喽 # grub-install --no-floppy /dev/sda |
# exit cdimage ~# cd cdimage ~# umount /mnt/gentoo/boot /mnt/gentoo/dev /mnt/gentoo/proc /mnt/gentoo cdimage ~# reboot |
# emerge -pv xorg-server 安装Xorg # emerge xorg-x11 |
# env-update # source /etc/profile 创建xorg.conf文件 # Xorg -configure 测试xorg.conf.new文件 # X -config /root/xorg.conf.new 拷贝xorg.conf # cp /root/xorg.conf.new /etc/X11/xorg.conf 如果在home目录下存在一个名为.xinitrc的文件,它将会执行文件中列出的命令。 启动X # startx |
# emerge gnome-light
更新环境变量
# env-update && source /etc/profile
如果您认真观察前面emerge命令的输出,会注意到它建议使用gamin让nautilus和gnome-vfs监视文件的变动:
安装gamin,一个文件变更监视器 | ||
# emerge gamin 接下来我们做完剩余的服务。
设定GNOME为默认桌面环境 |
将xdm添加到默认运行级别 |
# rc-update add xdm default |
现在编辑/etc/conf.d/xdm并修改DISPLAYMANAGER变量。
编辑/etc/conf.d/xdm |
DISPLAYMANAGER="gdm" |
如果您现在重启,GNOME显示管理器就会提示您输入用户名和密码,并且将默认使用GNOME作为桌面环境(尽管肯定会有一个选项让您可以从/usr/share/xsessions/中选择另一个可用的)。这样的话,如果您使用GDM,就不需要编辑~/.xinitrc了。
Grub 也是很好看地。