gentoo linux(centos7)

如何安装gentoo linux

下载基本系统和源码包

为了加快安装速度,我是先将需要用到的几个镜象全部下载到本地。所须下载的文件包括:

1、最小安装镜象包:install-x86-minimal-20130528.iso

2、Stage Tarball快照包:stage3-i686-20130528.tar.bz2

3、系统Portage快照包:portage-latest.tar.bz2

网络环境或U盘准备

下载完成之后,我的办法是将上述2与3两个包放置到局域网的web上(web地址为:192.168.1.100),做个简单的页面,便于下载与访问。页面为:index.html,

页面上只有两行简单的代码:

< a href="stage3-i686-20130528.tar.bz2"> stage3</ a>

< br>< a href="portage-latest.tar.bz2">portage</ a>< br>

如此,准备工作完成。以下开始安装:

或使用Linux文件系统的EXT4格式的U盘存放以上两个文件

分区

用最小安装镜象包install-x86-minimal-20130528.iso启动系统,

1、划分磁盘为了简单方便,还是按wiki的方法,只分为三个区,

如下:

/dev/sda1启动分区

/dev/sda2交换分区

/dev/sda3根分区

以下是具体划分磁盘与步骤:

fdisk/dev/sda首先建立boot分区:Command(m for help):

nCommand action e extended p primary partition

(1-4)pPartition number(1-4): 1First cylinder(1-3876, default 1):(按回车)

Using

default value 1Last cylinder or+size or+sizeM or+sizeK(1-3876,

default 3876):

+100M(这里设定比wiki上稍大一些,便于今后使用多个内核)由于这个分区是将来的boot,所以需要把这个分区设置成可启动的。

键入a来给分区添加启动标志,

然后键入1。如果你再次按p键,你就会注意到,

在“Boot”那一列有个*。下面建立swap分区:同上,

键入n创建一个新分区,然后键入p来告诉fdisk你创建的是主分区。接着输入2来创建第2个主分区,在本例中是/dev/sda2。当提示输入第一个柱面的时候,直接敲回车。当提示输入最后一个柱面的时候,输入+512M来创建一个512MB大小的分区。在这之后,键入t来设置分区类型,键入2选择你刚刚创建的那个分区,然后再输入82,即把分区设置成了“Linux

Swap”。下面,建立根分区:同上,键入n创建一个新分区,然后键入p来告诉fdisk你创建的是主分区。接着输入3来创建第3个主分区,在本例中是/dev/sda3。当提示输入第一个柱面的时候,直接敲回车。当提示输入最后一个柱面的时候,仍然直接回车,把磁盘上的剩余空间创建一个分区。完成以上这些步骤之后,键入p,应该显示一个与下面类似的分区表:

Device Boot Start End Blocks Id

System/dev/sda1* 1 14 105808+ 83

Linux/dev/sda2 15 81 506520 82

Linux swap/dev/sda3 82 3876 28690200 83

Linux2、格式化分区并挂载分区格式化分区

mkfs.ext3/dev/sda1

mkfs.ext4/dev/sda3

mkswap/dev/sda2

挂载分区

swapon/dev/sda2

mount/dev/sda3/mnt/gentoo

mkdir/mnt/gentoo/boot

mount/dev/sda1/mnt/gentoo/boot

开始安装基本系统

首先安装Stage Tarball进入Gentoo的挂载点#

cd/mnt/gentoo我是预先将Stage包放到了局域网内的web上的,所以直接使用links访问页面并下载:

# links 局域网速度很快,几秒就下载完毕,那么现在解开stage包:

# tar xvjpf stage3-*.tar.bz2注意,解包的参数千万不要出错:xvjpf

现在stage已经安装好,下面我们继续安装Portage。小心:要确保执行操作的当前位置是:

#/mnt/gentoo,如果不是,那么还得执行:

# cd/mnt/gentoo同样使用links访问上述局域网内的页面并下载:

# links 以下,解开Portage快照包:

# tar xvjf/mnt/gentoo/portage-latest.tar.bz2-C/mnt/gentoo/usr

小心,上述参数中的“-C”,C为大写!

编译安装

-----------------------------------

以下,配置编译的选项注意:

编译选项放在make.conf中,现在中文wiki上对这个文件位置的说明有错误,现在的位置是在/mnt/gentoo/etc/portage/make.conf,

