LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1832|回复: 16

gentoo安装笔记(本人至今最长的帖)

[复制链接]
发表于 2006-10-23 19:02:33 | 显示全部楼层 |阅读模式
原帖地址:http://www.herofit.cn/2006/10/22_31

我觉得应该把主流的linux版本都试一下。前些天无意到gentoo区看了几篇置顶帖,有些触动,后来又去gentoo官网看了一些安装文档,于是决定装个gentoo试试。第一次安装,还是准备不足,碰到很多麻烦。一路摸索过来,虽然还有一些问题没有解决,现在终于得到一个可用的系统了。
下面简单写一下我经历的安装过程:

我先到http://www.gentoo.org/main/en/mi ... 下载livecd-i686- installer-2006.1.iso,我还下了文档中提到的stage3(其实不用下)。 检验下到的iso镜像,无误后刻成光盘。

用光盘启动电脑,我不知道竟然是启动到GUI模式的(这下我才明白为什么叫livecd)。

等10 秒,默认以gentoo登陆。点击桌面上安装图标启动安装程序(我启动的是gtk+的),然后进行一系列选择。很遗憾,我第一步就选错了,安装模式选成了默认的。于是每次到17步的 install都会出现一大堆问题。主要是分区出的问题,因为我在安装前把系统中放有stage3文档的分区挂了上来,因为有一步需要选择stage3文件的位置。

几次失败后,我决定先在安装程序外分完区,再进行安装。 按ctrl+alt+f1换到终端1,看到已经以root登陆。

    passwd


换一个root密码。然后按ctrl+alt+f7回到GUI下。

    su


切换到root身份。

    fdisk /dev/hda


开始分区。原来装ubuntu时交换空间太小了,待机后经常起不来。于是先把swap及它的后一个分区删掉,然后建立520MB的linux分区,此处为 /dev/hda9;再建立一个100MB的linux分区,此处为/dev/hda10;最后把剩下的划为/dev/hda11,大小为7个G左右。
重启,获得root权限后开始建立文件系统。

    mkswap /dev/hda9
    mkfs.ext2 /dev/hda10
    mkfs.reiserfs /dev/hda11


当时第一步忘了,走了些弯路。

分好了,重新运行安装程序,老说设置路由失败。 后来在root运行安装程序,同样出现这个问题。设成dhcp后又出现其它的问题。

没办法,只好看光盘上的文档。 突然看到pdf中提到一句话,第一步应该选择“network-less",于是按它说的做。由于是试验性的,而且文档及安装程序中提示“不联机,可能无法选择一些软件包”,所以在后面的选择软件包的时候我什么没有选。

挂载点选择时,不小心把想要的/mnt/hda1写成了/dev/hda1,结果又出错好几回。郁闷。

后来总算把gentoo装上了。 一重启我都郁闷了,只有字符界面?! 到现在我也一直在想,是我当时没把x11,gnome等选上的原因,还是这就是gentoo的特色(谁来解释一下?)。

不管那么多了,开始简单试一试先。
先看一下能上网不?很遗憾,不能,根据gentoo_network_configuration.txt的说明,把/etc/conf.d/net改成类似下面的样子。

    modules=( "ifconfig" )
    config_eth0=( "219.216.xxx.25 netmask 255.255.255.0" )
    routes_eth0=(
    "default via 219.216.xxx.254" # IPv4 default route
    )

    /etc/init.d/eth0.net start


提示没有网络设备。
手动加载网卡驱动。

    modprobe 8139cp
    modprobe 8139too


这下网卡驱动起来了。避免麻烦,我将两个模块都加入了/etc/modules.autoload.d/kernel-2.6,让系统启动时自动加载(后面发现,8139cp这个用不着)。

    /etc/init.d/eth0.net restart


这下可以上网了。

接着试了一下光驱,手动挂载可以用,U盘也一样。

现在,开始一些关键性操作了。
先是编辑/etc/make.conf。
由于是教育网的,加入

    GENTOO_MIRRORS="ftp://ftp3.tsinghua.edu.cn/mirror/gentoo ftp://ftp.sjtu.edu.cn/gentoo"
    SYNC="rsync://ftp3.tsinghua.edu.cn/gentoo/gentoo-portage"


可以加入多个镜像站点,之间用空格隔开即可。
编辑USE参数,这里我只是简单地把ipv6改成了-ipv6。

    emerge --sync


这步相当于升级软件列表,第一次可能需要五分钟左右。
系统默认使用nano作为编辑器,非常不习惯。先把vim装上

    emerge vim


现在开始升级内核。

    emerge genkernel


genkernel是编译内核的工具,非常方便。一会儿要用。
下载推荐的内核源码。这里用推荐的gentoo-sources内核。

    emerge gentoo-sources


