LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
楼主: abcbuzhiming

新人请教,gentoo做软路由,服务器,能做到什么程度

[复制链接]
 楼主| 发表于 2007-7-30 14:16:58 | 显示全部楼层
Post by zhou3345
stage和portage包的存放问题:
1.可以在刻录之前改一下livecd*.iso镜像文件,把这两个包加进去,可以用windows下的ultraiso来做。
2.不一定要把硬盘全部格式化了,如果还想保留windows的话,可以把这两个包放在fat32的windows分区,然后用mount命令把这个fat32分区挂载起来。
3.放在局域网的一个http或ftp服务器上,livecd启动后用wget命令把包下载到本地。

gentoo几乎所以的软件都是从源代码安装的,通过的就是以portage为主的一整套软件管理程序。安装命令很简单,就是emerge。有关编译的cpu设置、软件功能参数USE、源代码服务器地址、portage更新服务器地址,都由/etc/make.conf文件管。这是我的,你可以参考一下,注意cpu架构、显卡驱动等都要根据自己的实际情况更改。
[php]
# These settings were set by the catalyst build script that automatically built this stage
# Please consult /etc/make.conf.example for a more detailed example
CFLAGS="-O2 -march=pentium-m -pipe -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"
CXXFLAGS="${CFLAGS}"
#LDFLAGS="-Wl,--hash-style=both"
#FEATURES="distcc"
FEATURES="sandbox ccache parallel-fetch"
MAKEOPTS="-j2"
LINGUAS="zh_CN zh"
USE="-arts -kde -gtk -gnome -doc -debug -xmms -mozilla -cups -xcb -ipv6 -lm_sensors \
qt4 gtk2 cairo audacious directfb xinerama firefox sdl ruby postgres gtk bootstrap \
glitz x264 esd X xcomposite xscreensaver win32codecs a52 libcaca aalib vorbis trayicon \
quicktime mmkeys musepack acpi vcd mpeg xpm mod dts alsa oss flac mad ffmpeg \
modplug wavpack ogg wma123 wma mp3 mikmod aac dvd xvid xv stroke javascript \
css unicode xft mmx mmxext sse sse2 cjk nls thinkpad xosd vim mozsvg svg mng png \
tiff mozdevelop browserplugin nsplugin dri nptl nptlonly cgi bzip2 pdf hal \
dbus truetype jpeg gif opengl realmedia fastcgi xml 7zip aiglx bash-completion \
bindist vim-syntax slang real emacs apache2 tetex latex hfs usb ieee1394 java \
snmp"

#ACCEPT_KEYWORDS="~x86"
#PORTAGE_ELOG_SYSTEM="save"
#PORTAGE_ELOG_CLASSES="warn error info log qa"

VIDEO_CARDS="radeon"
INPUT_DEVICES="keyboard mouse"

GENTOO_MIRRORS="61.135.158.199 http://gentoo.osuosl.org/"
SYNC="rsync://61.135.158.199/gentoo-portage"

#source /usr/portage/local/layman/make.conf

# fetch files with axel --------------
#FETCHCOMMAND="/usr/bin/axel -a -o \${DISTDIR}/\${FILE} \${URI}"
#RESUMECOMMAND="${FETCHCOMMAND}"
[/php]

要安装软件,如gentoo内核:
#emerge gentoo-sources   
就可以了,源代码的下载,编译,安装都是自动的。当然kernel不一样,emerge了之后要自己编译。编译方法在安装文档里写得很详细。当然对新手来说内核设置是复杂了一点,建议用gentoo开发的genkernel脚本程序来编译内核。
#emerge genkernel
#genkernel --menuconfig all
只要你设置好了menuconfig,基本上就ok了。这里面你先别管太多,把这些设置好就可以了:1.设备驱动(device driver) 2.文件系统和语言环境(file system)
这里有方法:
http://zh.gentoo-wiki.com/HOWTO_Compile_Kernel

gentoo的portage软件库里的软件非常全,常用的好用的全有,一般是不需要从别的地方另下软件的。
关于gentoo的应用,请看wiki里的这一篇文章:
http://zh.gentoo-wiki.com/Gentoo_Quick_Guide

我的问题就在这个portage上,请问,我从网上下的那个包是源代码对吧,这个源代码包里的组件除了系统必须的,应该是你想装哪个,他才装哪个,我想问一下以我的电脑配置来说,编译安装完核心及必要组件,需要时间大约多久?貌似编译很费时间,我得计划一下
回复 支持 反对

使用道具 举报

发表于 2007-7-30 14:36:26 | 显示全部楼层
这个要也和网速有关系。
你的配置a64 3000+吧,
#emerge --sync && emerge -e system
加编译内核一起,应该在十五六个小时之内。
回复 支持 反对

使用道具 举报

发表于 2007-7-30 15:21:04 | 显示全部楼层
Post by zhou3345
这个要也和网速有关系。
你的配置a64 3000+吧,
#emerge --sync && emerge -e system
加编译内核一起,应该在十五六个小时之内。