中文wiki上说的是在/mnt/gentoo/etc/make.conf(英文wiki上是正确的)。所有可参考的变量,都用注释形式罗列在/mnt/gentoo/usr/share/portage/config/make.conf.example里。以下,开始编辑这个配置文件:用你喜欢的编辑器(nano或者vi)打开该文件

# vi/mnt/gentoo/etc/make.conf此时我们只须添加简单点的下三个变量:

CFLAGS="-O2-march=i686-pipe"CXXFLAGS="${CFLAGS}"

MAKEOPTS="-j2"

将自己访问时速度最快的镜象站点也加入该文件:

mirrorselect-i-o>>/mnt/gentoo/etc/portage/make.conf

mirrorselect-i-r-o>>/mnt/gentoo/etc/portage/make.conf

----------------------------------拷

贝DNS设置到系统中:

cp-L/etc/resolv.conf/mnt/gentoo/etc/

将几个重要的当前目录,挂载到新系统下去:

# mount-t proc none/mnt/gentoo/proc

# mount--rbind/sys/mnt/gentoo/sys

# mount--rbind/dev/mnt/gentoo/dev

或者下面这样也行:

# mount-t proc none/mnt/gentoo/proc

# mount-o bind/sys/mnt/gentoo/sys

# mount-o bind/dev/mnt/gentoo/dev

----------------------------------以下,切换到新系统:

# chroot/mnt/gentoo/bin/bash

# source/etc/profile# export PS1="(chroot)$PS1"

------------------------------------------------------------------

更新Portage树

# mkdir/usr/portage

# emerge-webrsync或者:# emerge--sync

定义系统profile运行下面代码,查看可用的profile

# eselect profile list看到列表之后,我选择的是desktop,对应的是3,所以执行:# eselect profile set 3

--------------------------------

查看USE变量的可用列表

# less/usr/portage/profiles/use.desc将自己可能用到的USE变量,加入到编译选项文件中

# nano-w/etc/portage/make.conf

例如我的:USE="gtk alsa xorg nv"

--------------------------------

一系列基本设置:

1、时区设置:

# cp/usr/share/zoneinfo/Asia/Shanghai/etc/localtime

或者:# ln–s/usr/share/zoneinfo/Asia/Shanghai/etc/localtime

2、字符编码设置

# nano-w/etc/locale.gen

还是先保留美式英语吧en_US ISO-8859-1en_US.UTF-8 UTF-8保存之后,

执行:# locale-gen

--------------------------------

安装内核码源:

# emerge gentoo-sources安装完毕之后,不要忙着手工配置,毕竟很多选项还弄不明白其含义,所以我选择的是自动配置:

先安装自动配置工具genkernel

# emerge genkernel复制配置文件到新系统(其实也可不复制,自动工具可按默认配置文件进行配置)

# zcat/proc/config.gz>/usr/share/genkernel/arch/x86/kernel-config

下面进行自动配置

# genkernel all于是,慢慢等吧,上个厕所,喝几口茶都行……完成之后,查看一下自动生成的内核和initrd的名字

# ls/boot/kernel*/boot/initramfs*这里要记下来,等会儿安装grub的时候要用到

---------------------------------------

配置系统fstab

# nano-w/etc/fstab如果没有出错,那么几乎不用修改,看看就行。

---------------------------------------

生成主机名等

# nano-w/etc/conf.d/hostname

下面变量指定主机名HOSTNAME="主机名"配置网络

# nano-w/etc/conf.d/net

我用的是DHCPCD,所以加入:

config_eth0=("dhcp")固定IP的设定,请参考wiki另外,这里要小心,因为网卡名很可能不是eth0!

在启动时自动启用网络,执行:

# rc-update add net.eth0 default

同样,这里要注意网卡名!修改网络信息

# nano-w/etc/hosts127.0.0.1(主机名) localhost

----------------------------------

修改Root根密码:

# passwd输入两次不用说!

修改通用系统配置

# nano-w/etc/rc.conf要改什么东西就自己看着办啦,不改,保持默认也行。不过不要忘了,一旦安装了图形界面,就得安装显示管理器,显示管理器的启动都是在这里加入的。

修改键盘设置