用genkernel 编译内核,如果你以前有内核的.config文件,可以用 --kernel-file=XX来指定。如果你想让genkernel编译后自动在grub中加入相应选项,应该将 /etc/genkernel.conf中的BOOTLOADER="grub"前的注释去掉。默认情况下,genkernel会将menuconfig 生成的配置文件存在/etc/kernels/文件夹下,再次编译时应该很有用。

    genkernel --menuconfig all


选择适当的编译选项,把没用的去掉。把必须要的加上,比如我就把8139的网卡编译到内核里了。
由于编译期间什么也不输出,为了确保genkernel在工作。你可以再开一个终端用top查看cpu占用率或有否cc,make等程序在运行。
编译完后,手动检查/boot/grub/menu.lst中是否加入新内核的项目,没有则手动加上。
重启,用新内核启动。

    shutdown -r now


或用ctrl+alt+delete重启。

用新内核启动。
我这里情况一切正常。不过/etc/modules.autoload.d/kernel-2.6原来加入的东西现在要去掉了,否则会用一个错误提示。

第一次系统彻底升级。

    emerge --pretend --update --deep world|less


先用less看一下需要升级多少东西。
下载升级包。

    emerge --update --deep world --fetchonly


先下载。有很多软件要装时,我习惯先下载完。
这时候出现了很大的问题。因为x11-misc/utils-macros需要从freedesktop.org下载,而我这里是教育网,无法直接访问。因为习惯了ubuntu源的概念,以为所有的软件包都是在源里的。因此我还一度认为这是gentoo源的bug,不过我不是唯一这么认为的人,因为官方网站上就有人把这个问题当bug提交上去了。后来到linuxsir发帖求助。通过大家帮助找到了解决方法--是用代理。

    export http_proxy="ip:port"


然后就可以完成下载了。估计是emerge用的wget用了这个代理。
注意一个问题,如果把上面的export去掉,用set是可以看到http_proxy的,但很明显,wget看不到。不用代理时记得

    unset http_proxy


升级。

    emerge --update --deep world


把--fetchonly去掉就可以了。这里可能需要不少时间,特别是gcc,glic等。我发现gcc把对fortran的支持编上了,而我几乎没可能用到,下次编我会研究一下怎么让它不编上fortran,不知道加上-fortran行不行。
上面的过程最后可能会提示需要改写一些conf文件。这时候可以用etc-update帮忙。

    etc-update


这个工具会试着自动解决问题,当它不能时,会要求你手动编辑。像这里的情况,我们要保留自己编辑过的/etc/conf.d/net,否则又得重新配置了。注意etc-update可能会经常用到。

现在,装上x window吧。
早就想xfce4了,今天就装这个(其实是考虑这个能小的,不用费太多时间)。

    emerge xfce |less


看一下要装多少软件。好像是一百多个。多数是基本x window系统。

    emerge xfce --fetchonly


下载先。

    emerge xfce


安装。搞定后,就可以用startxfce启动xfce环境了。还有,我现在是在ubuntu里,不记得上面的命令里应该是xfce还是xfce4了,大家自己试。
xfce用的gtk+,所以一切看上去都挺像gnome的。
之后我又想把KDE或gnome装上,对比后KDE需要92个包,而gnome需要两百多个。本着经济的原则,我选择了KDE。下载很快就完成,但KDE的整个编译安装用了我9个小时。崩溃了!也直接造成我放弃安装gnome(下都下完了)。
试图运行startkde但没成功,不过运行starx后起来了xterm还是qterm什么的,在里面可以运行kdesktop类似命令启动起来。本来想换用gdm或kdm的,但一时没什么方向(当时都不知道查man X,也不知道gentoo.linuxsir.cn上的文档版块有很多好东西),但xdm倒是很轻松的用上了。

    rc-update add xdm default


图形登陆这些不是主要矛盾。 但我发现我必须安装firefox,因为xfce4下的那个kde下的全能家伙(k*)并不能显示所有的中文(字体就别提了),而且也几乎用不了ajax的东西。

    emerge mozilla-firefox --fetch
    emerge mozilla-firefox


这下所有中文都能显示了(字体还是糟糕)。下面安装flash插件。

    emerge netscape-flash


一句话就搞定。
下面开始新建普通权限用户gahlong。
useradd gahlong
passwd gahlong
由于,我的gentoo用的是和ubuntu同一个分区作为/home,我担心gentoo把ubuntu的/home/ahlong覆盖了,所以我取名叫gahlong(后面发现这个担心没必要)。
用gahlong登陆提示没主目录。

    mkdir /home/gahlong
    usermod -d /home/gahlong gahlong


本来还准备chown的,但usermod好像已经帮我们做了。这下登陆正常了,不过还是有点不爽,我要改登陆名。

    usermod -l ahlong gahlong