肯定用不了那么长时间,顶多七八个小时。在我的笔记本上感觉也就七八个小时,中间还包括手动分区,编译配置内核等的时间。我的台式机也是amd64 3000+,不过一直都是超到2.4GHz,没仔细算过,但是感觉4,5个小时应该可以搞定。

还有建议USE-Flag中不要使用nptl,而用nptlonly,可以让glibc少编译一遍。

附emerge -ep system | genlop -p 作为参考:
Estimated update time: 2 hours, 22 minutes.
这应该是在台式机上使用distcc(和笔记本一起编译)的结果
回复 支持 反对

使用道具 举报

发表于 2007-7-30 15:33:29 | 显示全部楼层
最新的glibc已经没有nptl和nptlonly这两个USE标记了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-7-30 16:28:48 | 显示全部楼层
Post by zhou3345
这个要也和网速有关系。
你的配置a64 3000+吧,
#emerge --sync && emerge -e system
加编译内核一起,应该在十五六个小时之内。


这么久啊?我有点不理解,首先#emerge --sync是更新protage树,可我本地已经有一个protage包了,在我并不打算把protage下的所有软件都装上去并更新的时候,为什么要编译这么长时间?protage不是有选择的安装程序吗?#emerge --sync 这一步难道非做不可,还有emerge -e system是什么意思?没在安装文档中找到,内核编译应该花不了多少时间啊,一个系统的内核才多大点啊……

Post by a0147353
肯定用不了那么长时间,顶多七八个小时。在我的笔记本上感觉也就七八个小时,中间还包括手动分区,编译配置内核等的时间。我的台式机也是amd64 3000+,不过一直都是超到2.4GHz,没仔细算过,但是感觉4,5个小时应该可以搞定。

还有建议USE-Flag中不要使用nptl,而用nptlonly,可以让glibc少编译一遍。

附emerge -ep system | genlop -p 作为参考:
Estimated update time: 2 hours, 22 minutes.
这应该是在台式机上使用distcc(和笔记本一起编译)的结果

我觉得这时间还是偏长了,我其实根本就不需要protage下的那些软件包(除了要开路由的和系统必要的除外),我又不是把他们都装上,到底编译了什么编译这么久?编译一个内核文件要十几个小时?
回复 支持 反对

使用道具 举报

发表于 2007-7-30 16:37:24 | 显示全部楼层
-e system是把system里的包全部编译一遍,system是个gentoo术语,包含了一个Linux系统里最基础的包,大概几十个吧
如果你为你自己的机器专门配置过内核,编译一遍时间不长,我的p-M 1.6G,只要10分钟左右
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-7-30 16:51:29 | 显示全部楼层
Post by zhllg
-e system是把system里的包全部编译一遍,system是个gentoo术语,包含了一个Linux系统里最基础的包,大概几十个吧
如果你为你自己的机器专门配置过内核,编译一遍时间不长,我的p-M 1.6G,只要10分钟左右


恕我菜鸟,更糊涂了,我现在已经下好了installCD,stage3的包和protage包,以安装文档上的理解,唯一需要编译的就是内核和一些必要的组件,然后就是装好系统操作protage装一些我需要程序时需要编译,怎么也不理解这装一遍怎么会要这么长时间编译(我以前听说gentoo安装时间长,那时我的理解是那些人把protage里全装了,所以编译时间长),难道说,作为核心的stage3包和protage包里装的东西全是源代码?所以要我整个编译一遍?……OTL

什么叫专门为自己的机器配置内核?内核在安装的时候不就有配置然后编译的过程吗?

PS:突然又想起个问题,protage貌似只管他的树目录中存在的软件安装,万一我需要的东西protage没有我要怎么办
回复 支持 反对

使用道具 举报

发表于 2007-7-30 17:23:19 | 显示全部楼层
1. stage3 包里基本是 gentoo 工具的最小集合,其中最重要的工具应该是 emerge 与编译器,它们都是已经编译好了的。

2. portage 里面是一堆文件,也就是 ebuild 文件,它们告诉 emerge 去哪里下载源代码包,然后又告诉编译器如何编译这些源码包。

3. 如果你需要的东西 portage 里没有,可以自己去下源码包,自行编译就是。如果功力深厚点,就自己写 ebuild 文件实现自动编译。
回复 支持 反对

使用道具 举报

发表于 2007-7-30 17:27:32 | 显示全部楼层
首先,是portage,不是protage

不知道emerge -e system是谁先提出的,我觉得似乎没有必要吧
emerge --sync && emerge -tavuDN world就行了
这样如果不再装其他东西,1、2个小时可以搞定

-e 就是假设你现在没装那些软件,现在全部重新再编译一遍。所以时间长。

内核是自己配置的。emerge gentoo-sources只是安装源代码文件。

除了portage树之外,gentoo还有overlay呢。gentoo不能emerge的软件,如果你能找到一两个,那么你可以去买彩票了
回复 支持 反对

使用道具 举报

发表于 2007-7-30 17:30:16 | 显示全部楼层
我觉得,问再多问题,都不如自己实际做一遍管用
回复 支持 反对

使用道具 举报

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

本版积分规则

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