# nano-w/etc/conf.d/keymapsKEYMAP这个变量要特别注意。如果你选择了错误的KEYMAP,在你敲击键盘的时候会有奇怪的结果。

修改时钟选项

#

nano-w

/etc/conf.d/hwclock(中文wiki这里又是错的)如果你机器上的钟不用UTC,你需要在文件钟加上CLOCK="local"。否则,你的时钟就有可能出现偏差。完成对/etc/conf.d/clock的配置后,保存并且退出。上述几项其实都可以暂时保持默认。

安装必要的系统工具

1、系统日志工具

# emerge syslog-ng# rc-update add syslog-ng default

安装引导

安装开机引导程序,还是选grub,这东西我熟悉,呵呵~~~~

# emerge grub安装完成之后,修改grub的配置文件。这里要特别小心,一旦出错就启动不了机子啦。我没有按wiki修改,而是按自己对grub的理解进行的修改:

# nano-w/boot/grub/grub.confdefault 0timeout 5

#

splashimage=(hd0,0)/boot/grub/splash.xpm.gztitle Gentooroot

(hd0,0)kernel/boot/ kernel-genkernel-x86-3.8.13-gentoo

root=/dev/sda3initrd/boot/ initramfs-genkernel-x86-3.8.13-gentoo

#在有windows,需要双启动时,可输入以下内容:title Windows XProotnoverify(hd0,5)(小心,我这里假设windows是在磁盘的第6个分区)makeactivechainloader+1

创建/etc/mtab#

grep-v rootfs/proc/mounts>/etc/mtab执行grub-install安装GRUB:#

grub-install--no-floppy/dev/sda至此,基本系统安装完成,下面准备结束安装:首先退出挂载:

# exit然后卸载先前挂载到新系统中的目录

# cd

# umount-l/mnt/gentoo/dev{/shm,/pts,}

# umount-l/mnt/gentoo{/boot,/proc,}

或者如下也行:# umount/mnt/gentoo/boot/mnt/gentoo/dev/mnt/gentoo/proc/mnt/gentoo

完成安装:

重启系统

# reboot

或者关闭系统

# poweroff

------------------------------------

我的服务器系统为什么选用 Gentoo Linux

经过多年的Linux探索,我最终选择了Gentoo Linux作为我的服务器系统,这源于其独特的优点。首先,Gentoo的稳定性和与硬件的契合度给我留下了深刻印象。它的启动方式不依赖于内核+initrd,这使得系统在远程管理时更可靠,即使频繁升级内核,也能保证稳定的重启流程。其次,Gentoo支持自定义编译,可以根据硬件特性优化,提高效能,但这也意味着移植性相对较低,需要对硬件进行匹配。

在安全性方面,Gentoo强调剔除不必要的功能,通过编译时的精细化配置,减少运行时代码量,从而降低安全风险。此外,Gentoo对原生软件的兼容性良好,无需过多改动就能运行主线软件,这保证了软件的稳定性。同时,Gentoo的portage软件包管理系统提供了极高的灵活性,允许用户根据需求进行频繁的升级和定制。

尽管文档管理可能并非所有发行版的强项,但Gentoo的文档被广泛认为是优秀的,对于问题解决提供了有力支持。而对于桌面环境,Gentoo支持原生的轻量级选项,确保服务器资源的有效利用。对于那些追求个性化和定制化的人来说,Gentoo无疑是一把利器,能满足对于系统的精细化控制。

总的来说,我的选择是基于Gentoo的稳定性、硬件优化、安全性和灵活性,以及其能满足对系统精细化管理的需求。如果您也在寻找一个能满足特定需求的服务器系统,GentooLinux值得考虑。

请问 哪些Linux是 基于gentoo的

Gentoo是一个基于Linux的自由操作系统,而不是哪个Linux基于Gentoo。所以问题本身的描述就存在误区。面就Gentoo自身来说,它的核心技术是Portage。

Portage是Gentoo的软件发行系统。Gentoo下要获取最新的软件,打一个命令:emerge--sync。这个命令告诉Portage从网上更新你本地的“Portage树”。本地Portage树包含一份完整的脚本集合,Portage以之创建和安装最新的Gentoo软件包。当前,我们的Portage树中拥有超过10000个软件包,软件包更新和新软件包每时每刻都在加入中。

如果希望体验Gentoo,可以通过其官网免费下载。

阅读剩余
THE END