同样地,usermod也改了/home/gahlong为ahlong的了。
安装xmms。到现在还没有听到电脑出声呢。

    emerge xmms


什么声音也不出。看起来声卡得配一下。编译内核时我已经把alsa编过内核的,还需要干什么呢?

    emerge --search alsa|less


我把搜到的都往上装。

    emerge alsa-drivers alsa-utils


编译alsa-drivers时提示内核已经有了,自动跳过。装上后一个后。可以开始配置声卡了。

    alsaconf


选择就是了。

    alsamixer


设置音量什么,不过好像不是必须要运行。
这样之后,xmms正常工作了。
如果普通用户不能使用声卡。运行
usermod -G audio -a ahlong
将用户加入audio组再重新登陆就可以了。
我要看电影,装mplayer。

    emerge mplayer


一些包是从sf.net下的,所以又要用代理。
不过下到Blue皮肤时,提示验证码不对。试了几次都不对,这下郁闷了。后来看了linuxsir的gentoo解决之道。运行

    emerge --sync


问题解决。顺便装上了mplayer。看来gentoo真是发展神速。差不多每天更新,源里都删掉很多又加入很多。
不过用mplayer看电影,放大或全屏时,掉帧相当严重,几乎不能看。mplayer也输出“你的机器太慢了”。试了几种输出驱动都没有改善。在ubuntu下我用的是gl2输出……对了,得装ATI驱动。

我下面的计划是安装显卡驱动,接着装WQY字体,接着把gdm什么的搞定。
安装ATI显卡驱动。

    emerge ati-drivers


默认装上的是8.25.18,不过源里8.29.6也已经有了。一切都很顺利。不过运行

    aticonfig --initial


有些问题,提示没有xorg.conf,去/etc/X11下看下,果然没有这个东西。我就直接拷了ubuntu的来用,居然也能用。
不过后面知道,这个时候应该做的是

    X -configure


然后再aticonfig --inital
检查3D加速是否安装成功。

    fglrxinfo


结果还是mesa,而且mplayer的表现也没有任何提升(重启后也是)。

    eselect opengl list


发现系统选个还是mesa,于是

    eselect opengl set ati


强制选成ati,除了list里变成了ati,没有任何实质性改善。不仅如此,fglrxinfo还不能给出相关信息了。
后面又做了很多尝试,比如说卸掉驱动,再手动运行ati*.run安装等等。
在网上找寻了很久,再结合X启动时的错误信息(一直被我忽略)。
终于搞清楚,是ATI和XOrg7.1的配合有问题,具体说是和AIGLX有些问题。网上很多人都遇到了这个问题,不过好像都没有实质解决办法。没办法,只能等fglrx或Xorg的下一版本了。不过这个问题幸好只是影响到3D加速,不影响2D加速。

不过看电影都不能流畅,我没信心再用下去了,还是等这个问题解决了再用了。虽然ATI大部分显卡都可以用开源驱动,但好像有点复杂,而且很可能从Xorg开始都需要重新编译(从gentoo文档上看的),耗不起那个时间了。

另外想提的是,emerge或者说portage挺先进的。和apt-get相比一个明显的优势就是可以多个emerge一起完全正常地运行。

gentoo真不错!推荐大家都试一下!

相关网址:
http://www.gentoo.org./doc/en/handbook/handbook-x86.xml
gentoo历史
gentoo常用镜像
gentoo中文文档(真后悔安装前没看)
发表于 2006-10-23 19:47:49 | 显示全部楼层
1 上不去网络是因为你没有把livecd的
/etc/resolv.conf
复制到新的系统里面

2 这个是我的网络配置文件.相信也适合你.
把那个 nodns 去掉,可以自动生成/etc/resolv.conf
你可以选择使用dhclient或者dhcpcd

$ 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 :]!).
modules=("dhclient")

config_eth0=("dhcp")
dhcpcd_eth0="-t 30"
dhcp_eth0="release nodns nontp nonis"

3 xorg,gnome,kde这些都是需要自己安装的.不安装是没有的.

4 gentoo是基于源代码的发行版,编译时间长是肯定的.

5 flash9发布了.装装看.

6 在linux里面看电影,目前一般用xv输出效果好也省资源.放大掉帧可能你需要一个zoom=yes

7 ati显卡驱动看教程.安装好了不要忘了把xv的overlay打开.

gentoo的官方英文文档(包括ati显卡的安装)都在
http://www.gentoo.org/doc/en/list.xml
gentoo的wiki里面也有好多好东西.

把里面的use多看看.那个是gentoo的重要特色.知道/etc/portage/里面的几个文件的用途.可能以后会经常用到.
学会使用overlay(就是自己的portage树),以后也会经常用到.
回复 支持 反对

使用道具 举报

发表于 2006-10-23 19:52:09 | 显示全部楼层
我的make.conf
你参考一下.
  1. $ file /etc/make.profile
  2. /etc/make.profile: symbolic link to `../usr/portage/profiles/default-linux/amd64/2006.1/desktop'
复制代码
  1. $ cat /etc/make.conf
  2. # These settings were set by the catalyst build script that automatically built this stage
  3. # Please consult /etc/make.conf.example for a more detailed example
  4. CFLAGS="-march=k8 -O2 -pipe -fomit-frame-pointer"
  5. CHOST="x86_64-pc-linux-gnu"
  6. CXXFLAGS="${CFLAGS}"
  7. GENTOO_MIRRORS="ftp://ftp3.tsinghua.edu.cn/mirror/gentoo http://61.135.158.199"
  8. PORTDIR_OVERLAY="/usr/local/portage"
  9. FEATURES="ccache"
  10. #SYNC="rsync://gentoo.139pay.com/gentoo-portage"
  11. SYNC="rsync://61.135.158.199/gentoo-portage"
  12. #SYNC="ftp://ftp3.tsinghua.edu.cngentoogentoo-portage"
  13. ACCEPT_KEYWORDS='~amd64'
  14. USE="a52 aac aalib acpid amr aiglx arts asf acpi chardet cdr cjk css -cups \
  15.         dbus dts divx4linux dri dvd dvdr dvdread -esd fame fbcon ffmpeg fontconfig \
  16.         flac ftp -foomaticdb -gnome -gtk -gstreamer gcc64 gif glitz graphviz glib gs hal \
  17.         imagemagick immqt-bc javascript jpeg jpeg2k kde kqemu kipi -pppd pdf -oss \
  18.         ogg oggvorbis opengl png matroska mad mikmod mp3 mp4 mpeg mjpeg musepack musicbrainz \
  19.         nptlonly nsplugin network qt3 qt4 real rdesktop samba svg socks5 sndfile \
  20.         theora threads timidity truetype tiff udev unicode vcd win32codecs wma \
  21.         x264 xcomposite xine xinerama -xmms xml xpm xvid vorbis"
  22. INPUT_DEVICES="keyboard mouse"
  23. VIDEO_CARDS="radeon fglrx vesa fbdev ati"
  24. CCACHE_DIR="/var/tmp/ccache/"
  25. CCACHE_SIZE="2G"
  26. LINGUAS="zh_CN"
复制代码
回复 支持 反对

使用道具 举报

发表于 2006-10-23 20:23:01 | 显示全部楼层
CFLAGS="-march=k8 -O2 -pipe -fomit-frame-pointer"
我用-O9不知道有没有问题?
回复 支持 反对

使用道具 举报

发表于 2006-10-23 20:31:33 | 显示全部楼层
不好意思,我没仔细看这文章,但觉得很奇怪。
你构建好基本环境后,也不chroot,也不scripts/bootstrap.sh ,也不emerge -e system
就直接安装内核了,有点神奇,
我觉得新手安装还是看官方的howto吧
回复 支持 反对

使用道具 举报

发表于 2006-10-23 21:45:34 | 显示全部楼层
我的安装过程很简单
minimal cd启动,配网络,分区,创建文件系统,下载stage3,portage,解压,然后chroot,安装内核原码,编译内核,emerge  vixie-cron syslog-ng grub,之后就启动了,当然系统启动后还有好多细节需要配置
不知道,这样安装有没有问题?
回复 支持 反对

使用道具 举报

发表于 2006-10-23 23:23:21 | 显示全部楼层
觉得无聊就用带gnome的cd安装,确定内核没错后继续chroot安装剩余部分,至少可以上网啊,直到进入桌面为止
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-10-23 23:46:01 | 显示全部楼层
Post by wellwong
不好意思,我没仔细看这文章,但觉得很奇怪。
你构建好基本环境后,也不chroot,也不scripts/bootstrap.sh ,也不emerge -e system
就直接安装内核了,有点神奇,
我觉得新手安装还是看官方的howto吧

我自己也觉得奇怪,因为我之前看过官方文档的。可是我一路用lice-cd装下来,发现简单太多。估计是live-cd的安装程序的功劳吧
回复 支持 反对

使用道具 举报

发表于 2006-10-24 09:15:13 | 显示全部楼层
我觉得gentoo和其他发行版最大的区别就是所有的东西都完全自己制定的,包括安装系统,如果用桌面版的live-cd安装,那就不是一个真正的gentoo人了......
回复 支持 反对

使用道具 举报

发表于 2006-10-24 10:39:05 | 显示全部楼层
Post by wellwong
我觉得gentoo和其他发行版最大的区别就是所有的东西都完全自己制定的,包括安装系统,如果用桌面版的live-cd安装,那就不是一个真正的gentoo人了......

人家说用live-cd安装不是你这个意思,你理解错了,呵呵
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表